diff options
Diffstat (limited to 'pablo/ProcIDs.h')
-rw-r--r-- | pablo/ProcIDs.h | 118 |
1 files changed, 74 insertions, 44 deletions
diff --git a/pablo/ProcIDs.h b/pablo/ProcIDs.h index 87e63c0..80d4bef 100644 --- a/pablo/ProcIDs.h +++ b/pablo/ProcIDs.h @@ -81,55 +81,85 @@ #ifndef PROCIDS_H /* avoid re-inclusion */ #define PROCIDS_H -#include "ProcMasks.h" -extern unsigned procTrace; +extern int *procTrace; /* - * Define the event IDs that will be used for the various I/O events + * Define the event IDs that will be used for the various HDF events */ +#include "ProcTrace.h" -/*======================================================================*/ -/* Assign HDF identifier routine tags */ -/*======================================================================*/ -enum HDF_IDS { - ID_HDFprocName=9996, - ID_malloc=9997, - ID_free=9998, - ID_timeStamp=9999, - DUMMY_HDF = 10000, -/*======================================================================*/ -/* the following part of the enumeration is only needed when the */ -/* instrumented HDF library is built. It is created in the pablo */ -/* subdirectory of HDF. */ -/*======================================================================*/ -#include "HDFidList.h" -ID_HDF_Last_Entry -} ; +#define H5_mask ID_H5_c +#define H5A_mask ID_H5A_c +#define H5AC_mask ID_H5AC_c +#define H5B_mask ID_H5B_c +#define H5D_mask ID_H5D_c +#define H5E_mask ID_H5E_c +#define H5F_mask ID_H5F_c +#define H5F_arr_mask ID_H5Farray_c +#define H5F_core_mask ID_H5Fcore_c +#define H5F_family_mask ID_H5Ffamily_c +#define H5F_istore_mask ID_H5Fistore_c +#define H5F_low_mask ID_H5Flow_c +#define H5F_mpio_mask ID_H5Fmpio_c +#define H5F_sec2_mask ID_H5Fsec2_c +#define H5F_split_mask ID_H5Fsplit_c +#define H5F_stdio_mask ID_H5Fstdio_c +#define H5G_mask ID_H5G_c +#define H5G_ent_mask ID_H5Gent_c +#define H5G_node_mask ID_H5Gnode_c +#define H5G_stab_mask ID_H5Gstab_c +#define H5HG_mask ID_H5HG_c +#define H5HL_mask ID_H5HL_c +#define H5I_mask ID_H5I_c +#define H5MF_mask ID_H5MF_c +#define H5MM_mask ID_H5MM_c +#define H5O_mask ID_H5O_c +#define H5O_attr_mask ID_H5Oattr_c +#define H5O_pline_mask ID_H5Ocomp_c +#define H5O_cont_mask ID_H5Ocont_c +#define H5O_dtype_mask ID_H5Odtype_c +#define H5O_efl_mask ID_H5Oefl_c +#define H5O_fill_mask ID_H5Ofill_c +#define H5O_layout_mask ID_H5Olayout_c +#define H5O_mtime_mask ID_H5Omtime_c +#define H5O_name_mask ID_H5Oname_c +#define H5O_null_mask ID_H5Onull_c +#define H5O_sdspace_mask ID_H5Osdspace_c +#define H5O_shared_mask ID_H5Oshared_c +#define H5O_stab_mask ID_H5Ostab_c +#define H5P_mask ID_H5P_c +#define H5R_mask ID_H5R_c +#define H5RA_mask ID_H5RA_c +#define H5S_mask ID_H5S_c +#define H5S_all_mask ID_H5Sall_c +#define H5S_hyper_mask ID_H5Shyper_c +#define H5S_mpio_mask ID_H5Smpio_c +#define H5S_none_mask ID_H5Snone_c +#define H5S_point_mask ID_H5Spoint_c +#define H5S_select_mask ID_H5Sselect_c +#define H5T_mask ID_H5T_c +#define H5TB_mask ID_H5TB_c +#define H5Tbit_mask ID_H5Tbit_c +#define H5T_conv_mask ID_H5Tconv_c +#define H5T_init_mask ID_H5Tinit_c +#define H5V_mask ID_H5V_c +#define H5Z_mask ID_H5Z_c + +#define ID_HDFprocName 9996 +#define ID_malloc 9997 +#define ID_free 9998 +#define ID_timeStamp 9999 +#define DUMMY_HDF 10000 #define BEGIN_HDF (DUMMY_HDF + 1) -#define END_HDF ID_HDF_Last_Entry -#define NumHDFProcs ( END_HDF - BEGIN_HDF ) -/*======================================================================*/ -/* HDF attribute, file, data_set, etc ID codes. May not be used. */ -/*======================================================================*/ -#define NoDSid 0 /* no data set id */ -#define HDF_NULL_ID 0 -#define HDF_File_ID 1 -#define HDF_SDS_ID 2 -#define HDF_Dim_ID 3 -#define HDF_Attribute_ID 4 -#define HDF_Label_ID 5 -#define HDF_Access_ID 6 -#define HDF_Directory_ID 7 -#define HDF_Annotation_ID 8 -#define HDF_Gen_Raster_ID 9 -#define HDF_Look_Up_Table_ID 10 -#define HDF_Vdata_ID 11 +#define END_HDF (ID_HDF_Last_Entry + DUMMY_HDF) +#define NumHDFProcs ( ID_HDF_Last_Entry ) + #define BEGIN_MPIO 900800 #define END_MPIO 900899 /*======================================================================*/ /* Macros to tell if the ID is that of an HDF Entry or Exit */ /*======================================================================*/ -#define isBeginHDFEvent( ID ) ( BEGIN_HDF <= (ID) && (ID) < END_HDF ) +#define isBeginHDFEvent( ID ) ( BEGIN_HDF <= (ID) && (ID) <= END_HDF ) #define isEndHDFEvent( ID ) isBeginHDFEvent(-(ID)) #define isBeginMPIOEvent( ID ) \ ( BEGIN_MPIO <= (ID) && (ID) <= END_MPIO && (ID)%2 == 0 ) @@ -143,11 +173,11 @@ ID_HDF_Last_Entry #define ProcIndex( ID ) ( (ID) - BEGIN_HDF ) #define ProcIndexForHDFEntry( ID ) ( (ID) - BEGIN_HDF ) #define ProcIndexForHDFExit( ID ) ProcIndexForHDFEntry(-ID) -#define HDFProcIXtoEventID( ID ) ( (ID) + BEGIN_HDF ) +#define HDFIXtoEventID( ID ) ( (ID) + BEGIN_HDF ) -#define TRACE_ON(mask, eventID) \ - if (procTrace & mask) startHDFtraceEvent(eventID) -#define TRACE_OFF(mask, eventID ) \ - if (procTrace & mask) endHDFtraceEvent(-eventID, 0, NULL, 0 ) +#define TRACE_ON(mask, ID) \ +if ( procTrace[mask] || procTrace[ID] ) startHDFtraceEvent( HDFIXtoEventID( ID ) ) +#define TRACE_OFF(mask, ID ) \ +if ( procTrace[mask] || procTrace[ID] ) endHDFtraceEvent(-HDFIXtoEventID(ID), 0, NULL, 0 ) #endif /* PROCIDS_H */ |