1 #ifndef __PERF_SESSION_H
2 #define __PERF_SESSION_H
8 struct perf_header header;
14 typedef int (*event_op)(event_t *self, struct perf_session *session);
16 struct perf_event_ops {
17 event_op process_sample_event;
18 event_op process_mmap_event;
19 event_op process_comm_event;
20 event_op process_fork_event;
21 event_op process_exit_event;
22 event_op process_lost_event;
23 event_op process_read_event;
24 event_op process_throttle_event;
25 event_op process_unthrottle_event;
26 int (*sample_type_check)(u64 sample_type);
27 unsigned long total_unknown;
30 struct perf_session *perf_session__new(const char *filename, int mode,
32 void perf_session__delete(struct perf_session *self);
34 int perf_session__process_events(struct perf_session *self,
35 struct perf_event_ops *event_ops,
36 int full_paths, int *cwdlen, char **cwd);
38 int perf_header__read_build_ids(int input, u64 offset, u64 file_size);
40 #endif /* __PERF_SESSION_H */