The Android Open Source Project | 10e23ee | 2009-03-03 19:30:30 -0800 | [diff] [blame] | 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, |
Ben Cheng | 5a4eb4e | 2009-09-14 16:00:41 -0700 | [diff] [blame^] | 43 | vma_t anon_start, vma_t anon_end, |
| 44 | int is_kernel, int cg_to_is_kernel, |
The Android Open Source Project | 10e23ee | 2009-03-03 19:30:30 -0800 | [diff] [blame] | 45 | int spu_samples, uint64_t embed_offset, time_t mtime); |
| 46 | |
| 47 | #endif /* OPD_EVENTS_H */ |