49eb8481f19fd5988cc88c7864b01c41c5716d77
[firefly-linux-kernel-4.4.55.git] / tools / perf / util / top.h
1 #ifndef __PERF_TOP_H
2 #define __PERF_TOP_H 1
3
4 #include "tool.h"
5 #include "types.h"
6 #include <stddef.h>
7 #include <stdbool.h>
8
9 struct perf_evlist;
10 struct perf_evsel;
11 struct perf_session;
12
13 struct perf_top {
14         struct perf_tool   tool;
15         struct perf_evlist *evlist;
16         /*
17          * Symbols will be added here in perf_event__process_sample and will
18          * get out after decayed.
19          */
20         u64                samples;
21         u64                kernel_samples, us_samples;
22         u64                exact_samples;
23         u64                guest_us_samples, guest_kernel_samples;
24         int                print_entries, count_filter, delay_secs;
25         int                freq;
26         const char         *target_pid, *target_tid;
27         uid_t              uid;
28         bool               hide_kernel_symbols, hide_user_symbols, zero;
29         bool               system_wide;
30         bool               use_tui, use_stdio;
31         bool               sort_has_symbols;
32         bool               dont_use_callchains;
33         bool               kptr_restrict_warned;
34         bool               vmlinux_warned;
35         bool               inherit;
36         bool               group;
37         bool               sample_id_all_avail;
38         bool               dump_symtab;
39         const char         *cpu_list;
40         struct hist_entry  *sym_filter_entry;
41         struct perf_evsel  *sym_evsel;
42         struct perf_session *session;
43         struct winsize     winsize;
44         unsigned int       mmap_pages;
45         int                default_interval;
46         int                realtime_prio;
47         int                sym_pcnt_filter;
48         const char         *sym_filter;
49         const char         *uid_str;
50 };
51
52 size_t perf_top__header_snprintf(struct perf_top *top, char *bf, size_t size);
53 void perf_top__reset_sample_counters(struct perf_top *top);
54 #endif /* __PERF_TOP_H */