00001
00002
00003 #ifndef XAODTRIGL1CALO_VERSIONS_JEMROI_V1_H
00004 #define XAODTRIGL1CALO_VERSIONS_JEMROI_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 JEMRoI_v1 : public SG::AuxElement{
00023 public:
00024
00025 JEMRoI_v1();
00026
00028 uint32_t roiWord() const;
00030 void setRoiWord(uint32_t);
00031
00033 int crate() const;
00035 int jem() const;
00037 int frame() const;
00039 int location() const;
00041 int forward() const;
00043 int hits() const;
00045 int error() const;
00047 int parity() const;
00049 int saturation() const;
00050
00051 private:
00053 static const int s_wordIdVal = 0x4;
00054
00055 static const int s_wordIdBit = 29;
00056 static const int s_crateBit = 28;
00057 static const int s_jemBit = 24;
00058 static const int s_frameBit = 21;
00059 static const int s_locationBit = 19;
00060 static const int s_forwardBit = 18;
00061 static const int s_parityBit = 17;
00062 static const int s_saturationBit = 16;
00063 static const int s_forwardHitsBit = 8;
00064 static const int s_mainHitsBit = 0;
00065
00066 static const int s_wordIdMask = 0x7;
00067 static const int s_crateMask = 0x1;
00068 static const int s_jemMask = 0xf;
00069 static const int s_frameMask = 0x7;
00070 static const int s_locationMask = 0x3;
00071 static const int s_forwardMask = 0x1;
00072 static const int s_parityMask = 0x1;
00073 static const int s_saturationMask = 0x1;
00074 static const int s_forwardHitsMask = 0xf;
00075 static const int s_mainHitsMask = 0xff;
00076
00077 };
00078 }
00079 #endif // XAODTRIGL1CALO_VERSIONS_JEMROI_V1_H