110e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project/**
210e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project * @file op_sample_file.h
310e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project * Sample file format
410e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project *
510e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project * @remark Copyright 2002 OProfile authors
610e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project * @remark Read the file COPYING
710e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project *
810e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project * @author John Levon
910e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project * @author Philippe Elie
1010e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project */
1110e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project
1210e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project#ifndef OP_SAMPLE_FILE_H
1310e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project#define OP_SAMPLE_FILE_H
1410e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project
1510e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project#include "op_types.h"
1610e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project
1710e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project#include <stdint.h>
1810e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project#include <time.h>
1910e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project
2010e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project/* header of the sample files */
2110e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Projectstruct opd_header {
2210e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u8 magic[4];
2310e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u32 version;
2410e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u32 cpu_type;
2510e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u32 ctr_event;
2610e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u32 ctr_um;
2710e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u32 ctr_count;
2810e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	// for cg file the from_cg_is_kernel
2910e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u32 is_kernel;
3010e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	double cpu_speed;
3110e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	time_t mtime;
3210e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u32 cg_to_is_kernel;
3310e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	/* spu_profile=1 says sample file contains Cell BE SPU profile data */
3410e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u32 spu_profile;
3510e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	uint64_t embedded_offset;
3610e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u64 anon_start;
3710e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u64 cg_to_anon_start;
3810e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	/* binary compatibility reserve */
3910e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project	u32 reserved1[1];
4010e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project};
4110e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project
4210e23eebca4175a8dfe3a788b2bebacb1fcfce54The Android Open Source Project#endif /* OP_SAMPLE_FILE_H */
43