ATLAS Offline Software
Loading...
Searching...
No Matches
CalibHitToCaloCellTool Class Reference

#include <CalibHitToCaloCellTool.h>

Inheritance diagram for CalibHitToCaloCellTool:

Public Member Functions

 CalibHitToCaloCellTool (const std::string &t, const std::string &n, const IInterface *p)
 ~CalibHitToCaloCellTool ()
StatusCode initialize () override
StatusCode processCalibHitsFromParticle () const
StatusCode finalize () override
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode sysInitialize () override
 Perform system initialization for an algorithm.
virtual StatusCode sysStart () override
 Handle START transition.
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles.
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles.
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T, V, H > &t)
void updateVHKA (Gaudi::Details::PropertyBase &)
MsgStream & msg () const
bool msgLvl (const MSG::Level lvl) const

Static Public Member Functions

static const InterfaceID & interfaceID ()

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed.

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t

Private Member Functions

Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

int m_caloGain
std::vector< std::string > m_calibHitContainerNames
std::string m_tileActiveHitCnt
std::string m_tileInactiveHitCnt
std::string m_tileDMHitCnt
std::string m_larInactHitCnt
std::string m_larActHitCnt
std::string m_larDMHitCnt
bool m_doTile
std::string m_caloCell_Tot
std::string m_caloCell_Vis
std::string m_caloCell_Em
std::string m_caloCell_NonEm
const CaloCell_IDm_caloCell_ID {nullptr}
const CaloDM_IDm_caloDM_ID {nullptr}
SG::ReadCondHandleKey< CaloDetDescrManagerm_caloMgrKey
std::string m_outputCellContainerName
std::string m_outputClusterContainerName
SG::WriteHandleKeyArray< CaloCellContainerm_cellContKeys
SG::WriteHandleKeyArray< xAOD::CaloClusterContainerm_clusterContKeys
SG::WriteHandleKeyArray< CaloClusterCellLinkContainerm_cellLinkKeys
const std::array< std::string, 3 > m_energyTypeToStr {"Eem","Evis","Etot"}
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default)
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
bool m_varHandleArraysDeclared

Detailed Description

Definition at line 38 of file CalibHitToCaloCellTool.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< AlgTool > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ CalibHitToCaloCellTool()

CalibHitToCaloCellTool::CalibHitToCaloCellTool ( const std::string & t,
const std::string & n,
const IInterface * p )

Definition at line 26 of file CalibHitToCaloCellTool.cxx.

27 : AthAlgTool(t,n,p),
29 m_caloCell_Tot("TotalCalibCell"), m_caloCell_Vis("VisCalibCell"),
31{
32 declareInterface<CalibHitToCaloCellTool>(this);
33
34 declareProperty("CaloGain", m_caloGain);
35 declareProperty("CalibHitContainers", m_calibHitContainerNames);
36
37 declareProperty("CellTotEne", m_caloCell_Tot);
38 declareProperty("CellVisEne", m_caloCell_Vis);
39 declareProperty("CellEmEne", m_caloCell_Em);
40 declareProperty("CellNonEmEne", m_caloCell_NonEm);
41 declareProperty("DoTile", m_doTile=false);
42
43 declareProperty("OutputCellContainerName", m_outputCellContainerName = "TruthCells");
44 declareProperty("OutputClusterContainerName", m_outputClusterContainerName = "TruthClusters");
45
46 m_tileActiveHitCnt = "TileCalibHitActiveCell";
47 m_tileInactiveHitCnt = "TileCalibHitInactiveCell";
48 m_tileDMHitCnt = "TileCalibHitDeadMaterial";
49 m_larActHitCnt = "LArCalibrationHitActive";
50 m_larInactHitCnt = "LArCalibrationHitInactive";
51 m_larDMHitCnt = "LArCalibrationHitDeadMaterial";
52
53}
AthAlgTool()
Default constructor:
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
std::vector< std::string > m_calibHitContainerNames
@ LARLOWGAIN
Definition CaloGain.h:18

◆ ~CalibHitToCaloCellTool()

CalibHitToCaloCellTool::~CalibHitToCaloCellTool ( )
default

Member Function Documentation

◆ declareGaudiProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > & hndl,
const SG::VarHandleKeyType &  )
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158 {
160 hndl.value(),
161 hndl.documentation());
162
163 }

◆ declareProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( Gaudi::Property< T, V, H > & t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145 {
146 typedef typename SG::HandleClassifier<T>::type htype;
148 }
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>

◆ detStore()

const ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

◆ evtStore()

ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase & ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ finalize()

StatusCode CalibHitToCaloCellTool::finalize ( )
override

Definition at line 293 of file CalibHitToCaloCellTool.cxx.

294{
295 ATH_MSG_INFO("finalize() successfully" );
296 return StatusCode::SUCCESS;
297}
#define ATH_MSG_INFO(x)

◆ initialize()

StatusCode CalibHitToCaloCellTool::initialize ( )
override

Definition at line 60 of file CalibHitToCaloCellTool.cxx.

61{
62 // retrieve ID helpers from det store
63 ATH_MSG_INFO("initialisation ID helpers" );
64
67 ATH_CHECK( m_caloMgrKey.initialize() );
68
69
70 for (unsigned int i=0; i<CalibHitUtils::nEnergyTypes; i++) {
74 }
75
76 ATH_CHECK(m_cellContKeys.initialize());
77 ATH_CHECK(m_clusterContKeys.initialize());
78 ATH_CHECK(m_cellLinkKeys.initialize());
79
80 ATH_MSG_INFO("initialisation completed" );
81 return StatusCode::SUCCESS;
82}
#define ATH_CHECK
Evaluate an expression and check for errors.
const ServiceHandle< StoreGateSvc > & detStore() const
SG::WriteHandleKeyArray< CaloCellContainer > m_cellContKeys
SG::WriteHandleKeyArray< CaloClusterCellLinkContainer > m_cellLinkKeys
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
const std::array< std::string, 3 > m_energyTypeToStr
SG::WriteHandleKeyArray< xAOD::CaloClusterContainer > m_clusterContKeys
const CaloCell_ID * m_caloCell_ID
retrieve(aClass, aKey=None)
Definition PyKernel.py:110

◆ inputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ interfaceID()

const InterfaceID & CalibHitToCaloCellTool::interfaceID ( )
inlinestatic

Definition at line 47 of file CalibHitToCaloCellTool.h.

static const InterfaceID IID_CalibHitToCaloCellTool("CalibHitToCaloCellTool", 1, 0)

◆ msg()

MsgStream & AthCommonMsg< AlgTool >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24 {
25 return this->msgStream();
26 }

◆ msgLvl()

bool AthCommonMsg< AlgTool >::msgLvl ( const MSG::Level lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30 {
31 return this->msgLevel(lvl);
32 }

◆ outputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ processCalibHitsFromParticle()

StatusCode CalibHitToCaloCellTool::processCalibHitsFromParticle ( ) const

..........................................................

Definition at line 86 of file CalibHitToCaloCellTool.cxx.

87{
88 ATH_MSG_DEBUG("in calibHitToCaloCellTool");
89
90 SG::ReadCondHandle<CaloDetDescrManager> caloMgrHandle{m_caloMgrKey};
91 ATH_CHECK(caloMgrHandle.isValid());
92 const CaloDetDescrManager* caloDDMgr = *caloMgrHandle;
93
94 //CaloCellContainer* truthCells[3];
95 //xAOD::CaloClusterContainer* truthClusters[3];
96
97 std::vector<SG::WriteHandle<CaloCellContainer> > truthCells;
98 std::vector<SG::WriteHandle<xAOD::CaloClusterContainer> > truthClusters;
99 std::vector<SG::WriteHandle<CaloClusterCellLinkContainer> > truthLinks;
100
101
102 // register containers for cells and clusters
103 for (unsigned int i=0; i<CalibHitUtils::nEnergyTypes; i++) {
104
105 truthCells.emplace_back(m_cellContKeys[i]);
106 ATH_CHECK(truthCells.back().record(std::make_unique<CaloCellContainer>()));
107
108 truthClusters.emplace_back(m_clusterContKeys[i]);
110
111 truthLinks.emplace_back(m_cellLinkKeys[i]);
112 ATH_CHECK(truthLinks.back().record(std::make_unique<CaloClusterCellLinkContainer>()));
113 }
114
115 // retrieve calibration hit containers
116 const unsigned int nCont = m_calibHitContainerNames.size();
117 std::vector<const CaloCalibrationHitContainer*> calibHitContainers(nCont,nullptr);
118 for (unsigned int i=0; i<nCont; i++) {
119 ATH_MSG_DEBUG("Retrieving " << m_calibHitContainerNames[i]);
120 ATH_CHECK( evtStore()->retrieve(calibHitContainers[i], m_calibHitContainerNames[i].c_str()) );
121 ATH_MSG_DEBUG(" Retrieved container " << calibHitContainers[i]->Name() << " with size " << calibHitContainers[i]->Size() );
122 if( calibHitContainers[i]->Size() == 0 ) {
123 ATH_MSG_DEBUG("Container " << calibHitContainers[i]->Name() << " is empty");
124 }
125 }
126 ATH_MSG_DEBUG("CaloCalibrationHitContainers retrieved successfuly" );
127
128 //count
129 int nchan=0;
130 int em_nchan=0;
131 int hec_nchan=0;
132 int fcal_nchan=0;
133 int tile_nchan=0;
134
135 std::vector<Identifier> ID;
136
137
138 std::vector<CaloCell*> CellsEtot;
139 std::vector<CaloCell*> CellsEvis;
140 std::vector<CaloCell*> CellsEem;
141
142 int nhitsInactive = 0;
143
144 for (unsigned int i=0; i<calibHitContainers.size(); i++) {
145 for( const auto *const calibhit: *(calibHitContainers[i])) {
146 //care only for deposits of the given truth particle
147 if (!MC::isGenStable(HepMC::barcode(calibhit))) continue; // FIXME barcode-based
148
149 double Etot = calibhit->energyTotal();
150 double Eem = calibhit->energy(0);
151 double Enonem = calibhit->energy(1);
152 double Evis = Eem + Enonem;
153
154 Identifier id=calibhit->cellID();
155
156 //merge inactive and active hits from the same cell together
157 if (i>0) {
158 //find if have already created cell..
159 bool isNewId = true;
160 for (int n=0; n<nhitsInactive; n++) {
161 if( id == ID[n] ) { //found
162 CellsEtot[n]->addEnergy(Etot);
163 CellsEvis[n]->addEnergy(Evis);
164 CellsEem[n]->addEnergy(Eem);
165 isNewId = false;
166 break;
167 }
168 }
169 if(!isNewId) continue; //go to next hit, else create new cell for this hit
170 }
171
172 //check if this ID is LAr or Tile
173 if(m_caloCell_ID->is_lar(id)) {
174 ATH_MSG_VERBOSE( "Found LAr cell" );
175 const CaloDetDescrElement* caloDDE = caloDDMgr->get_element(id);
176 CellsEtot.push_back(new LArCell(caloDDE, id, Etot, 0., 0, 0, (CaloGain::CaloGain)m_caloGain)) ;
177 CellsEvis.push_back(new LArCell(caloDDE, id, Evis, 0., 0, 0, (CaloGain::CaloGain)m_caloGain));
178 CellsEem.push_back(new LArCell(caloDDE, id, Eem, 0., 0, 0, (CaloGain::CaloGain)m_caloGain));
179 ID.push_back(id);
180 ++nchan;
181 }
182 else if(m_caloCell_ID->is_tile(id)) {
183 ATH_MSG_VERBOSE( "Found Tile cell" );
184 const CaloDetDescrElement* caloDDE = caloDDMgr->get_element(id);
185 CellsEtot.push_back(new TileCell(caloDDE, id, Etot, 0., 0, 0, (CaloGain::CaloGain)m_caloGain)) ;
186 CellsEvis.push_back(new TileCell(caloDDE, id, Evis, 0., 0, 0, (CaloGain::CaloGain)m_caloGain));
187 CellsEem.push_back(new TileCell(caloDDE, id, Eem, 0., 0, 0, (CaloGain::CaloGain)m_caloGain));
188 ID.push_back(id);
189 ++nchan;
190 }
191 else { //other, DeadMaterial
193 ATH_MSG_VERBOSE( "Found unknown cell" );
194 continue;
195 }
196 }
197 if (i==0) nhitsInactive = (int)ID.size();
198 }
199
200 //Now, put cells in the containers keeping the order. First goes EM, then HEC and so on
201 // if(CellsEtot.size()==0) {
202 // ID.clear();
203 // return StatusCode::SUCCESS;
204 // }
205
206 ATH_MSG_DEBUG("N cells : " << nchan );
207
208 for(int itr=0; itr!=nchan; itr++) {
209 if(m_caloCell_ID->is_em(CellsEtot[itr]->ID())) {
210 truthCells[CalibHitUtils::EnergyTotal]->push_back(CellsEtot[itr]);
211 truthCells[CalibHitUtils::EnergyVisible]->push_back(CellsEvis[itr]);
212 truthCells[CalibHitUtils::EnergyEM]->push_back(CellsEem[itr]);
213 ++em_nchan;
214 }
215 }
216 if(em_nchan) {
217 for (int i=0;i<CalibHitUtils::nEnergyTypes;i++) truthCells[i]->setHasCalo(CaloCell_ID::LAREM);
218 }
219
220 for(int itr=0; itr!=nchan; itr++) {
221 if(m_caloCell_ID->is_hec(CellsEtot[itr]->ID())) {
222 truthCells[CalibHitUtils::EnergyTotal]->push_back(CellsEtot[itr]);
223 truthCells[CalibHitUtils::EnergyVisible]->push_back(CellsEvis[itr]);
224 truthCells[CalibHitUtils::EnergyEM]->push_back(CellsEem[itr]);
225 ++hec_nchan;
226 }
227 }
228 if(hec_nchan){
229 for (int i=0;i<CalibHitUtils::nEnergyTypes;i++) truthCells[i]->setHasCalo(CaloCell_ID::LARHEC);
230 }
231
232 for(int itr=0; itr!=nchan; itr++) {
233 if(m_caloCell_ID->is_fcal(CellsEtot[itr]->ID())) {
234 truthCells[CalibHitUtils::EnergyTotal]->push_back(CellsEtot[itr]);
235 truthCells[CalibHitUtils::EnergyVisible]->push_back(CellsEvis[itr]);
236 truthCells[CalibHitUtils::EnergyEM]->push_back(CellsEem[itr]);
237 ++fcal_nchan;
238 }
239 }
240 if(fcal_nchan) {
241 for (int i=0;i<CalibHitUtils::nEnergyTypes;i++) truthCells[i]->setHasCalo(CaloCell_ID::LARFCAL);
242 }
243
244 for(int itr=0; itr!=nchan; itr++) {
245 if((m_caloCell_ID->is_tile(CellsEtot[itr]->ID()))) {
246 truthCells[CalibHitUtils::EnergyTotal]->push_back(CellsEtot[itr]);
247 truthCells[CalibHitUtils::EnergyVisible]->push_back(CellsEvis[itr]);
248 truthCells[CalibHitUtils::EnergyEM]->push_back(CellsEem[itr]);
249 ++tile_nchan;
250 }
251 }
252 if(tile_nchan) {
253 for (int i=0;i<CalibHitUtils::nEnergyTypes;i++) truthCells[i]->setHasCalo(CaloCell_ID::TILE);
254 }
255 ATH_MSG_DEBUG("--- LAr INFO --- "<<nchan );
256 ATH_MSG_DEBUG("LArCells = "<<nchan );
257 ATH_MSG_DEBUG("EMCells = "<<em_nchan );
258 ATH_MSG_DEBUG("HECCells = "<<hec_nchan );
259 ATH_MSG_DEBUG("FCALCells = "<<fcal_nchan );
260 ATH_MSG_DEBUG("TileCells = "<<tile_nchan );
261
262 ID.clear();
263
265
266 ATH_MSG_DEBUG("making truth cluster");
267 xAOD::CaloCluster* truthCluster[3] = {nullptr,nullptr,nullptr};
268 for (int i=0;i<CalibHitUtils::nEnergyTypes;i++) {
269 truthCluster[i] = CaloClusterStoreHelper::makeCluster(truthClusters[i].ptr(),truthCells[i].ptr());
270 if (!truthCluster[i]) {
271 ATH_MSG_FATAL("makeCluster failed");
272 return StatusCode::FAILURE;
273 }
274 for (const auto cell: *truthCells[i]) {
275 if(m_caloCell_ID->is_lar(cell->ID()) || m_caloCell_ID->is_tile(cell->ID()))
276 truthCluster[i]->addCell( truthCells[i]->findIndex(cell->caloDDE()->calo_hash()) , 1.);
277 }
278
280 CaloClusterKineHelper::calculateKine(truthCluster[i], true, true);
282 truthClusters[i].ptr()));
283
284 ATH_MSG_INFO("Created truth cluster with " << m_energyTypeToStr[i] <<" " << truthCluster[i]->e());
285 }
286
287 ATH_MSG_DEBUG("execute() completed successfully" );
288 return StatusCode::SUCCESS;
289}
#define ATH_MSG_FATAL(x)
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_DEBUG(x)
std::vector< Identifier > ID
JetDumper::Name Name
Definition JetDumper.cxx:19
ServiceHandle< StoreGateSvc > & evtStore()
static void calculateKine(xAOD::CaloCluster *clu, const bool useweight=true, const bool updateLayers=true, const bool useGPUCriteria=false)
Helper class to calculate cluster kinematics based on cells.
static std::unique_ptr< xAOD::CaloCluster > makeCluster(const CaloCellContainer *cellCont)
Creates a valid CaloCluster with a private Aux-Store and CellLink container.
static StatusCode AddContainerWriteHandle(SG::WriteHandle< xAOD::CaloClusterContainer > &clusColl)
Creates a new xAOD::CaloClusterContainer in the given WriteHandle + CaloClusterAuxContainer and recor...
static StatusCode finalizeClusters(SG::WriteHandle< CaloClusterCellLinkContainer > &h, xAOD::CaloClusterContainer *pClusterColl)
Finalize clusters (move CaloClusterCellLink to a separate container).
const CaloDetDescrElement * get_element(const Identifier &cellId) const
get element by its identifier
void setClusterSize(const ClusterSize)
Get cluster size.
bool addCell(const unsigned index, const double weight)
Method to add a cell to the cluster (Beware: Kinematics not updated!)
int barcode(const T *p)
Definition Barcode.h:16
bool isGenStable(const T &p)
Determine if the particle is stable at the generator (not det-sim) level,.
void * ptr(T *p)
Definition SGImplSvc.cxx:74
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.

◆ renounce()

std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > AthCommonDataStore< AthCommonMsg< AlgTool > >::renounce ( T & h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381 {
382 h.renounce();
384 }
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::renounceArray ( SG::VarHandleKeyArray & handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364 {
366 }

◆ sysInitialize()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysInitialize ( )
overridevirtualinherited

Perform system initialization for an algorithm.

We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.

Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::updateVHKA ( Gaudi::Details::PropertyBase & )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308 {
309 // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310 // << " size: " << m_vhka.size() << endmsg;
311 for (auto &a : m_vhka) {
313 for (auto k : keys) {
314 k->setOwner(this);
315 }
316 }
317 }
std::vector< SG::VarHandleKeyArray * > m_vhka

Member Data Documentation

◆ m_calibHitContainerNames

std::vector<std::string> CalibHitToCaloCellTool::m_calibHitContainerNames
private

Definition at line 51 of file CalibHitToCaloCellTool.h.

◆ m_caloCell_Em

std::string CalibHitToCaloCellTool::m_caloCell_Em
private

Definition at line 64 of file CalibHitToCaloCellTool.h.

◆ m_caloCell_ID

const CaloCell_ID* CalibHitToCaloCellTool::m_caloCell_ID {nullptr}
private

Definition at line 67 of file CalibHitToCaloCellTool.h.

67{nullptr};

◆ m_caloCell_NonEm

std::string CalibHitToCaloCellTool::m_caloCell_NonEm
private

Definition at line 65 of file CalibHitToCaloCellTool.h.

◆ m_caloCell_Tot

std::string CalibHitToCaloCellTool::m_caloCell_Tot
private

Definition at line 62 of file CalibHitToCaloCellTool.h.

◆ m_caloCell_Vis

std::string CalibHitToCaloCellTool::m_caloCell_Vis
private

Definition at line 63 of file CalibHitToCaloCellTool.h.

◆ m_caloDM_ID

const CaloDM_ID* CalibHitToCaloCellTool::m_caloDM_ID {nullptr}
private

Definition at line 68 of file CalibHitToCaloCellTool.h.

68{nullptr};

◆ m_caloGain

int CalibHitToCaloCellTool::m_caloGain
private

Definition at line 50 of file CalibHitToCaloCellTool.h.

◆ m_caloMgrKey

SG::ReadCondHandleKey<CaloDetDescrManager> CalibHitToCaloCellTool::m_caloMgrKey
private
Initial value:
{ this
, "CaloDetDescrManager"
, "CaloDetDescrManager"
, "SG Key for CaloDetDescrManager in the Condition Store" }

Definition at line 70 of file CalibHitToCaloCellTool.h.

70 { this
71 , "CaloDetDescrManager"
72 , "CaloDetDescrManager"
73 , "SG Key for CaloDetDescrManager in the Condition Store" };

◆ m_cellContKeys

SG::WriteHandleKeyArray<CaloCellContainer> CalibHitToCaloCellTool::m_cellContKeys
private

Definition at line 78 of file CalibHitToCaloCellTool.h.

◆ m_cellLinkKeys

SG::WriteHandleKeyArray<CaloClusterCellLinkContainer> CalibHitToCaloCellTool::m_cellLinkKeys
private

Definition at line 80 of file CalibHitToCaloCellTool.h.

◆ m_clusterContKeys

SG::WriteHandleKeyArray<xAOD::CaloClusterContainer> CalibHitToCaloCellTool::m_clusterContKeys
private

Definition at line 79 of file CalibHitToCaloCellTool.h.

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_doTile

bool CalibHitToCaloCellTool::m_doTile
private

Definition at line 60 of file CalibHitToCaloCellTool.h.

◆ m_energyTypeToStr

const std::array<std::string, 3> CalibHitToCaloCellTool::m_energyTypeToStr {"Eem","Evis","Etot"}
private

Definition at line 82 of file CalibHitToCaloCellTool.h.

82{"Eem","Evis","Etot"};

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_larActHitCnt

std::string CalibHitToCaloCellTool::m_larActHitCnt
private

Definition at line 57 of file CalibHitToCaloCellTool.h.

◆ m_larDMHitCnt

std::string CalibHitToCaloCellTool::m_larDMHitCnt
private

Definition at line 58 of file CalibHitToCaloCellTool.h.

◆ m_larInactHitCnt

std::string CalibHitToCaloCellTool::m_larInactHitCnt
private

Definition at line 56 of file CalibHitToCaloCellTool.h.

◆ m_outputCellContainerName

std::string CalibHitToCaloCellTool::m_outputCellContainerName
private

Definition at line 75 of file CalibHitToCaloCellTool.h.

◆ m_outputClusterContainerName

std::string CalibHitToCaloCellTool::m_outputClusterContainerName
private

Definition at line 76 of file CalibHitToCaloCellTool.h.

◆ m_tileActiveHitCnt

std::string CalibHitToCaloCellTool::m_tileActiveHitCnt
private

Definition at line 53 of file CalibHitToCaloCellTool.h.

◆ m_tileDMHitCnt

std::string CalibHitToCaloCellTool::m_tileDMHitCnt
private

Definition at line 55 of file CalibHitToCaloCellTool.h.

◆ m_tileInactiveHitCnt

std::string CalibHitToCaloCellTool::m_tileInactiveHitCnt
private

Definition at line 54 of file CalibHitToCaloCellTool.h.

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< AlgTool > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files: