blob: 9428bee076f24cecc65581c85544f5e4ba68bd26 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Jiri Olsaf7589902016-06-20 23:58:13 +02002#ifndef _PERF_UI_BROWSER_HISTS_H_
3#define _PERF_UI_BROWSER_HISTS_H_ 1
4
5#include "ui/browser.h"
6
7struct hist_browser {
8 struct ui_browser b;
9 struct hists *hists;
10 struct hist_entry *he_selection;
11 struct map_symbol *selection;
12 struct hist_browser_timer *hbt;
13 struct pstack *pstack;
14 struct perf_env *env;
15 int print_seq;
16 bool show_dso;
17 bool show_headers;
18 float min_pcnt;
19 u64 nr_non_filtered_entries;
20 u64 nr_hierarchy_entries;
21 u64 nr_callchain_rows;
Jiri Olsa5a1a99c2016-01-06 16:59:02 +010022 bool c2c_filter;
Jiri Olsa5b91a862016-06-20 23:58:15 +020023
24 /* Get title string. */
25 int (*title)(struct hist_browser *browser,
26 char *bf, size_t size);
Jiri Olsaf7589902016-06-20 23:58:13 +020027};
28
Jiri Olsaa6ec8942016-06-20 23:58:17 +020029struct hist_browser *hist_browser__new(struct hists *hists);
Jiri Olsadabd2012016-06-20 23:58:14 +020030void hist_browser__delete(struct hist_browser *browser);
Kan Liang06cc1a42018-01-18 13:26:29 -080031int hist_browser__run(struct hist_browser *browser, const char *help,
32 bool warn_lost_event);
Jiri Olsafcd86422016-06-20 23:58:18 +020033void hist_browser__init(struct hist_browser *browser,
34 struct hists *hists);
Jiri Olsaf7589902016-06-20 23:58:13 +020035#endif /* _PERF_UI_BROWSER_HISTS_H_ */