0001
0002 #ifndef _PERF_UI_BROWSER_HISTS_H_
0003 #define _PERF_UI_BROWSER_HISTS_H_ 1
0004
0005 #include "ui/browser.h"
0006
0007 struct annotation_options;
0008 struct evsel;
0009
0010 struct hist_browser {
0011 struct ui_browser b;
0012 struct hists *hists;
0013 struct hist_entry *he_selection;
0014 struct map_symbol *selection;
0015 struct hist_browser_timer *hbt;
0016 struct pstack *pstack;
0017 struct perf_env *env;
0018 struct annotation_options *annotation_opts;
0019 struct evsel *block_evsel;
0020 int print_seq;
0021 bool show_dso;
0022 bool show_headers;
0023 float min_pcnt;
0024 u64 nr_non_filtered_entries;
0025 u64 nr_hierarchy_entries;
0026 u64 nr_callchain_rows;
0027 bool c2c_filter;
0028
0029
0030 int (*title)(struct hist_browser *browser,
0031 char *bf, size_t size);
0032 };
0033
0034 struct hist_browser *hist_browser__new(struct hists *hists);
0035 void hist_browser__delete(struct hist_browser *browser);
0036 int hist_browser__run(struct hist_browser *browser, const char *help,
0037 bool warn_lost_event, int key);
0038 void hist_browser__init(struct hist_browser *browser,
0039 struct hists *hists);
0040 #endif