]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - tools/perf/util/tool.h
Merge tag 'omap-for-v4.8/fixes-rc2' of git://git.kernel.org/pub/scm/linux/kernel...
[mirror_ubuntu-artful-kernel.git] / tools / perf / util / tool.h
CommitLineData
45694aa7
ACM
1#ifndef __PERF_TOOL_H
2#define __PERF_TOOL_H
3
ee29be62
ACM
4#include <stdbool.h>
5
a16ac023
AH
6#include <linux/types.h>
7
45694aa7 8struct perf_session;
ee29be62
ACM
9union perf_event;
10struct perf_evlist;
45694aa7 11struct perf_evsel;
ee29be62 12struct perf_sample;
45694aa7
ACM
13struct perf_tool;
14struct machine;
d704ebda 15struct ordered_events;
45694aa7
ACM
16
17typedef int (*event_sample)(struct perf_tool *tool, union perf_event *event,
18 struct perf_sample *sample,
19 struct perf_evsel *evsel, struct machine *machine);
20
21typedef int (*event_op)(struct perf_tool *tool, union perf_event *event,
22 struct perf_sample *sample, struct machine *machine);
23
47c3d109
AH
24typedef int (*event_attr_op)(struct perf_tool *tool,
25 union perf_event *event,
45694aa7 26 struct perf_evlist **pevlist);
45694aa7 27
45694aa7
ACM
28typedef int (*event_op2)(struct perf_tool *tool, union perf_event *event,
29 struct perf_session *session);
30
d704ebda
ACM
31typedef int (*event_oe)(struct perf_tool *tool, union perf_event *event,
32 struct ordered_events *oe);
33
a16ac023
AH
34typedef s64 (*event_op3)(struct perf_tool *tool, union perf_event *event,
35 struct perf_session *session);
36
45694aa7
ACM
37struct perf_tool {
38 event_sample sample,
39 read;
40 event_op mmap,
5c5e854b 41 mmap2,
45694aa7
ACM
42 comm,
43 fork,
44 exit,
45 lost,
c4937a91 46 lost_samples,
4a96f7a0 47 aux,
0ad21f68 48 itrace_start,
0286039f 49 context_switch,
45694aa7
ACM
50 throttle,
51 unthrottle;
52 event_attr_op attr;
ffe77725 53 event_attr_op event_update;
47c3d109 54 event_op2 tracing_data;
d704ebda
ACM
55 event_oe finished_round;
56 event_op2 build_id,
a16ac023 57 id_index,
e9bf54d2 58 auxtrace_info,
5f3339d2 59 auxtrace_error,
46bc29b9 60 time_conv,
6640b6c2 61 thread_map,
374fb9e3 62 cpu_map,
d80518c9 63 stat_config,
2d8f0f18
JO
64 stat,
65 stat_round;
a16ac023 66 event_op3 auxtrace;
0a8cb85c 67 bool ordered_events;
45694aa7
ACM
68 bool ordering_requires_timestamps;
69};
70
71#endif /* __PERF_TOOL_H */