00001
00002
00003 #ifndef XAODTRIGL1CALO_VERSIONS_CPMROI_V1_H
00004 #define XAODTRIGL1CALO_VERSIONS_CPMROI_V1_H
00005
00006 extern "C" {
00007 # include <stdint.h>
00008 }
00009
00010 #include "AthLinks/ElementLink.h"
00011 #include "AthContainers/AuxElement.h"
00012
00013 namespace xAOD {
00014
00021
00022 class CPMRoI_v1 : public SG::AuxElement{
00023 public:
00024
00025 CPMRoI_v1();
00026
00028 uint32_t roiWord() const;
00030 void setRoiWord(uint32_t);
00031
00033 int crate() const;
00035 int cpm() const;
00037 int chip() const;
00039 int location() const;
00041 int hits() const;
00043 int error() const;
00045 int parity() const;
00047 int saturation() const;
00048
00049 private:
00051 static const int s_wordIdVal = 0x0;
00052
00053 static const int s_wordIdBit = 30;
00054 static const int s_crateBit = 28;
00055 static const int s_cpmBit = 24;
00056 static const int s_chipBit = 21;
00057 static const int s_locationBit = 18;
00058 static const int s_parityBit = 17;
00059 static const int s_saturationBit = 16;
00060 static const int s_hitsBit = 0;
00061
00062 static const int s_wordIdMask = 0x3;
00063 static const int s_crateMask = 0x3;
00064 static const int s_cpmMask = 0xf;
00065 static const int s_chipMask = 0x7;
00066 static const int s_locationMask = 0x7;
00067 static const int s_parityMask = 0x1;
00068 static const int s_saturationMask = 0x1;
00069 static const int s_hitsMask = 0xffff;
00070
00071 };
00072 }
00073
00074 #endif // XAODTRIGL1CALO_VERSIONS_CPMROI_V1_H