62
53
DECLARE_BITMAP(adds_features, HEADER_FEAT_BITS);
65
int perf_header__init(struct perf_header *self);
66
void perf_header__exit(struct perf_header *self);
68
int perf_header__read(struct perf_session *session, int fd);
69
int perf_header__write(struct perf_header *self, int fd, bool at_exit);
58
int perf_session__read_header(struct perf_session *session, int fd);
59
int perf_session__write_header(struct perf_session *session,
60
struct perf_evlist *evlist,
61
int fd, bool at_exit);
70
62
int perf_header__write_pipe(int fd);
72
int perf_header__add_attr(struct perf_header *self,
73
struct perf_header_attr *attr);
75
64
int perf_header__push_event(u64 id, const char *name);
76
65
char *perf_header__find_event(u64 id);
78
struct perf_header_attr *perf_header_attr__new(struct perf_event_attr *attr);
79
void perf_header_attr__delete(struct perf_header_attr *self);
81
int perf_header_attr__add_id(struct perf_header_attr *self, u64 id);
83
u64 perf_header__sample_type(struct perf_header *header);
84
bool perf_header__sample_id_all(const struct perf_header *header);
85
struct perf_event_attr *
86
perf_header__find_attr(u64 id, struct perf_header *header);
87
void perf_header__set_feat(struct perf_header *self, int feat);
88
void perf_header__clear_feat(struct perf_header *self, int feat);
89
bool perf_header__has_feat(const struct perf_header *self, int feat);
91
int perf_header__process_sections(struct perf_header *self, int fd,
92
int (*process)(struct perf_file_section *self,
67
void perf_header__set_feat(struct perf_header *header, int feat);
68
void perf_header__clear_feat(struct perf_header *header, int feat);
69
bool perf_header__has_feat(const struct perf_header *header, int feat);
71
int perf_header__process_sections(struct perf_header *header, int fd,
72
int (*process)(struct perf_file_section *section,
93
73
struct perf_header *ph,
94
74
int feat, int fd));
97
77
const char *name, bool is_kallsyms);
98
78
int build_id_cache__remove_s(const char *sbuild_id, const char *debugdir);
100
int event__synthesize_attr(struct perf_event_attr *attr, u16 ids, u64 *id,
101
event__handler_t process,
102
struct perf_session *session);
103
int event__synthesize_attrs(struct perf_header *self,
104
event__handler_t process,
105
struct perf_session *session);
106
int event__process_attr(event_t *self, struct perf_session *session);
108
int event__synthesize_event_type(u64 event_id, char *name,
109
event__handler_t process,
80
int perf_event__synthesize_attr(struct perf_event_attr *attr, u16 ids, u64 *id,
81
perf_event__handler_t process,
82
struct perf_session *session);
83
int perf_session__synthesize_attrs(struct perf_session *session,
84
perf_event__handler_t process);
85
int perf_event__process_attr(union perf_event *event, struct perf_session *session);
87
int perf_event__synthesize_event_type(u64 event_id, char *name,
88
perf_event__handler_t process,
89
struct perf_session *session);
90
int perf_event__synthesize_event_types(perf_event__handler_t process,
91
struct perf_session *session);
92
int perf_event__process_event_type(union perf_event *event,
93
struct perf_session *session);
95
int perf_event__synthesize_tracing_data(int fd, struct perf_evlist *evlist,
96
perf_event__handler_t process,
97
struct perf_session *session);
98
int perf_event__process_tracing_data(union perf_event *event,
99
struct perf_session *session);
101
int perf_event__synthesize_build_id(struct dso *pos, u16 misc,
102
perf_event__handler_t process,
103
struct machine *machine,
104
struct perf_session *session);
105
int perf_event__process_build_id(union perf_event *event,
110
106
struct perf_session *session);
111
int event__synthesize_event_types(event__handler_t process,
112
struct perf_session *session);
113
int event__process_event_type(event_t *self,
114
struct perf_session *session);
116
int event__synthesize_tracing_data(int fd, struct list_head *pattrs,
117
event__handler_t process,
118
struct perf_session *session);
119
int event__process_tracing_data(event_t *self,
120
struct perf_session *session);
122
int event__synthesize_build_id(struct dso *pos, u16 misc,
123
event__handler_t process,
124
struct machine *machine,
125
struct perf_session *session);
126
int event__process_build_id(event_t *self, struct perf_session *session);
128
107
#endif /* __PERF_HEADER_H */