hist.h 1.3 KB
Newer Older
1 2 3
#ifndef __PERF_HIST_H
#define __PERF_HIST_H

4
#include <linux/types.h>
5 6 7 8
#include "callchain.h"

extern struct callchain_param callchain_param;

9 10 11 12
struct perf_session;
struct hist_entry;
struct addr_location;
struct symbol;
13
struct rb_root;
14

15
struct hist_entry *__perf_session__add_hist_entry(struct rb_root *hists,
16 17
						  struct addr_location *al,
						  struct symbol *parent,
18
						  u64 count);
19 20
extern int64_t hist_entry__cmp(struct hist_entry *, struct hist_entry *);
extern int64_t hist_entry__collapse(struct hist_entry *, struct hist_entry *);
21
int hist_entry__fprintf(struct hist_entry *self,
22 23 24 25
			   struct perf_session *pair_session,
			   bool show_displacement,
			   long displacement, FILE *fp,
			   u64 session_total);
26 27 28 29 30
int hist_entry__snprintf(struct hist_entry *self,
			 char *bf, size_t size,
			 struct perf_session *pair_session,
			 bool show_displacement, long displacement,
			 bool color, u64 session_total);
31 32
void hist_entry__free(struct hist_entry *);

33
u64 perf_session__output_resort(struct rb_root *hists, u64 total_samples);
34 35
void perf_session__collapse_resort(struct rb_root *hists);
size_t perf_session__fprintf_hists(struct rb_root *hists,
36
				   struct perf_session *pair,
37 38
				   bool show_displacement, FILE *fp,
				   u64 session_total);
39
#endif	/* __PERF_HIST_H */