Home | History | Annotate | Download | only in daemon
      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