ATLAS Offline Software
JemRoiSubBlockV2.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGT1CALOBYTESTREAM_JEMROISUBBLOCKV2_H
6 #define TRIGT1CALOBYTESTREAM_JEMROISUBBLOCKV2_H
7 
8 #include <vector>
9 
10 #include "L1CaloSubBlock.h"
11 
12 namespace LVL1 {
13  class JEMTobRoI;
14 }
15 
16 namespace LVL1BS {
17 
27 
28  public:
31 
33  void clear();
34 
36  void setRoiHeader(int version, int crate, int module);
39 
41  LVL1::JEMTobRoI roi(int frame) const;
42 
44  bool pack();
46  bool unpack();
47 
48  private:
50  static const int s_wordIdVal = 0xc;
51  // G-Link/Neutral format
52  static const int s_frames = 8;
53  static const int s_framesPerPin = 4;
54  static const int s_bunchCrossingPin = 2;
55  static const int s_energySmallBits = 9;
56  static const int s_energyLargeBits = 10;
57  static const int s_locationBits = 2;
58  static const int s_bunchCrossingBits = 12;
59  static const int s_paddingBits = 32;
60 
62  bool packNeutral();
64  bool unpackNeutral();
65 
67  std::vector<LVL1::JEMTobRoI> m_roiData;
68 
69 };
70 
71 } // end namespace
72 
73 #endif
LVL1BS::JemRoiSubBlockV2::fillRoi
void fillRoi(LVL1::JEMTobRoI roi)
Store RoI.
Definition: JemRoiSubBlockV2.cxx:52
LVL1BS::JemRoiSubBlockV2::s_wordIdVal
static const int s_wordIdVal
Header word ID.
Definition: JemRoiSubBlockV2.h:50
LVL1BS::JemRoiSubBlockV2::m_roiData
std::vector< LVL1::JEMTobRoI > m_roiData
RoIs.
Definition: JemRoiSubBlockV2.h:67
LVL1BS::JemRoiSubBlockV2::JemRoiSubBlockV2
JemRoiSubBlockV2()
Definition: JemRoiSubBlockV2.cxx:26
LVL1BS::JemRoiSubBlockV2::clear
void clear()
Clear all data.
Definition: JemRoiSubBlockV2.cxx:36
xAOD::JEMTobRoI
JEMTobRoI_v1 JEMTobRoI
Define the latest version of the JEMTobRoI class.
Definition: Event/xAOD/xAODTrigL1Calo/xAODTrigL1Calo/JEMTobRoI.h:17
LVL1BS::JemRoiSubBlockV2::packNeutral
bool packNeutral()
Pack neutral data.
Definition: JemRoiSubBlockV2.cxx:115
LVL1BS::JemRoiSubBlockV2
Sub-Block class for JEM RoI data (neutral format) post-LS1.
Definition: JemRoiSubBlockV2.h:26
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1BS::JemRoiSubBlockV2::s_bunchCrossingBits
static const int s_bunchCrossingBits
Definition: JemRoiSubBlockV2.h:58
LVL1BS::L1CaloSubBlock::crate
int crate() const
Definition: L1CaloSubBlock.h:263
LVL1BS::JemRoiSubBlockV2::s_energySmallBits
static const int s_energySmallBits
Definition: JemRoiSubBlockV2.h:55
L1CaloSubBlock.h
LVL1BS::JemRoiSubBlockV2::unpackNeutral
bool unpackNeutral()
Unpack neutral data.
Definition: JemRoiSubBlockV2.cxx:141
LVL1BS::JemRoiSubBlockV2::~JemRoiSubBlockV2
~JemRoiSubBlockV2()
Definition: JemRoiSubBlockV2.cxx:30
LVL1BS::JemRoiSubBlockV2::s_locationBits
static const int s_locationBits
Definition: JemRoiSubBlockV2.h:57
LVL1BS::JemRoiSubBlockV2::roi
LVL1::JEMTobRoI roi(int frame) const
Return RoI for given frame.
Definition: JemRoiSubBlockV2.cxx:64
LVL1BS::JemRoiSubBlockV2::s_framesPerPin
static const int s_framesPerPin
Definition: JemRoiSubBlockV2.h:53
LVL1::JEMTobRoI
JEM RoI data.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:19
LVL1BS::L1CaloSubBlock::version
int version() const
Definition: L1CaloSubBlock.h:243
LVL1BS::JemRoiSubBlockV2::s_bunchCrossingPin
static const int s_bunchCrossingPin
Definition: JemRoiSubBlockV2.h:54
LVL1BS::L1CaloSubBlock::module
int module() const
Definition: L1CaloSubBlock.h:268
LVL1BS::JemRoiSubBlockV2::s_energyLargeBits
static const int s_energyLargeBits
Definition: JemRoiSubBlockV2.h:56
LVL1BS::L1CaloSubBlock
L1Calo Sub-Block base class.
Definition: L1CaloSubBlock.h:24
LVL1BS
Definition: ZdcByteStreamReadV1V2Tool.h:47
LVL1BS::JemRoiSubBlockV2::setRoiHeader
void setRoiHeader(int version, int crate, int module)
Store header.
Definition: JemRoiSubBlockV2.cxx:44
LVL1BS::JemRoiSubBlockV2::pack
bool pack()
Pack data.
Definition: JemRoiSubBlockV2.cxx:73
LVL1BS::JemRoiSubBlockV2::s_frames
static const int s_frames
Definition: JemRoiSubBlockV2.h:52
LVL1BS::JemRoiSubBlockV2::unpack
bool unpack()
Unpack data.
Definition: JemRoiSubBlockV2.cxx:92
LVL1BS::JemRoiSubBlockV2::s_paddingBits
static const int s_paddingBits
Definition: JemRoiSubBlockV2.h:59