diff options
author | Jiri Olsa <jolsa@kernel.org> | 2016-06-20 23:58:18 +0200 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2016-06-22 14:56:35 +0200 |
commit | fcd864265028b65bf154f35fe5a17591ffd49cb9 (patch) | |
tree | 6b534e640bdb5f364d4df957c1e0c1b1c96f4be7 /tools/perf/ui | |
parent | perf hists browser: Introduce perf_evsel_browser constructor (diff) | |
download | linux-fcd864265028b65bf154f35fe5a17591ffd49cb9.tar.xz linux-fcd864265028b65bf154f35fe5a17591ffd49cb9.zip |
perf hists browser: Introduce init()
Factoring out the hist_browser initialization code, so it could be used
from other parts in following patches.
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1466459899-1166-8-git-send-email-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/ui')
-rw-r--r-- | tools/perf/ui/browsers/hists.c | 35 | ||||
-rw-r--r-- | tools/perf/ui/browsers/hists.h | 2 |
2 files changed, 22 insertions, 15 deletions
diff --git a/tools/perf/ui/browsers/hists.c b/tools/perf/ui/browsers/hists.c index a81b298b79f9..9d744358ca78 100644 --- a/tools/perf/ui/browsers/hists.c +++ b/tools/perf/ui/browsers/hists.c @@ -2042,25 +2042,30 @@ static int hist_browser__dump(struct hist_browser *browser) return 0; } +void hist_browser__init(struct hist_browser *browser, + struct hists *hists) +{ + struct perf_hpp_fmt *fmt; + + browser->hists = hists; + browser->b.refresh = hist_browser__refresh; + browser->b.refresh_dimensions = hist_browser__refresh_dimensions; + browser->b.seek = ui_browser__hists_seek; + browser->b.use_navkeypressed = true; + browser->show_headers = symbol_conf.show_hist_headers; + + hists__for_each_format(hists, fmt) { + perf_hpp__reset_width(fmt, hists); + ++browser->b.columns; + } +} + struct hist_browser *hist_browser__new(struct hists *hists) { struct hist_browser *browser = zalloc(sizeof(*browser)); - if (browser) { - struct perf_hpp_fmt *fmt; - - browser->hists = hists; - browser->b.refresh = hist_browser__refresh; - browser->b.refresh_dimensions = hist_browser__refresh_dimensions; - browser->b.seek = ui_browser__hists_seek; - browser->b.use_navkeypressed = true; - browser->show_headers = symbol_conf.show_hist_headers; - - hists__for_each_format(hists, fmt) { - perf_hpp__reset_width(fmt, hists); - ++browser->b.columns; - } - } + if (browser) + hist_browser__init(browser, hists); return browser; } diff --git a/tools/perf/ui/browsers/hists.h b/tools/perf/ui/browsers/hists.h index ec55a511d910..39bd0f28f211 100644 --- a/tools/perf/ui/browsers/hists.h +++ b/tools/perf/ui/browsers/hists.h @@ -27,4 +27,6 @@ struct hist_browser { struct hist_browser *hist_browser__new(struct hists *hists); void hist_browser__delete(struct hist_browser *browser); int hist_browser__run(struct hist_browser *browser, const char *help); +void hist_browser__init(struct hist_browser *browser, + struct hists *hists); #endif /* _PERF_UI_BROWSER_HISTS_H_ */ |