AraEvent/araIcrrStructures.h
Go to the documentation of this file.00001 00013 #ifndef ARA_STRUCTURES_H 00014 #define ARA_STRUCTURES_H 00015 #include "araIcrrDefines.h" 00016 00017 #define ARA_STRUCTURES_VERSION 1 00018 00019 //Enumerations 00020 00022 //Structures 00024 00026 00031 typedef struct { 00032 unsigned short numBytes; 00033 unsigned char verId; 00034 // unsigned int checksum; 00035 } GenericHeader_t; 00036 00038 00042 typedef struct { 00044 00051 unsigned char trigType; 00052 unsigned short ppsNum; 00053 unsigned short deadTime1; 00054 unsigned short deadTime2; 00055 unsigned short trigPattern; // trigger pattern: bits 0-8 - facet triggers | bit 9 - deep L1 | bit 10 - shallow L1 | bit 11 - unused | bit 12 - global trigger 00056 unsigned short rovdd[3]; // [0] - LSW of Rb clock counter | [1] - MSW of Rb clock counter | [2] - DAC voltage for LAB C 00057 unsigned short rcoCount[3]; // RCO counter for LAB chips 00058 } IcrrTriggerMonitorStruct_t; 00059 00061 00065 typedef struct { 00067 00070 unsigned char chanId; // chan+9*LAB3 00072 00078 unsigned char chipIdFlag; // Bits 0,1 chipNum; Bit 3 hitBus wrap; 4-7 hitBusOff 00080 00084 unsigned char firstHitbus; // If wrappedHitbus=0 data runs, lastHitbus+1 00086 00090 unsigned char lastHitbus; //to firstHitbus-1 inclusive 00091 00092 } AraRawIcrrRFChannelHeader_t; 00093 00095 00098 typedef struct { 00099 AraRawIcrrRFChannelHeader_t header; 00100 unsigned short data[MAX_NUMBER_SAMPLES_LAB3]; 00101 } IcrrIcrrRFChannelFull_t; 00102 00104 00107 typedef struct { 00108 AraRawIcrrRFChannelHeader_t header; 00109 short xMax; 00110 short xMin; 00111 float mean; 00112 float rms; 00113 short data[MAX_NUMBER_SAMPLES_LAB3]; 00114 } IcrrIcrrRFChannelPedSubbed_t; 00115 00117 00120 typedef struct { 00121 unsigned short temp[8]; 00122 } IcrrIcrrTemperatureDataStruct_t; 00123 00125 00128 typedef struct { 00129 unsigned short discone[8]; 00130 unsigned short batwing[8]; 00131 } IcrrIcrrRFPowerDataStruct_t; 00132 00134 00137 typedef struct { 00138 unsigned short dac[6][4]; 00139 } IcrrIcrrDACDataStruct_t; 00140 00142 00145 typedef struct { 00146 unsigned short discone[8]; 00147 unsigned short batPlus[8]; 00148 unsigned short batMinus[8]; 00149 unsigned short trigL1[12]; 00150 unsigned short global; 00151 } IcrrIcrrSimpleScalerStruct_t; 00152 00153 00154 00155 00157 00160 typedef struct { 00161 unsigned char chanId; 00162 unsigned short chipEntries; 00163 float pedMean[MAX_NUMBER_SAMPLES_LAB3]; 00164 float pedRMS[MAX_NUMBER_SAMPLES_LAB3]; 00165 } LabChipChannelPedStruct_t; 00166 00167 00168 00170 00174 typedef struct { 00175 unsigned int unixTime; 00176 unsigned int unixTimeUs; 00177 00179 00185 int gpsSubTime; 00186 unsigned int eventNumber; 00187 unsigned short calibStatus; 00188 unsigned char priority; 00189 00190 00199 unsigned char errorFlag; 00200 //unsigned char surfSlipFlag; ///< Sync Slip between SURF 2-9 and SURF 1 00201 00202 } IcrrEventHeader_t; 00203 00204 00205 00206 00208 00211 typedef struct { 00212 IcrrIcrrTemperatureDataStruct_t temp; 00213 IcrrIcrrRFPowerDataStruct_t rfPow; 00214 IcrrIcrrDACDataStruct_t dac; 00215 IcrrIcrrSimpleScalerStruct_t scaler; 00216 } IcrrHkDataStruct_t; 00217 00218 typedef struct { 00219 unsigned int unixTime; 00220 unsigned int unixTimeUs; 00221 unsigned int eventNumber; 00222 unsigned int errorFlag; 00223 } IcrrHkDataHeader_t; 00224 00226 00229 typedef struct { 00230 GenericHeader_t gHdr; 00231 unsigned int unixTimeStart; 00232 unsigned int unixTimeEnd; 00233 LabChipChannelPedStruct_t chan[NUM_DIGITIZED_ICRR_CHANNELS]; 00234 } FullLabChipPedStruct_t; 00235 00236 00238 // On-board structs 00240 00242 00245 typedef struct { 00246 GenericHeader_t gHdr; 00247 IcrrEventHeader_t hd; 00248 // unsigned int eventNumber; /* Global event number */ 00249 IcrrIcrrRFChannelFull_t channel[NUM_DIGITIZED_ICRR_CHANNELS]; 00250 IcrrTriggerMonitorStruct_t trig; 00251 IcrrHkDataStruct_t hk; 00252 } IcrrEventBody_t; 00253 00255 00259 typedef struct { 00260 GenericHeader_t gHdr; 00261 IcrrHkDataHeader_t hd; 00262 IcrrTriggerMonitorStruct_t trig; 00263 IcrrHkDataStruct_t hk; 00264 } IcrrHkBody_t; 00265 00266 00268 00271 typedef struct { 00272 GenericHeader_t gHdr; 00273 unsigned int eventNumber; /* Global event number */ 00274 unsigned int whichPeds; 00275 IcrrIcrrRFChannelPedSubbed_t channel[NUM_DIGITIZED_ICRR_CHANNELS]; 00276 IcrrHkDataStruct_t hk; 00277 } IcrrIcrrPedSubbedEventBody_t; 00278 00279 00280 //This stuff is just for legacy will be deprecated 00281 typedef struct IcrrRFChannelFull_t RFChannelFull_t; 00282 typedef struct IcrrRFChannelPedSubbed_t RFChannelPedSubbed_t; 00283 typedef struct IcrrTemperatureDataStruct_t TemperatureDataStruct_t; 00284 typedef struct IcrrRFPowerDataStruct_t RFPowerDataStruct_t; 00285 typedef struct IcrrDACDataStruct_t DACDataStruct_t; 00286 typedef struct IcrrSimpleScalerStruct_t SimpleScalerStruct_t; 00287 typedef IcrrEventHeader_t AraEventHeader_t; 00288 typedef IcrrEventBody_t AraEventBody_t; 00289 typedef IcrrHkBody_t AraHkBody_t; 00290 typedef struct IcrrPedSubbedEventBody_t PedSubbedEventBody_t; 00291 00292 00293 00294 #endif /* ARA_STRUCTURES_H */
Generated on Wed Aug 8 16:20:07 2012 for ARA ROOT Test Bed Software by
