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