1 #ifndef PERF_PRINT_BINARY_H
2 #define PERF_PRINT_BINARY_H
7 enum binary_printer_ops {
8 BINARY_PRINT_DATA_BEGIN,
9 BINARY_PRINT_LINE_BEGIN,
11 BINARY_PRINT_NUM_DATA,
14 BINARY_PRINT_CHAR_DATA,
15 BINARY_PRINT_CHAR_PAD,
16 BINARY_PRINT_LINE_END,
17 BINARY_PRINT_DATA_END,
20 typedef int (*binary__fprintf_t)(enum binary_printer_ops op,
21 unsigned int val, void *extra, FILE *fp);
23 int binary__fprintf(unsigned char *data, size_t len,
24 size_t bytes_per_line, binary__fprintf_t printer,
25 void *extra, FILE *fp);
27 static inline void print_binary(unsigned char *data, size_t len,
28 size_t bytes_per_line, binary__fprintf_t printer,
31 binary__fprintf(data, len, bytes_per_line, printer, extra, stdout);
34 int is_printable_array(char *p, unsigned int len);
36 #endif /* PERF_PRINT_BINARY_H */