ARA ROOT Test BEd Software

AraEvent/araAtriStructures.h

00001 
00009 /*
00010  *
00011  * Current CVS Tag:
00012  * $Header: $
00013  */
00014 
00015 #ifndef ATRI_STRUCTURES_H
00016 #define ATRI_STRUCTURES_H
00017 
00018 #if !defined(__CINT__) || defined(__MAKECINT__)
00019 #include <stdint.h>
00020 #endif
00021 
00022 #include "araSoft.h"
00023 
00024 #define ARA_SOFT_VERISON 2
00025 #define ARA_SOFT_SUB_VERISON 7
00026 
00027 
00028 
00030 
00033 enum {
00034   ARA_EVENT_TYPE=0x1, 
00035   ARA_HEADER_TYPE=0x2, 
00036   ARA_EVENT_HK_TYPE=0x3, 
00037   ARA_SENSOR_HK_TYPE=0x4, 
00038   ARA_SBC_HK_TYPE=0x5, 
00039   ARA_ICRR_EVENT_TYPE=0x06 
00040 } ;
00041 typedef uint8_t AraDataStructureType_t;  
00042 
00044 
00047 enum {
00048   ARA_STATION_ICRR_TESTBED=0x0, 
00049   ARA_STATION_ICRR_STATION1=0x1, 
00050   ARA_STATION_ATRI_STATION2=0x2 
00051 } ;
00052 typedef uint8_t AraStationId_t;  
00053 
00054 
00055 #define THIS_STATION ARA_STATION_ATRI_ARA2
00056 
00057 
00058 
00060 
00063 typedef struct {
00064   AraDataStructureType_t typeId;
00065   AraStationId_t stationId;
00066   uint8_t verId;
00067   uint8_t subVerId;
00068   uint32_t numBytes;
00069   uint16_t checksum;
00070   uint16_t reserved;
00071   uint32_t alsoReserved;
00072 } AraGenericHeader_t;
00073 
00074 
00076 
00079 typedef struct {
00080   AraGenericHeader_t gHdr; 
00081   uint64_t unixTime; 
00082   uint32_t unixTimeUs; 
00083   uint32_t firmwareVersion; 
00084   uint16_t wilkinsonCounter[DDA_PER_ATRI]; 
00085   uint16_t wilkinsonDelay[DDA_PER_ATRI]; 
00086   uint32_t ppsCounter; 
00087   uint32_t clockCounter; 
00088   uint16_t l1Scaler[TDA_PER_ATRI][ANTS_PER_TDA]; 
00089   uint16_t l1ScalerSurface[ANTS_PER_TDA]; 
00090   uint16_t l2Scaler[TDA_PER_ATRI][L2_PER_TDA]; 
00091   uint16_t l3Scaler; 
00092   uint16_t l3ScalerSurface; 
00093   uint16_t l2ScalerAllTda12; 
00094   uint16_t l2ScalerAllTda34; 
00095   uint16_t vdlyDac[DDA_PER_ATRI]; 
00096   uint16_t vadjDac[DDA_PER_ATRI]; 
00097   uint16_t thresholdDac[TDA_PER_ATRI][ANTS_PER_TDA]; 
00098   uint16_t surfaceThresholdDac[ANTS_PER_TDA]; 
00099   uint8_t deadTime[DDA_PER_ATRI]; 
00100   uint8_t avgOccupancy[DDA_PER_ATRI]; 
00101   uint8_t maxOccupancy[DDA_PER_ATRI]; 
00102   uint8_t reserved[DDA_PER_ATRI];
00103 } AraEventHk_t;
00104 
00105 
00107 
00110 typedef struct {
00111   AraGenericHeader_t gHdr; 
00112   uint64_t unixTime; 
00113   uint32_t unixTimeUs; 
00114   uint8_t atriVoltage; 
00115   uint8_t atriCurrent; 
00116   uint16_t ddaTemp[DDA_PER_ATRI]; 
00117   uint16_t tdaTemp[TDA_PER_ATRI]; 
00118   uint32_t ddaVoltageCurrent[DDA_PER_ATRI]; 
00119   uint32_t tdaVoltageCurrent[DDA_PER_ATRI]; 
00120 } AraSensorHk_t;
00121 
00122 
00124 
00127 typedef struct {
00128   AraGenericHeader_t gHdr; 
00129   uint64_t unixTime; 
00130   uint32_t unixTimeUs; 
00131   uint32_t eventNumber; 
00132   uint32_t eventId[DDA_PER_ATRI]; 
00133   uint16_t blockId[DDA_PER_ATRI]; 
00134   uint16_t samples[DDA_PER_ATRI][512]; 
00135 } AraSimpleStationEvent_t;
00136 
00137 
00138 
00139 #define EXTRA_SOFTWARE_HEADER_BYTES 32 
00140 
00142 
00145 typedef struct {
00146   AraGenericHeader_t gHdr; 
00147   uint64_t unixTime; 
00148   uint32_t unixTimeUs; 
00149   uint32_t eventNumber; 
00150   uint32_t numBytes; 
00151   uint32_t timeStamp; 
00152   uint32_t ppsNumber; 
00153   uint32_t eventId; 
00154   uint16_t versionNumber; 
00155   uint16_t numReadoutBlocks; 
00156   uint16_t triggerPattern[MAX_TRIG_BLOCKS]; 
00157   uint16_t triggerInfo[MAX_TRIG_BLOCKS]; 
00158   uint8_t triggerBlock[MAX_TRIG_BLOCKS]; 
00159 } AraStationEventHeader_t;
00160   
00161 
00162 
00164 
00167 typedef struct {
00168   uint16_t irsBlockNumber; 
00169   uint16_t channelMask; 
00170   //  uint8_t channelMask; ///<Bit mask for the 8 available channels 0x8f by default
00171   //  uint8_t atriDdaNumber; 
00172 } AraStationEventBlockHeader_t;
00173 
00174 
00176 
00179 typedef struct {
00180   uint16_t samples[SAMPLES_PER_BLOCK]; 
00181 } AraStationEventBlockChannel_t;
00182   
00183 
00184 
00185 #endif //ATRI_STRUCTURES_H

Generated on Wed Aug 8 16:20:07 2012 for ARA ROOT Test Bed Software by doxygen 1.4.7