cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

gtk.h (1643B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _PERF_GTK_H_
      3#define _PERF_GTK_H_ 1
      4
      5#include <stdbool.h>
      6
      7#pragma GCC diagnostic ignored "-Wstrict-prototypes"
      8#include <gtk/gtk.h>
      9#pragma GCC diagnostic error "-Wstrict-prototypes"
     10
     11
     12struct perf_gtk_context {
     13	GtkWidget *main_window;
     14	GtkWidget *notebook;
     15
     16#ifdef HAVE_GTK_INFO_BAR_SUPPORT
     17	GtkWidget *info_bar;
     18	GtkWidget *message_label;
     19#endif
     20	GtkWidget *statbar;
     21	guint statbar_ctx_id;
     22};
     23
     24int perf_gtk__init(void);
     25void perf_gtk__exit(bool wait_for_ok);
     26
     27extern struct perf_gtk_context *pgctx;
     28
     29static inline bool perf_gtk__is_active_context(struct perf_gtk_context *ctx)
     30{
     31	return ctx && ctx->main_window;
     32}
     33
     34struct perf_gtk_context *perf_gtk__activate_context(GtkWidget *window);
     35int perf_gtk__deactivate_context(struct perf_gtk_context **ctx);
     36
     37void perf_gtk__init_helpline(void);
     38void gtk_ui_progress__init(void);
     39void perf_gtk__init_hpp(void);
     40
     41void perf_gtk__signal(int sig);
     42void perf_gtk__resize_window(GtkWidget *window);
     43const char *perf_gtk__get_percent_color(double percent);
     44GtkWidget *perf_gtk__setup_statusbar(void);
     45
     46#ifdef HAVE_GTK_INFO_BAR_SUPPORT
     47GtkWidget *perf_gtk__setup_info_bar(void);
     48#else
     49static inline GtkWidget *perf_gtk__setup_info_bar(void)
     50{
     51	return NULL;
     52}
     53#endif
     54
     55struct evsel;
     56struct evlist;
     57struct hist_entry;
     58struct hist_browser_timer;
     59
     60int evlist__gtk_browse_hists(struct evlist *evlist, const char *help,
     61			     struct hist_browser_timer *hbt, float min_pcnt);
     62int hist_entry__gtk_annotate(struct hist_entry *he,
     63			     struct evsel *evsel,
     64			     struct hist_browser_timer *hbt);
     65void perf_gtk__show_annotations(void);
     66
     67#endif /* _PERF_GTK_H_ */