• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /**
2  * @file daemon/opd_events.h
3  * Event details for each counter
4  *
5  * @remark Copyright 2002, 2003 OProfile authors
6  * @remark Read the file COPYING
7  *
8  * @author John Levon
9  * @author Philippe Elie
10  */
11 
12 #ifndef OPD_EVENTS_H
13 
14 #include "op_types.h"
15 
16 #include <stdint.h>
17 #include <time.h>
18 
19 /** event description for setup (perfmon) and mangling */
20 struct opd_event {
21 	char * name;
22 	unsigned long value;
23 	unsigned long counter;
24 	unsigned long count;
25 	unsigned long um;
26 	unsigned long kernel;
27 	unsigned long user;
28 };
29 
30 /* needed for opd_perfmon.c */
31 extern struct opd_event opd_events[];
32 
33 /** parse the events into the opd_events array */
34 void opd_parse_events(char const * events);
35 
36 /** Find the event for the given counter */
37 struct opd_event * find_counter_event(unsigned long counter);
38 
39 struct opd_header;
40 
41 /** fill the sample file header with event info etc. */
42 void fill_header(struct opd_header * header, unsigned long counter,
43                  vma_t anon_start, vma_t anon_end,
44                  int is_kernel, int cg_to_is_kernel,
45                  int spu_samples, uint64_t embed_offset, time_t mtime);
46 
47 #endif /* OPD_EVENTS_H */
48