Frederic Weisbecker | 016e92f | 2009-10-07 12:47:31 +0200 | [diff] [blame^] | 1 | #ifndef __PERF_DATAMAP_H |
| 2 | #define __PERF_DATAMAP_H |
| 3 | |
| 4 | #include "event.h" |
| 5 | #include "header.h" |
| 6 | |
| 7 | typedef int (*event_type_handler_t)(event_t *, unsigned long, unsigned long); |
| 8 | |
| 9 | struct perf_file_handler { |
| 10 | event_type_handler_t process_sample_event; |
| 11 | event_type_handler_t process_mmap_event; |
| 12 | event_type_handler_t process_comm_event; |
| 13 | event_type_handler_t process_fork_event; |
| 14 | event_type_handler_t process_exit_event; |
| 15 | event_type_handler_t process_lost_event; |
| 16 | event_type_handler_t process_read_event; |
| 17 | event_type_handler_t process_throttle_event; |
| 18 | event_type_handler_t process_unthrottle_event; |
| 19 | int (*sample_type_check)(u64 sample_type); |
| 20 | unsigned long total_unknown; |
| 21 | }; |
| 22 | |
| 23 | void register_perf_file_handler(struct perf_file_handler *handler); |
| 24 | int mmap_dispatch_perf_file(struct perf_header **pheader, |
| 25 | const char *input_name, |
| 26 | int force, |
| 27 | int full_paths, |
| 28 | int *cwdlen, |
| 29 | char **cwd); |
| 30 | |
| 31 | #endif |