PAPI  5.0.1.0
linux-IOunit.h
Go to the documentation of this file.
00001 /****************************/
00002 /* THIS IS OPEN SOURCE CODE */
00003 /****************************/
00004 
00020 #ifndef _PAPI_IOUNIT_H
00021 #define _PAPI_IOUNIT_H
00022 
00023 #include "papi.h"
00024 #include "papi_internal.h"
00025 #include "papi_vector.h"
00026 #include "papi_memory.h"
00027 #include "extras.h"
00028 #include "../../../linux-bgq-common.h"
00029 
00030 
00031 /*************************  DEFINES SECTION  ***********************************
00032  *******************************************************************************/
00033 
00034 /* this number assumes that there will never be more events than indicated */
00035 #define IOUNIT_MAX_COUNTERS PEVT_IOUNIT_LAST_EVENT
00036 #define OFFSET ( PEVT_L2UNIT_LAST_EVENT + 1 )
00037 
00038 
00040 typedef struct IOUNIT_register
00041 {
00042     unsigned int selector;
00043     /* Signifies which counter slot is being used */
00044     /* Indexed from 1 as 0 has a special meaning  */
00045 } IOUNIT_register_t;
00046 
00047 
00048 typedef struct IOUNIT_reg_alloc
00049 {
00050     IOUNIT_register_t ra_bits;
00051 } IOUNIT_reg_alloc_t;
00052 
00053 
00054 typedef struct IOUNIT_control_state
00055 {
00056     int EventGroup;
00057     long long counts[IOUNIT_MAX_COUNTERS];
00058 } IOUNIT_control_state_t;
00059 
00060 
00061 typedef struct IOUNIT_context
00062 {
00063     IOUNIT_control_state_t state;
00064 } IOUNIT_context_t;
00065 
00066 
00067 #endif /* _PAPI_IOUNIT_H */
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines