00001 #ifndef trgStructures2012_h
00002 #define trgStructures2012_h
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #define y12FORMAT_VERSION 0x11110141
00023 #define y12MAX_TRG_BLK_SIZE 122896
00024 #define y12MAX_OFFLEN 20
00025
00026 #define y12L1_CONF_NUM 1
00027 #define y12BC1_CONF_NUM 2
00028 #define y12MXQ_CONF_NUM 3
00029 #define y12MIX_CONF_NUM 4
00030 #define y12BCW_CONF_NUM 5
00031 #define y12BCE_CONF_NUM 6
00032 #define y12FEQ_CONF_NUM 7
00033 #define y12BBC_CONF_NUM 8
00034 #define y12BBQ_CONF_NUM 9
00035 #define y12FMS_CONF_NUM 10
00036 #define y12QT1_CONF_NUM 11
00037 #define y12QT2_CONF_NUM 12
00038 #define y12QT3_CONF_NUM 13
00039 #define y12QT4_CONF_NUM 14
00040
00041 #define y12ADD_BIT_PILEUP 0
00042 #define y12ADD_BIT_FORCE 5
00043 #define y12ADD_BIT_L2_5 6
00044 #define y12ADD_BIT_SIM 7
00045
00046 #define L2RESULTS_2012_OFFSET_EMC_CHECK 1
00047 #define L2RESULTS_2012_OFFSET_EMC_PED 2
00048 #define L2RESULTS_2012_OFFSET_BGAMMA 3
00049 #define L2RESULTS_2012_OFFSET_EGAMMA 6
00050 #define L2RESULTS_2012_OFFSET_DIJET 9
00051 #define L2RESULTS_2012_OFFSET_UPSILON 17
00052 #define L2RESULTS_2012_OFFSET_BEMCW 20
00053 #define L2RESULTS_2012_OFFSET_BHIEN 42
00054 #define L2RESULTS_2012_OFFSET_EHIEN 0
00055 #define L2RESULTS_2012_OFFSET_BTOW_CAL 0
00056 #define L2RESULTS_2012_OFFSET_ETOW_CAL 0
00057
00058
00059
00060 typedef struct {
00061 char name[3];
00062 char TrgDataFmtVer;
00063 int length;
00064 unsigned int bunchXing_hi;
00065 unsigned int bunchXing_lo;
00066 unsigned short actionWdDetectorBitMask;
00067 unsigned char actionWdTrgCommand;
00068 unsigned char actionWdDaqCommand;
00069 unsigned short TrgToken;
00070 unsigned short addBits;
00071 unsigned short DSMInput;
00072 unsigned short externalBusy;
00073 unsigned short internalBusy;
00074 unsigned short physicsWord;
00075 unsigned short TriggerWord;
00076 unsigned short DSMAddress;
00077 unsigned short TCU_Mark;
00078 unsigned short npre;
00079 unsigned short npost;
00080 unsigned short res1;
00081 } EvtDescData2012;
00082
00083
00084
00085 typedef struct {
00086 char name[4];
00087 int length;
00088 unsigned short TOF[8];
00089 unsigned short VTX[8];
00090 unsigned short EMC[8];
00091 unsigned short TPCMask[8];
00092 unsigned short BCdata[16];
00093 unsigned short specialTriggers[8];
00094 unsigned short FPD[8];
00095 unsigned short lastDSM[8];
00096 } L1_DSM_Data2012;
00097
00098
00099
00100 typedef struct {
00101 char name[4];
00102 int length;
00103 unsigned int L1Sum[2];
00104 unsigned int L2Sum[2];
00105 unsigned int L1Result[32];
00106 unsigned int L2Result[64];
00107 unsigned int CResult[64];
00108 } TrgSumData2012;
00109
00110 typedef struct {
00111 char name[4];
00112 int length;
00113 unsigned int data[1];
00114 } DataBlock2012;
00115
00116 typedef struct {
00117 char name[4];
00118 int length;
00119 unsigned short BBClayer1[16];
00120 unsigned short ZDClayer1[8];
00121 unsigned short VPD[8];
00122 } BBCBlock2012;
00123
00124 typedef struct {
00125 char name[4];
00126 int length;
00127 unsigned short FPDEastNSLayer1[8];
00128 unsigned char MTD_P2PLayer1[16];
00129 unsigned short TOFLayer1[8];
00130 unsigned short TOF[48];
00131 } MIXBlock2012;
00132
00133 typedef struct {
00134 char name[4];
00135 int length;
00136 int dataLoss;
00137 unsigned int data[1];
00138 } QTBlock2012;
00139
00140 typedef struct {
00141 char name[4];
00142 int length;
00143 unsigned char BEMCEast[240];
00144 } BEastBlock2012;
00145
00146 typedef struct {
00147 char name[4];
00148 int length;
00149 unsigned char BEMCWest[240];
00150 } BWestBlock2012;
00151
00152 typedef struct {
00153 char name[4];
00154 int length;
00155 unsigned short BEMClayer1[48];
00156 unsigned short EEMClayer1[16];
00157 unsigned char EEMC[144];
00158 } BELayerBlock2012;
00159
00160 typedef struct {
00161 char name[4];
00162 int length;
00163 unsigned char FMS[256];
00164 } FMSBlock2012;
00165
00166 typedef struct {
00167 int offset;
00168 int length;
00169 } TrgOfflen2012;
00170
00171 typedef struct {
00172 int FormatVersion;
00173 int totalTriggerLength;
00174 int eventNumber;
00175 TrgOfflen2012 EventDesc_ofl;
00176 TrgOfflen2012 L1_DSM_ofl;
00177 TrgOfflen2012 Summary_ofl;
00178 TrgOfflen2012 MainX[y12MAX_OFFLEN];
00179 int PrePostList[10];
00180 int raw_data[y12MAX_TRG_BLK_SIZE/4];
00181 } TriggerDataBlk2012;
00182
00183
00184 #endif
00185