ATLAS Offline Software
LArCellCont.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 /********************************************************************
6 
7  NAME: LArCellCont.h
8  PACKAGE: Trigger/TrigAlgorithms/TrigT2CaloCommon
9 
10  AUTHOR: Denis Oliveira Damazio
11 
12  PURPOSE: Container with statically allocated LArCellCollections.
13  To be prepared in the Algorithm initialize and kept up
14  to algorithm finalize.
15  *******************************************************************/
16 
17 #ifndef TRIGT2CALOCOMMON_LARCELLCONT_H
18 #define TRIGT2CALOCOMMON_LARCELLCONT_H
19 
29 
30 #include <vector>
31 
32 class ILArBadFebMasker;
33 class CaloBCIDAverage;
34 class LArRoIMap;
35 class LArOnOffIdMapping;
37 
38 static std::vector<float> corrBCIDref_example;
39 
41 class LArCellCont : public std::vector<LArCellCollection*>
42 {
43 
44  public:
45 
48 
50  LArCellCont( ) ;
51 
56  const std::vector<LArCellCollection*>::const_iterator
57  find(const HWIdentifier& id) const ;
62  const std::vector<LArCellCollection*>::const_iterator
63  find(const unsigned int& id) ;
67  HWIdentifier findsec(const unsigned int& id) const ;
71  void applyBCIDCorrection(const unsigned int& rodid);
72 
74  virtual ~LArCellCont() { };
75 
77  StatusCode initialize( const LArRoIMap& roiMap,
78  const LArOnOffIdMapping& onOffMap,
79  const LArMCSym& mcsym, const LArFebRodMapping& febrod,
80  const LArBadChannelCont& badchannel,
81  const CaloDetDescrManager& ddm) ;
83  StatusCode finalize( void ) ;
85  void eventNumber ( const unsigned int eN ) { m_event=eN; };
87  void lumiBlock_BCID(const unsigned int lumi_block, const unsigned int BCID);
88 
90  const std::vector<uint32_t>& MissingROBs( void ) {
91  return m_MissingROBs;
92  }
93 
94  bool lumiBCIDCheck( const EventContext& context );
96  void updateBCID( const CaloBCIDAverage&, const LArOnOffIdMapping& );
97 
98 private:
99 
106  std::vector<HWIdentifier> m_second;
108  std::vector<unsigned int> m_eventNumber ;
110  unsigned int m_event;
112  std::vector<DataVector<LArCell>*> m_vecs;
113 
115  //const ILArBadChannelMasker *m_masker;
119  std::vector<uint32_t> m_MissingROBs;
121  std::vector< std::vector<int> > m_hashSym;
123  std::vector<float> m_corrBCID;
125  std::map<HWIdentifier,int> m_indexset;
128  unsigned int m_bcid;
130 
133 };
134 
135 #endif
136 
LArFebRodMapping
Definition: LArFebRodMapping.h:17
LArFebRodMapping.h
LArCellCont::m_hash
LArRodIdHash m_hash
Hash ID Identifier mapping to collection index.
Definition: LArCellCont.h:101
LArCellCont::m_BCIDcache
bool m_BCIDcache
flag to only update cache when trying to apply corrections
Definition: LArCellCont.h:132
LArCellCont::m_second
std::vector< HWIdentifier > m_second
FEB Hardware Identifier for second FEBs in a Collection.
Definition: LArCellCont.h:106
LArCellCont::lumiBCIDCheck
bool lumiBCIDCheck(const EventContext &context)
Definition: LArCellCont.cxx:297
LArBadXCont
Conditions-Data class holding LAr Bad Channel or Bad Feb information.
Definition: LArBadChannelCont.h:28
LArCellCont::find
const std::vector< LArCellCollection * >::const_iterator find(const HWIdentifier &id) const
Finds a collection by its LArReadoutModuleID.
Definition: LArCellCont.cxx:228
LArCellCont::m_eventNumber
std::vector< unsigned int > m_eventNumber
eventNumber of a given Collection
Definition: LArCellCont.h:108
LArRodIdHash.h
LArCellCont
Class which contains statically allocated LArCellCollections.
Definition: LArCellCont.h:42
LArCellCont::findsec
HWIdentifier findsec(const unsigned int &id) const
Each Collection contains data from 2 FEBs.
Definition: LArCellCont.cxx:265
HWIdentifier
Definition: HWIdentifier.h:13
PixelByteStreamErrors::BCID
@ BCID
Definition: PixelByteStreamErrors.h:13
LArBadChannelCont.h
event_number_t
EventIDBase::event_number_t event_number_t
Definition: IEvtIdModifierSvc.h:30
LArCellCont::applyBCIDCorrection
void applyBCIDCorrection(const unsigned int &rodid)
method to apply correction based on the luminosity to the energy
Definition: LArCellCont.cxx:246
LArMCSym
Helper class to handle z-phi symmetry of calibration constants in MC.
Definition: LArMCSym.h:19
LArOnOffIdMapping.h
LArCellCont::m_lumi_block
float m_lumi_block
current lumi_block
Definition: LArCellCont.h:127
LArCellCont::m_event
unsigned int m_event
this event number
Definition: LArCellCont.h:110
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
LArCellCont::m_bcidEvt
EventIDBase::event_number_t m_bcidEvt
Definition: LArCellCont.h:129
CaloBCIDAverage
Definition: CaloBCIDAverage.h:16
ILArBadFebMasker
Definition: ILArBadFebMasker.h:15
LArCellCont::m_badFebMasker
const ILArBadFebMasker * m_badFebMasker
A tool to help mask cells.
Definition: LArCellCont.h:117
Hid2RESrcID
Definition: Hid2RESrcID.h:38
LArCellCollection
Container Class for LArCell in a ROB used by EF.
Definition: LArCellCollection.h:28
HWIdentifier.h
LArCellCont::m_corrBCID
std::vector< float > m_corrBCID
corrections for a given BCID
Definition: LArCellCont.h:123
LArCellCont::initialize
StatusCode initialize(const LArRoIMap &roiMap, const LArOnOffIdMapping &onOffMap, const LArMCSym &mcsym, const LArFebRodMapping &febrod, const LArBadChannelCont &badchannel, const CaloDetDescrManager &ddm)
initialize method.
Definition: LArCellCont.cxx:22
LArCellCont::m_conv
Hid2RESrcID m_conv
Hardware to Source ID conversion.
Definition: LArCellCont.h:103
LArCellCont::updateBCID
void updateBCID(const CaloBCIDAverage &, const LArOnOffIdMapping &)
update BCID dependent correction table for MT case
Definition: LArCellCont.cxx:280
LArCellCont::m_bcid
unsigned int m_bcid
Definition: LArCellCont.h:128
EventInfo.h
LArCellCont::LArCellCont
LArCellCont()
Constructor.
Definition: LArCellCont.cxx:18
LArCellCont::lumiBlock_BCID
void lumiBlock_BCID(const unsigned int lumi_block, const unsigned int BCID)
sets LumiBlock and BCID
Definition: LArCellCont.cxx:270
LArCellCont::m_vecs
std::vector< DataVector< LArCell > * > m_vecs
One needs to destroy the TT vectors.
Definition: LArCellCont.h:112
CaloDetDescrManager
This class provides the client interface for accessing the detector description information common to...
Definition: CaloDetDescrManager.h:473
LArCellCollection.h
LArCellCont::m_indexset
std::map< HWIdentifier, int > m_indexset
index table
Definition: LArCellCont.h:125
LArRoIMap
Mapping between calorimeter trigger id to offline/online Identifier.
Definition: LArRoIMap.h:31
LArRodIdHash
class that provides LArReadoutModuleID to integer hash ID mapping.
Definition: LArRodIdHash.h:26
LArCellCont::m_MissingROBs
std::vector< uint32_t > m_MissingROBs
List of Missing ROBs to be disabled at the RS.
Definition: LArCellCont.h:119
LArCellCont::m_hashSym
std::vector< std::vector< int > > m_hashSym
hash references to BCID
Definition: LArCellCont.h:121
LArCellCont::MissingROBs
const std::vector< uint32_t > & MissingROBs(void)
List of Missing ROBs.
Definition: LArCellCont.h:90
LArCellCont::~LArCellCont
virtual ~LArCellCont()
destructor
Definition: LArCellCont.h:74
Hid2RESrcID.h
LArMCSym.h
LArCellCont::IDENTIFIABLE
LArCellCollection IDENTIFIABLE
Identifiable definition to be compatible with LArCellIDC.
Definition: LArCellCont.h:47
LArOnOffIdMapping
Definition: LArOnOffIdMapping.h:20
LArCellCont::finalize
StatusCode finalize(void)
finalize method.
Definition: LArCellCont.cxx:208
LArCellCont::eventNumber
void eventNumber(const unsigned int eN)
sets Event Number
Definition: LArCellCont.h:85