1e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng/* For debugging general purposes */ 2e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng#ifndef __PERF_DEBUG_H 3e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng#define __PERF_DEBUG_H 4e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng 5e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng#include <stdbool.h> 6e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng#include "event.h" 7e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng#include "../ui/helpline.h" 8e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng#include "../ui/progress.h" 9e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng#include "../ui/util.h" 10e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng 11e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Chengextern int verbose; 12e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Chengextern bool quiet, dump_trace; 13e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng 14e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Chengint dump_printf(const char *fmt, ...) __attribute__((format(printf, 1, 2))); 15e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Chengvoid trace_event(union perf_event *event); 16e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng 17e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Chengint ui__error(const char *format, ...) __attribute__((format(printf, 1, 2))); 18e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Chengint ui__warning(const char *format, ...) __attribute__((format(printf, 1, 2))); 19e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng 20e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng#endif /* __PERF_DEBUG_H */ 21