/** * @file daemon/opd_events.h * Event details for each counter * * @remark Copyright 2002, 2003 OProfile authors * @remark Read the file COPYING * * @author John Levon * @author Philippe Elie */ #ifndef OPD_EVENTS_H #include "op_types.h" #include <stdint.h> #include <time.h> /** event description for setup (perfmon) and mangling */ struct opd_event { char * name; unsigned long value; unsigned long counter; unsigned long count; unsigned long um; unsigned long kernel; unsigned long user; }; /* needed for opd_perfmon.c */ extern struct opd_event opd_events[]; /** parse the events into the opd_events array */ void opd_parse_events(char const * events); /** Find the event for the given counter */ struct opd_event * find_counter_event(unsigned long counter); struct opd_header; /** fill the sample file header with event info etc. */ void fill_header(struct opd_header * header, unsigned long counter, vma_t anon_start, vma_t anon_end, int is_kernel, int cg_to_is_kernel, int spu_samples, uint64_t embed_offset, time_t mtime); #endif /* OPD_EVENTS_H */