ATLAS Offline Software
Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
CaloHitAnalysis Class Reference

#include <CaloHitAnalysis.h>

Inheritance diagram for CaloHitAnalysis:
Collaboration diagram for CaloHitAnalysis:

Public Member Functions

 CaloHitAnalysis (const std::string &name, ISvcLocator *pSvcLocator)
 
 ~CaloHitAnalysis ()=default
 
virtual StatusCode initialize () override
 
virtual StatusCode execute () override
 
virtual StatusCode sysInitialize () override
 Override sysInitialize. More...
 
virtual const DataObjIDColl & extraOutputDeps () const override
 Return the list of extra output dependencies. More...
 
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & evtStore () const
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. More...
 
virtual StatusCode sysStart () override
 Handle START transition. More...
 
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles. More...
 
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles. More...
 
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T > &t)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc="none")
 Declare a new Gaudi property. More...
 
void updateVHKA (Gaudi::Details::PropertyBase &)
 
MsgStream & msg () const
 
MsgStream & msg (const MSG::Level lvl) const
 
bool msgLvl (const MSG::Level lvl) const
 

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution More...
 
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. More...
 

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t
 

Private Member Functions

Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &)
 specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &)
 specialization for handling Gaudi::Property<SG::VarHandleBase> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &)
 specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
 

Private Attributes

TH1 * m_h_cell_eta {}
 Simple variables by Ketevi. More...
 
TH1 * m_h_cell_phi {}
 
TH1 * m_h_cell_e {}
 
TH1 * m_h_cell_radius {}
 
TH2 * m_h_xy {}
 
TH2 * m_h_zr {}
 
TH2 * m_h_etaphi {}
 
TH2 * m_h_time_e {}
 
TH2 * m_h_eta_e {}
 
TH2 * m_h_phi_e {}
 
TH2 * m_h_r_e {}
 
TH1 * m_h_calib_eta {}
 
TH1 * m_h_calib_phi {}
 
TH2 * m_h_calib_rz {}
 
TH2 * m_h_calib_etaphi {}
 
TH1 * m_h_calib_eEM {}
 
TH1 * m_h_calib_eNonEM {}
 
TH1 * m_h_calib_eInv {}
 
TH1 * m_h_calib_eEsc {}
 
TH1 * m_h_calib_eTot {}
 
TH1 * m_h_calib_eTotpartID {}
 
const TileIDm_tileID {}
 
const TileDetDescrManagerm_tileMgr {}
 
std::vector< float > * m_cell_eta {}
 
std::vector< float > * m_cell_phi {}
 
std::vector< float > * m_cell_x {}
 
std::vector< float > * m_cell_y {}
 
std::vector< float > * m_cell_z {}
 
std::vector< float > * m_cell_e {}
 
std::vector< float > * m_cell_radius {}
 
std::vector< float > * m_time {}
 
std::vector< float > * m_calib_eta {}
 
std::vector< float > * m_calib_phi {}
 
std::vector< float > * m_calib_radius {}
 
std::vector< float > * m_calib_z {}
 
std::vector< float > * m_calib_eEM {}
 
std::vector< float > * m_calib_eNonEM {}
 
std::vector< float > * m_calib_eInv {}
 
std::vector< float > * m_calib_eEsc {}
 
std::vector< float > * m_calib_eTot {}
 
std::vector< float > * m_calib_partID {}
 
BooleanProperty m_expert {this, "ExpertMode", false}
 
BooleanProperty m_calib {this, "UseCalibHits", false}
 
BooleanProperty m_useLAr {this, "UseLAr", true}
 
BooleanProperty m_useTile {this, "UseTile", true}
 
TTree * m_tree {}
 
StringProperty m_ntupleFileName {this, "NtupleFileName", "/CaloHitAnalysis/"}
 
StringProperty m_path {this, "HistPath", "/CaloHitAnalysis/"}
 
ServiceHandle< ITHistSvc > m_thistSvc {this, "THitSvc", "THistSvc"}
 
SG::ReadCondHandleKey< CaloDetDescrManagerm_caloMgrKey
 
DataObjIDColl m_extendedExtraObjects
 
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default) More...
 
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default) More...
 
std::vector< SG::VarHandleKeyArray * > m_vhka
 
bool m_varHandleArraysDeclared
 

Detailed Description

Definition at line 27 of file CaloHitAnalysis.h.

Member Typedef Documentation

◆ StoreGateSvc_t

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

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ CaloHitAnalysis()

CaloHitAnalysis::CaloHitAnalysis ( const std::string &  name,
ISvcLocator *  pSvcLocator 
)

Definition at line 33 of file CaloHitAnalysis.cxx.

34  : AthAlgorithm(name, pSvcLocator)
35 {
36 }

◆ ~CaloHitAnalysis()

CaloHitAnalysis::~CaloHitAnalysis ( )
default

Member Function Documentation

◆ declareGaudiProperty() [1/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleKeyArrayType  
)
inlineprivateinherited

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

Definition at line 170 of file AthCommonDataStore.h.

172  {
173  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
174  hndl.value(),
175  hndl.documentation());
176 
177  }

◆ declareGaudiProperty() [2/4]

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

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

Definition at line 156 of file AthCommonDataStore.h.

158  {
159  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
160  hndl.value(),
161  hndl.documentation());
162 
163  }

◆ declareGaudiProperty() [3/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleType  
)
inlineprivateinherited

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

Definition at line 184 of file AthCommonDataStore.h.

186  {
187  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
188  hndl.value(),
189  hndl.documentation());
190  }

◆ declareGaudiProperty() [4/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  t,
const SG::NotHandleType  
)
inlineprivateinherited

specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray>

Definition at line 199 of file AthCommonDataStore.h.

200  {
201  return PBASE::declareProperty(t);
202  }

◆ declareProperty() [1/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleBase hndl,
const std::string &  doc,
const SG::VarHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleBase. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 245 of file AthCommonDataStore.h.

249  {
250  this->declare(hndl.vhKey());
251  hndl.vhKey().setOwner(this);
252 
253  return PBASE::declareProperty(name,hndl,doc);
254  }

◆ declareProperty() [2/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleKey hndl,
const std::string &  doc,
const SG::VarHandleKeyType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleKey. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 221 of file AthCommonDataStore.h.

225  {
226  this->declare(hndl);
227  hndl.setOwner(this);
228 
229  return PBASE::declareProperty(name,hndl,doc);
230  }

◆ declareProperty() [3/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleKeyArray hndArr,
const std::string &  doc,
const SG::VarHandleKeyArrayType  
)
inlineinherited

Definition at line 259 of file AthCommonDataStore.h.

263  {
264 
265  // std::ostringstream ost;
266  // ost << Algorithm::name() << " VHKA declareProp: " << name
267  // << " size: " << hndArr.keys().size()
268  // << " mode: " << hndArr.mode()
269  // << " vhka size: " << m_vhka.size()
270  // << "\n";
271  // debug() << ost.str() << endmsg;
272 
273  hndArr.setOwner(this);
274  m_vhka.push_back(&hndArr);
275 
276  Gaudi::Details::PropertyBase* p = PBASE::declareProperty(name, hndArr, doc);
277  if (p != 0) {
278  p->declareUpdateHandler(&AthCommonDataStore<PBASE>::updateVHKA, this);
279  } else {
280  ATH_MSG_ERROR("unable to call declareProperty on VarHandleKeyArray "
281  << name);
282  }
283 
284  return p;
285 
286  }

◆ declareProperty() [4/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc,
const SG::NotHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This is the generic version, for types that do not derive from SG::VarHandleKey. It just forwards to the base class version of declareProperty.

Definition at line 333 of file AthCommonDataStore.h.

337  {
338  return PBASE::declareProperty(name, property, doc);
339  }

◆ declareProperty() [5/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc = "none" 
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This dispatches to either the generic declareProperty or the one for VarHandle/Key/KeyArray.

Definition at line 352 of file AthCommonDataStore.h.

355  {
356  typedef typename SG::HandleClassifier<T>::type htype;
357  return declareProperty (name, property, doc, htype());
358  }

◆ declareProperty() [6/6]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( Gaudi::Property< T > &  t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145  {
146  typedef typename SG::HandleClassifier<T>::type htype;
148  }

◆ detStore()

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

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

Definition at line 95 of file AthCommonDataStore.h.

95 { return m_detStore; }

◆ evtStore() [1/2]

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

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

Definition at line 85 of file AthCommonDataStore.h.

85 { return m_evtStore; }

◆ evtStore() [2/2]

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

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

Definition at line 90 of file AthCommonDataStore.h.

90 { return m_evtStore; }

◆ execute()

StatusCode CaloHitAnalysis::execute ( )
overridevirtual

Definition at line 176 of file CaloHitAnalysis.cxx.

176  {
177  ATH_MSG_DEBUG( "In CaloHitAnalysis::execute()" );
178 
179  m_cell_eta->clear();
180  m_cell_phi->clear();
181  m_cell_e->clear();
182  m_cell_x->clear();
183  m_cell_y->clear();
184  m_cell_z->clear();
185  m_cell_radius->clear();
186  m_time->clear();
187  m_calib_eta->clear();
188  m_calib_phi->clear();
189  m_calib_radius->clear();
190  m_calib_z->clear();
191  m_calib_eEM->clear();
192  m_calib_eNonEM->clear();
193  m_calib_eInv->clear();
194  m_calib_eEsc->clear();
195  m_calib_eTot->clear();
196  m_calib_partID->clear();
197 
198  if (m_useTile) {
199  const TileHitVector* hitVec;
200  //const TileHitVector* hitVec;
201  if (evtStore()->retrieve(hitVec,"TileHitVec") == StatusCode::SUCCESS && m_tileMgr && m_tileID) {
202  for (const auto& i_hit : *hitVec) {
203  Identifier pmt_id = (i_hit).identify();
204  Identifier cell_id = m_tileID->cell_id(pmt_id);
205  const CaloDetDescrElement* ddElement = (m_tileID->is_tile_aux(cell_id)) ? 0 : m_tileMgr->get_cell_element(cell_id);
206  if (ddElement) {
207  double tot_e = 0.;
208  double tot_time = 0.;
209  for (int t=0; t<(i_hit).size(); ++t) tot_e += (i_hit).energy(t);
210  for (int t=0; t<(i_hit).size(); ++t) tot_time += (i_hit).time(t);
211  m_h_cell_e->Fill(tot_e);
212  m_h_cell_eta->Fill(ddElement->eta());
213  m_h_cell_phi->Fill(ddElement->phi()) ;
214  m_h_cell_radius->Fill(ddElement->z());
215  m_h_xy->Fill(ddElement->x(), ddElement->y());
216  m_h_zr->Fill(ddElement->r(), ddElement->r());
217  m_h_etaphi->Fill(ddElement->eta(), ddElement->phi());
218 
219  if (m_expert) {
220  m_h_time_e->Fill(tot_time, tot_e);
221  m_h_eta_e->Fill(ddElement->eta(), tot_e);
222  m_h_phi_e->Fill(ddElement->phi(), tot_e);
223  m_h_r_e->Fill(ddElement->r(), tot_e);
224  }
225  m_cell_eta->push_back(ddElement->eta());
226  m_cell_phi->push_back(ddElement->phi());
227  m_cell_e->push_back(tot_e);
228  m_cell_x->push_back(ddElement->x());
229  m_cell_y->push_back(ddElement->y());
230  m_cell_z->push_back(ddElement->z());
231  m_cell_radius->push_back(ddElement->r());
232  m_time->push_back(tot_time);
233  }
234  }
235  }
236  } // DoTile
237 
238  if (m_useLAr) {
240  ATH_CHECK(caloMgrHandle.isValid());
241  const CaloDetDescrManager* caloMgr = *caloMgrHandle;
242 
243  std::string lArKey [4] = {"LArHitEMB", "LArHitEMEC", "LArHitFCAL", "LArHitHEC"};
244  for (unsigned int i=0; i<4; i++) {
245  const LArHitContainer* iter;
246  if (evtStore()->retrieve(iter,lArKey[i]) == StatusCode::SUCCESS) {
247  for (auto hi : *iter ) {
248  const CaloDetDescrElement *hitElement = caloMgr->get_element(hi->cellID());
249  double energy = hi->energy();
250  double time = hi->time();
251  double eta = hitElement->eta();
252  double phi = hitElement->phi();
253  double radius = hitElement->r();
254  float x = hitElement->x();
255  float y = hitElement->y();
256  double z = hitElement->z();
257 
258  m_h_cell_e->Fill( energy );
259  m_h_cell_eta->Fill( eta );
260  m_h_cell_phi->Fill( phi );
261  m_h_cell_radius->Fill( radius );
262  m_h_xy->Fill(x,y);
263  m_h_zr->Fill(z,radius);
264  m_h_etaphi->Fill(eta, phi);
265  if (m_expert) {
266  m_h_time_e->Fill(time, energy);
267  m_h_eta_e->Fill(eta, energy);
268  m_h_phi_e->Fill(phi, energy);
269  m_h_r_e->Fill(radius, energy);
270  }
271  m_cell_eta->push_back(eta);
272  m_cell_phi->push_back(phi);
273  m_cell_e->push_back(energy);
274  m_cell_x->push_back(x);
275  m_cell_y->push_back(y);
276  m_cell_z->push_back(z);
277  m_cell_radius->push_back(radius);
278  m_time->push_back(time);
279  } // End while hits
280  } // End statuscode success upon retrieval of hits
281  } // End detector type loop
282 
283  //For calibrated hits
284  std::string LArCalibKey [3] = {"LArCalibrationHitActive", "LArCalibrationHitInactive","LArCalibrationHitDeadMaterial"};
285  for (unsigned int j=0; j<3; j++) {
286  if (!m_calib) continue;
288  if (evtStore()->retrieve(iterator, LArCalibKey[j]) == StatusCode::SUCCESS) {
289  //Not tested
290  for (auto hit_i : *iterator) {
291  GeoCaloCalibHit geoHit(*hit_i, LArCalibKey[j], caloMgr);
292  if (!geoHit) continue;
293  const CaloDetDescrElement* Element = geoHit.getDetDescrElement();
294  double eta = Element->eta();
295  double phi = Element->phi();
296  double radius = Element->r();
297  double z = Element->z();
298  double emEnergy = geoHit.energyEM();
299  double nonEmEnergy = geoHit.energyNonEM();
300  double invEnergy = geoHit.energyInvisible();
301  double escEnergy = geoHit.energyEscaped();
302  double totEnergy = geoHit.energyTotal();
303  double particleID = HepMC::barcode(*hit_i);
304 
305  m_h_calib_eta->Fill(eta);
306  m_h_calib_phi->Fill(phi);
307  m_h_calib_rz->Fill(z,radius);
308  m_h_calib_etaphi->Fill(eta,phi);
309  m_h_calib_eEM->Fill(emEnergy);
310  m_h_calib_eNonEM->Fill(nonEmEnergy);
311  m_h_calib_eInv->Fill(invEnergy);
312  m_h_calib_eEsc->Fill(escEnergy);
313  m_h_calib_eTot->Fill(totEnergy);
314  m_h_calib_eTotpartID->Fill(particleID, totEnergy);
315 
316  m_calib_eta->push_back(eta);
317  m_calib_phi->push_back(phi);
318  m_calib_radius->push_back(radius);
319  m_calib_z->push_back(z);
320  m_calib_eEM->push_back(emEnergy);
321  m_calib_eNonEM->push_back(nonEmEnergy);
322  m_calib_eInv->push_back(invEnergy);
323  m_calib_eEsc->push_back(escEnergy);
324  m_calib_eTot->push_back(totEnergy);
325  m_calib_partID->push_back(particleID);
326  }
327  }
328  }
329  } // DoLAr
330 
331 
332  if (m_tree) m_tree->Fill();
333 
334  return StatusCode::SUCCESS;
335 }

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< Algorithm > >::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

◆ extraOutputDeps()

const DataObjIDColl & AthAlgorithm::extraOutputDeps ( ) const
overridevirtualinherited

Return the list of extra output dependencies.

This list is extended to include symlinks implied by inheritance relations.

Definition at line 50 of file AthAlgorithm.cxx.

51 {
52  // If we didn't find any symlinks to add, just return the collection
53  // from the base class. Otherwise, return the extended collection.
54  if (!m_extendedExtraObjects.empty()) {
56  }
57  return Algorithm::extraOutputDeps();
58 }

◆ initialize()

StatusCode CaloHitAnalysis::initialize ( )
overridevirtual

now add branches and leaves to the tree

Definition at line 39 of file CaloHitAnalysis.cxx.

39  {
40  ATH_MSG_DEBUG( "Initializing CaloHitAnalysis" );
41  if (m_useTile) {
42 
45  }
46  // Grab the Ntuple and histogramming service for the tree
47  CHECK( m_thistSvc.retrieve() );
48 
50 
51  m_h_cell_e = new TH1D("h_Calo_cell_e", "cell_e", 100,0.,500.);
52  m_h_cell_e->StatOverflows();
53  CHECK(m_thistSvc->regHist( m_path+m_h_cell_e->GetName(), m_h_cell_e));
54 
55  m_h_cell_eta = new TH1D("h_Calo_cell_eta", "cell_eta", 50,-5.,5.);
56  m_h_cell_eta->StatOverflows();
57  CHECK(m_thistSvc->regHist( m_path+m_h_cell_eta->GetName(), m_h_cell_eta));
58 
59  m_h_cell_phi = new TH1D("h_Calo_cell_phi", "cell_phi", 50,-3.1416,3.1416);
60  m_h_cell_phi->StatOverflows();
61  CHECK(m_thistSvc->regHist( m_path+m_h_cell_phi->GetName(), m_h_cell_phi));
62 
63  m_h_cell_radius = new TH1D("h_Calo_cell_radius", "cell_radius", 100, 0., 6000.);
64  m_h_cell_radius->StatOverflows();
65  CHECK(m_thistSvc->regHist( m_path+m_h_cell_radius->GetName(), m_h_cell_radius));
66 
67  m_h_xy = new TH2F("h_Calo_xy", "xy", 100,-4000,4000,100, -4000, 4000);
68  m_h_xy->StatOverflows();
69  CHECK(m_thistSvc->regHist( m_path+m_h_xy->GetName(), m_h_xy));
70 
71  m_h_zr = new TH2D("h_Calo_zr", "zr", 100,-7000.,7000.,100, 0., 6000.);
72  m_h_zr->StatOverflows();
73  CHECK(m_thistSvc->regHist( m_path+m_h_zr->GetName(), m_h_zr));
74 
75  m_h_etaphi = new TH2D("h_Calo_etaphi", "eta_phi", 50,-5.,5.,50, -3.1416, 3.1416);
76  m_h_etaphi->StatOverflows();
77  CHECK(m_thistSvc->regHist( m_path+m_h_etaphi->GetName(), m_h_etaphi));
78 
79  //These histograms will be filled only if expert mode is set on
80  m_h_time_e = new TH2D("h_Calo_time_e", "energy vs time", 100, 0,50, 100,0,500);
81  m_h_time_e->StatOverflows();
82 
83  m_h_eta_e = new TH2D("h_Calo_eta_e", "energy vs eta", 50, -5,5, 100,0,500);
84  m_h_eta_e->StatOverflows();
85 
86  m_h_phi_e = new TH2D("h_Calo_phi_e", "energy vs phi", 50, -3.1416,3.1416, 100,0,500);
87  m_h_phi_e->StatOverflows();
88 
89  m_h_r_e = new TH2D("h_Calo_r_e", "energy vs radius", 100, 0,6000, 100,0,500);
90  m_h_r_e->StatOverflows();
91 
92  if (m_expert) {
93  CHECK(m_thistSvc->regHist(m_path + m_h_time_e->GetName(), m_h_time_e));
94  CHECK(m_thistSvc->regHist(m_path + m_h_eta_e->GetName(), m_h_eta_e));
95  CHECK(m_thistSvc->regHist(m_path + m_h_phi_e->GetName(), m_h_phi_e));
96  CHECK(m_thistSvc->regHist(m_path + m_h_r_e->GetName(), m_h_r_e));
97  }
98 
99  //Histograms for calibrated hits
100  m_h_calib_eta = new TH1D("h_calib_eta", "calib. hits eta", 50,-5,5);
101  m_h_calib_eta->StatOverflows();
102 
103  m_h_calib_phi = new TH1D("h_calib_phi", "calib. hits phi", 50,-3.1416,3.1416);
104  m_h_calib_phi->StatOverflows();
105 
106  m_h_calib_rz = new TH2D("h_calib_rz", "calib. hits r vs z", 100,-7000,7000,1000, 0,6000);
107  m_h_calib_rz->StatOverflows();
108 
109  m_h_calib_etaphi = new TH2D("h_calib_etaphi", "calib. hits eta vs phi",50,-5.,5., 50,-3.1416,3.1416);
110  m_h_calib_etaphi->StatOverflows();
111 
112  m_h_calib_eEM = new TH1D("h_calib_eEM", "calib. hits EM energy", 100,0,100);
113  m_h_calib_eEM->StatOverflows();
114 
115  m_h_calib_eNonEM = new TH1D("h_calib_nonEM", "calib. hits non EM energy", 100,0,100);
116  m_h_calib_eNonEM->StatOverflows();
117 
118  m_h_calib_eInv = new TH1D("h_calib_eInv", "calib. hits invisible energy", 100,0,100);
119  m_h_calib_eInv->StatOverflows();
120 
121  m_h_calib_eEsc = new TH1D("h_calib_eEsc", "calib. hits escaped energy", 100,0,100);
122  m_h_calib_eEsc->StatOverflows();
123 
124  m_h_calib_eTot = new TH1D("h_calib_eTot", "calib. hits energy", 100,0,100);
125  m_h_calib_eTot->StatOverflows();
126 
127  m_h_calib_eTotpartID = new TH1D("h_calib_eTotpartID", "calib. hits partID weighted with energy",600,0,300000);
128  m_h_calib_eTotpartID->StatOverflows();
129 
130  if (m_calib) {
131  CHECK(m_thistSvc->regHist(m_path + m_h_calib_eta->GetName(), m_h_calib_eta));
132  CHECK(m_thistSvc->regHist(m_path + m_h_calib_phi->GetName(), m_h_calib_phi));
133  CHECK(m_thistSvc->regHist(m_path + m_h_calib_rz->GetName(), m_h_calib_rz));
134  CHECK(m_thistSvc->regHist(m_path + m_h_calib_etaphi->GetName(), m_h_calib_etaphi));
135  CHECK(m_thistSvc->regHist(m_path + m_h_calib_eEM->GetName(), m_h_calib_eEM));
136  CHECK(m_thistSvc->regHist(m_path + m_h_calib_eNonEM->GetName(), m_h_calib_eNonEM));
137  CHECK(m_thistSvc->regHist(m_path + m_h_calib_eInv->GetName(), m_h_calib_eInv));
138  CHECK(m_thistSvc->regHist(m_path + m_h_calib_eEsc->GetName(), m_h_calib_eEsc));
139  CHECK(m_thistSvc->regHist(m_path + m_h_calib_eTot->GetName(), m_h_calib_eTot));
141  }
142 
144  m_tree = new TTree("Calo", "Calo");
145  std::string fullNtupleName = "/" + m_ntupleFileName + "/";
146  CHECK( m_thistSvc->regTree(fullNtupleName, m_tree) );
147 
148  if (m_tree) {
149  m_tree->Branch("CellEta", &m_cell_eta);
150  m_tree->Branch("CellPhi", &m_cell_phi);
151  m_tree->Branch("CellX", &m_cell_x);
152  m_tree->Branch("CellY", &m_cell_y);
153  m_tree->Branch("CellZ", &m_cell_z);
154  m_tree->Branch("CellE", &m_cell_e);
155  m_tree->Branch("CellRadius", &m_cell_radius);
156  m_tree->Branch("Time", &m_time);
157  m_tree->Branch("CalibEta", &m_calib_eta);
158  m_tree->Branch("CalibPhi", &m_calib_phi);
159  m_tree->Branch("CalibRadius", &m_calib_radius);
160  m_tree->Branch("CalibZ", &m_calib_z);
161  m_tree->Branch("Calib_eEM", &m_calib_eEM);
162  m_tree->Branch("Calib_eNonEM", &m_calib_eNonEM);
163  m_tree->Branch("Calib_eInv", &m_calib_eInv);
164  m_tree->Branch("Calib_eEsc", &m_calib_eEsc);
165  m_tree->Branch("Calib_eTot", &m_calib_eTot);
166  m_tree->Branch("Calib_partID", &m_calib_partID);
167  }
168  else {
169  ATH_MSG_ERROR( "No tree found!" );
170  }
171 
172  return StatusCode::SUCCESS;
173 }

◆ inputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< Algorithm > >::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.

◆ msg() [1/2]

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

Definition at line 24 of file AthCommonMsg.h.

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

◆ msg() [2/2]

MsgStream& AthCommonMsg< Algorithm >::msg ( const MSG::Level  lvl) const
inlineinherited

Definition at line 27 of file AthCommonMsg.h.

27  {
28  return this->msgStream(lvl);
29  }

◆ msgLvl()

bool AthCommonMsg< Algorithm >::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< Algorithm > >::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.

◆ 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< Algorithm > >::renounce ( T &  h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381  {
382  h.renounce();
383  PBASE::renounce (h);
384  }

◆ renounceArray()

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

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364  {
365  handlesArray.renounce();
366  }

◆ sysInitialize()

StatusCode AthAlgorithm::sysInitialize ( )
overridevirtualinherited

Override sysInitialize.

Override sysInitialize from the base class.

Loop through all output handles, and if they're WriteCondHandles, automatically register them and this Algorithm with the CondSvc

Scan through all outputHandles, and if they're WriteCondHandles, register them with the CondSvc

Reimplemented from AthCommonDataStore< AthCommonMsg< Algorithm > >.

Reimplemented in AthAnalysisAlgorithm, AthFilterAlgorithm, PyAthena::Alg, and AthHistogramAlgorithm.

Definition at line 66 of file AthAlgorithm.cxx.

66  {
68 
69  if (sc.isFailure()) {
70  return sc;
71  }
72  ServiceHandle<ICondSvc> cs("CondSvc",name());
73  for (auto h : outputHandles()) {
74  if (h->isCondition() && h->mode() == Gaudi::DataHandle::Writer) {
75  // do this inside the loop so we don't create the CondSvc until needed
76  if ( cs.retrieve().isFailure() ) {
77  ATH_MSG_WARNING("no CondSvc found: won't autoreg WriteCondHandles");
78  return StatusCode::SUCCESS;
79  }
80  if (cs->regHandle(this,*h).isFailure()) {
81  sc = StatusCode::FAILURE;
82  ATH_MSG_ERROR("unable to register WriteCondHandle " << h->fullKey()
83  << " with CondSvc");
84  }
85  }
86  }
87  return sc;
88 }

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< Algorithm > >::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< Algorithm > >::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) {
312  std::vector<SG::VarHandleKey*> keys = a->keys();
313  for (auto k : keys) {
314  k->setOwner(this);
315  }
316  }
317  }

Member Data Documentation

◆ m_calib

BooleanProperty CaloHitAnalysis::m_calib {this, "UseCalibHits", false}
private

Definition at line 85 of file CaloHitAnalysis.h.

◆ m_calib_eEM

std::vector<float>* CaloHitAnalysis::m_calib_eEM {}
private

Definition at line 77 of file CaloHitAnalysis.h.

◆ m_calib_eEsc

std::vector<float>* CaloHitAnalysis::m_calib_eEsc {}
private

Definition at line 80 of file CaloHitAnalysis.h.

◆ m_calib_eInv

std::vector<float>* CaloHitAnalysis::m_calib_eInv {}
private

Definition at line 79 of file CaloHitAnalysis.h.

◆ m_calib_eNonEM

std::vector<float>* CaloHitAnalysis::m_calib_eNonEM {}
private

Definition at line 78 of file CaloHitAnalysis.h.

◆ m_calib_eta

std::vector<float>* CaloHitAnalysis::m_calib_eta {}
private

Definition at line 73 of file CaloHitAnalysis.h.

◆ m_calib_eTot

std::vector<float>* CaloHitAnalysis::m_calib_eTot {}
private

Definition at line 81 of file CaloHitAnalysis.h.

◆ m_calib_partID

std::vector<float>* CaloHitAnalysis::m_calib_partID {}
private

Definition at line 82 of file CaloHitAnalysis.h.

◆ m_calib_phi

std::vector<float>* CaloHitAnalysis::m_calib_phi {}
private

Definition at line 74 of file CaloHitAnalysis.h.

◆ m_calib_radius

std::vector<float>* CaloHitAnalysis::m_calib_radius {}
private

Definition at line 75 of file CaloHitAnalysis.h.

◆ m_calib_z

std::vector<float>* CaloHitAnalysis::m_calib_z {}
private

Definition at line 76 of file CaloHitAnalysis.h.

◆ m_caloMgrKey

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

Definition at line 93 of file CaloHitAnalysis.h.

◆ m_cell_e

std::vector<float>* CaloHitAnalysis::m_cell_e {}
private

Definition at line 70 of file CaloHitAnalysis.h.

◆ m_cell_eta

std::vector<float>* CaloHitAnalysis::m_cell_eta {}
private

Definition at line 65 of file CaloHitAnalysis.h.

◆ m_cell_phi

std::vector<float>* CaloHitAnalysis::m_cell_phi {}
private

Definition at line 66 of file CaloHitAnalysis.h.

◆ m_cell_radius

std::vector<float>* CaloHitAnalysis::m_cell_radius {}
private

Definition at line 71 of file CaloHitAnalysis.h.

◆ m_cell_x

std::vector<float>* CaloHitAnalysis::m_cell_x {}
private

Definition at line 67 of file CaloHitAnalysis.h.

◆ m_cell_y

std::vector<float>* CaloHitAnalysis::m_cell_y {}
private

Definition at line 68 of file CaloHitAnalysis.h.

◆ m_cell_z

std::vector<float>* CaloHitAnalysis::m_cell_z {}
private

Definition at line 69 of file CaloHitAnalysis.h.

◆ m_detStore

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

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_evtStore

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

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_expert

BooleanProperty CaloHitAnalysis::m_expert {this, "ExpertMode", false}
private

Definition at line 84 of file CaloHitAnalysis.h.

◆ m_extendedExtraObjects

DataObjIDColl AthAlgorithm::m_extendedExtraObjects
privateinherited

Definition at line 79 of file AthAlgorithm.h.

◆ m_h_calib_eEM

TH1* CaloHitAnalysis::m_h_calib_eEM {}
private

Definition at line 55 of file CaloHitAnalysis.h.

◆ m_h_calib_eEsc

TH1* CaloHitAnalysis::m_h_calib_eEsc {}
private

Definition at line 58 of file CaloHitAnalysis.h.

◆ m_h_calib_eInv

TH1* CaloHitAnalysis::m_h_calib_eInv {}
private

Definition at line 57 of file CaloHitAnalysis.h.

◆ m_h_calib_eNonEM

TH1* CaloHitAnalysis::m_h_calib_eNonEM {}
private

Definition at line 56 of file CaloHitAnalysis.h.

◆ m_h_calib_eta

TH1* CaloHitAnalysis::m_h_calib_eta {}
private

Definition at line 51 of file CaloHitAnalysis.h.

◆ m_h_calib_etaphi

TH2* CaloHitAnalysis::m_h_calib_etaphi {}
private

Definition at line 54 of file CaloHitAnalysis.h.

◆ m_h_calib_eTot

TH1* CaloHitAnalysis::m_h_calib_eTot {}
private

Definition at line 59 of file CaloHitAnalysis.h.

◆ m_h_calib_eTotpartID

TH1* CaloHitAnalysis::m_h_calib_eTotpartID {}
private

Definition at line 60 of file CaloHitAnalysis.h.

◆ m_h_calib_phi

TH1* CaloHitAnalysis::m_h_calib_phi {}
private

Definition at line 52 of file CaloHitAnalysis.h.

◆ m_h_calib_rz

TH2* CaloHitAnalysis::m_h_calib_rz {}
private

Definition at line 53 of file CaloHitAnalysis.h.

◆ m_h_cell_e

TH1* CaloHitAnalysis::m_h_cell_e {}
private

Definition at line 42 of file CaloHitAnalysis.h.

◆ m_h_cell_eta

TH1* CaloHitAnalysis::m_h_cell_eta {}
private

Simple variables by Ketevi.

Definition at line 40 of file CaloHitAnalysis.h.

◆ m_h_cell_phi

TH1* CaloHitAnalysis::m_h_cell_phi {}
private

Definition at line 41 of file CaloHitAnalysis.h.

◆ m_h_cell_radius

TH1* CaloHitAnalysis::m_h_cell_radius {}
private

Definition at line 43 of file CaloHitAnalysis.h.

◆ m_h_eta_e

TH2* CaloHitAnalysis::m_h_eta_e {}
private

Definition at line 48 of file CaloHitAnalysis.h.

◆ m_h_etaphi

TH2* CaloHitAnalysis::m_h_etaphi {}
private

Definition at line 46 of file CaloHitAnalysis.h.

◆ m_h_phi_e

TH2* CaloHitAnalysis::m_h_phi_e {}
private

Definition at line 49 of file CaloHitAnalysis.h.

◆ m_h_r_e

TH2* CaloHitAnalysis::m_h_r_e {}
private

Definition at line 50 of file CaloHitAnalysis.h.

◆ m_h_time_e

TH2* CaloHitAnalysis::m_h_time_e {}
private

Definition at line 47 of file CaloHitAnalysis.h.

◆ m_h_xy

TH2* CaloHitAnalysis::m_h_xy {}
private

Definition at line 44 of file CaloHitAnalysis.h.

◆ m_h_zr

TH2* CaloHitAnalysis::m_h_zr {}
private

Definition at line 45 of file CaloHitAnalysis.h.

◆ m_ntupleFileName

StringProperty CaloHitAnalysis::m_ntupleFileName {this, "NtupleFileName", "/CaloHitAnalysis/"}
private

Definition at line 90 of file CaloHitAnalysis.h.

◆ m_path

StringProperty CaloHitAnalysis::m_path {this, "HistPath", "/CaloHitAnalysis/"}
private

Definition at line 91 of file CaloHitAnalysis.h.

◆ m_thistSvc

ServiceHandle<ITHistSvc> CaloHitAnalysis::m_thistSvc {this, "THitSvc", "THistSvc"}
private

Definition at line 92 of file CaloHitAnalysis.h.

◆ m_tileID

const TileID* CaloHitAnalysis::m_tileID {}
private

Definition at line 62 of file CaloHitAnalysis.h.

◆ m_tileMgr

const TileDetDescrManager* CaloHitAnalysis::m_tileMgr {}
private

Definition at line 63 of file CaloHitAnalysis.h.

◆ m_time

std::vector<float>* CaloHitAnalysis::m_time {}
private

Definition at line 72 of file CaloHitAnalysis.h.

◆ m_tree

TTree* CaloHitAnalysis::m_tree {}
private

Definition at line 89 of file CaloHitAnalysis.h.

◆ m_useLAr

BooleanProperty CaloHitAnalysis::m_useLAr {this, "UseLAr", true}
private

Definition at line 86 of file CaloHitAnalysis.h.

◆ m_useTile

BooleanProperty CaloHitAnalysis::m_useTile {this, "UseTile", true}
private

Definition at line 87 of file CaloHitAnalysis.h.

◆ m_varHandleArraysDeclared

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

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

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

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files:
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
xAOD::iterator
JetConstituentVector::iterator iterator
Definition: JetConstituentVector.cxx:68
Tile_Base_ID::is_tile_aux
bool is_tile_aux(const Identifier &id) const
Definition: Tile_Base_ID.cxx:232
CaloCalibrationHitContainer
Definition: CaloCalibrationHitContainer.h:25
CaloHitAnalysis::m_h_calib_eTotpartID
TH1 * m_h_calib_eTotpartID
Definition: CaloHitAnalysis.h:60
xAOD::identify
const Identifier & identify(const UncalibratedMeasurement *meas)
Returns the associated identifier from the muon measurement.
Definition: MuonSpectrometer/MuonPhaseII/Event/xAOD/xAODMuonPrepData/Root/UtilFunctions.cxx:61
CaloHitAnalysis::m_h_time_e
TH2 * m_h_time_e
Definition: CaloHitAnalysis.h:47
CaloHitAnalysis::m_calib_z
std::vector< float > * m_calib_z
Definition: CaloHitAnalysis.h:76
GeoCaloCalibHit
Adaptor for CaloCalibHits.
Definition: GeoCaloCalibHit.h:26
CaloHitAnalysis::m_calib_partID
std::vector< float > * m_calib_partID
Definition: CaloHitAnalysis.h:82
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:67
SG::ReadCondHandle
Definition: ReadCondHandle.h:44
CaloDetDescrElement::y
float y() const
cell y
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:365
CaloHitAnalysis::m_h_cell_e
TH1 * m_h_cell_e
Definition: CaloHitAnalysis.h:42
CaloHitAnalysis::m_h_cell_radius
TH1 * m_h_cell_radius
Definition: CaloHitAnalysis.h:43
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:83
AthCommonDataStore::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
CaloHitAnalysis::m_h_calib_eta
TH1 * m_h_calib_eta
Definition: CaloHitAnalysis.h:51
CaloDetDescrElement
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:66
CaloHitAnalysis::m_calib_phi
std::vector< float > * m_calib_phi
Definition: CaloHitAnalysis.h:74
CaloHitAnalysis::m_cell_y
std::vector< float > * m_cell_y
Definition: CaloHitAnalysis.h:68
CaloDetDescrManager_Base::get_element
const CaloDetDescrElement * get_element(const Identifier &cellId) const
get element by its identifier
Definition: CaloDetDescrManager.cxx:159
AtlasHitsVector
Definition: AtlasHitsVector.h:33
CaloHitAnalysis::m_h_calib_eEsc
TH1 * m_h_calib_eEsc
Definition: CaloHitAnalysis.h:58
CaloHitAnalysis::m_cell_radius
std::vector< float > * m_cell_radius
Definition: CaloHitAnalysis.h:71
CaloHitAnalysis::m_time
std::vector< float > * m_time
Definition: CaloHitAnalysis.h:72
CaloHitAnalysis::m_h_calib_eInv
TH1 * m_h_calib_eInv
Definition: CaloHitAnalysis.h:57
CaloHitAnalysis::m_calib_radius
std::vector< float > * m_calib_radius
Definition: CaloHitAnalysis.h:75
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_evtStore
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
Definition: AthCommonDataStore.h:390
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_vhka
std::vector< SG::VarHandleKeyArray * > m_vhka
Definition: AthCommonDataStore.h:398
LArHitContainer
Hit collection.
Definition: LArHitContainer.h:26
CaloHitAnalysis::m_h_calib_etaphi
TH2 * m_h_calib_etaphi
Definition: CaloHitAnalysis.h:54
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
CaloHitAnalysis::m_calib_eTot
std::vector< float > * m_calib_eTot
Definition: CaloHitAnalysis.h:81
python.TrigEgammaMonitorHelper.TH2F
def TH2F(name, title, nxbins, bins_par2, bins_par3, bins_par4, bins_par5=None, bins_par6=None, path='', **kwargs)
Definition: TrigEgammaMonitorHelper.py:45
x
#define x
CaloHitAnalysis::m_caloMgrKey
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
Definition: CaloHitAnalysis.h:93
CaloHitAnalysis::m_thistSvc
ServiceHandle< ITHistSvc > m_thistSvc
Definition: CaloHitAnalysis.h:92
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
CaloHitAnalysis::m_calib_eEsc
std::vector< float > * m_calib_eEsc
Definition: CaloHitAnalysis.h:80
AthCommonDataStore< AthCommonMsg< Algorithm > >::detStore
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:95
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
CaloHitAnalysis::m_tileMgr
const TileDetDescrManager * m_tileMgr
Definition: CaloHitAnalysis.h:63
IDTPMcnv.htype
htype
Definition: IDTPMcnv.py:29
CaloHitAnalysis::m_h_calib_eNonEM
TH1 * m_h_calib_eNonEM
Definition: CaloHitAnalysis.h:56
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
CaloHitAnalysis::m_h_calib_rz
TH2 * m_h_calib_rz
Definition: CaloHitAnalysis.h:53
CaloHitAnalysis::m_calib_eInv
std::vector< float > * m_calib_eInv
Definition: CaloHitAnalysis.h:79
AthCommonDataStore< AthCommonMsg< Algorithm > >::evtStore
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:85
CaloHitAnalysis::m_useLAr
BooleanProperty m_useLAr
Definition: CaloHitAnalysis.h:86
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
CaloHitAnalysis::m_path
StringProperty m_path
Definition: CaloHitAnalysis.h:91
AthCommonDataStore
Definition: AthCommonDataStore.h:52
AthAlgorithm::sysInitialize
virtual StatusCode sysInitialize() override
Override sysInitialize.
Definition: AthAlgorithm.cxx:66
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
ParticleGun_FastCalo_ChargeFlip_Config.energy
energy
Definition: ParticleGun_FastCalo_ChargeFlip_Config.py:78
AthCommonDataStore< AthCommonMsg< Algorithm > >::outputHandles
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
lumiFormat.i
int i
Definition: lumiFormat.py:85
z
#define z
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
CaloHitAnalysis::m_h_etaphi
TH2 * m_h_etaphi
Definition: CaloHitAnalysis.h:46
HepMC::barcode
int barcode(const T *p)
Definition: Barcode.h:16
CaloHitAnalysis::m_calib_eNonEM
std::vector< float > * m_calib_eNonEM
Definition: CaloHitAnalysis.h:78
CaloHitAnalysis::m_h_cell_eta
TH1 * m_h_cell_eta
Simple variables by Ketevi.
Definition: CaloHitAnalysis.h:40
CaloHitAnalysis::m_h_eta_e
TH2 * m_h_eta_e
Definition: CaloHitAnalysis.h:48
CaloHitAnalysis::m_useTile
BooleanProperty m_useTile
Definition: CaloHitAnalysis.h:87
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
CHECK
#define CHECK(...)
Evaluate an expression and check for errors.
Definition: Control/AthenaKernel/AthenaKernel/errorcheck.h:422
CaloHitAnalysis::m_h_cell_phi
TH1 * m_h_cell_phi
Definition: CaloHitAnalysis.h:41
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
CaloHitAnalysis::m_ntupleFileName
StringProperty m_ntupleFileName
Definition: CaloHitAnalysis.h:90
CaloHitAnalysis::m_cell_z
std::vector< float > * m_cell_z
Definition: CaloHitAnalysis.h:69
TileDetDescrManager::get_cell_element
CaloDetDescrElement * get_cell_element(unsigned int cell_hash) const
Definition: TileDetDescrManager.h:156
SG::VarHandleKeyArray::renounce
virtual void renounce()=0
SG::HandleClassifier::type
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
Definition: HandleClassifier.h:54
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
CaloHitAnalysis::m_calib_eEM
std::vector< float > * m_calib_eEM
Definition: CaloHitAnalysis.h:77
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
CaloHitAnalysis::m_cell_e
std::vector< float > * m_cell_e
Definition: CaloHitAnalysis.h:70
SG::CondHandleKey::initialize
StatusCode initialize(bool used=true)
CaloHitAnalysis::m_h_xy
TH2 * m_h_xy
Definition: CaloHitAnalysis.h:44
CaloHitAnalysis::m_h_calib_eEM
TH1 * m_h_calib_eEM
Definition: CaloHitAnalysis.h:55
CaloHitAnalysis::m_tree
TTree * m_tree
Definition: CaloHitAnalysis.h:89
ParticleGun_SamplingFraction.radius
radius
Definition: ParticleGun_SamplingFraction.py:96
CaloDetDescrElement::x
float x() const
cell x
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:363
AthAlgorithm::m_extendedExtraObjects
DataObjIDColl m_extendedExtraObjects
Definition: AthAlgorithm.h:79
a
TList * a
Definition: liststreamerinfos.cxx:10
y
#define y
h
CaloDetDescrManager
This class provides the client interface for accessing the detector description information common to...
Definition: CaloDetDescrManager.h:473
CaloHitAnalysis::m_h_calib_eTot
TH1 * m_h_calib_eTot
Definition: CaloHitAnalysis.h:59
CaloSwCorrections.time
def time(flags, cells_name, *args, **kw)
Definition: CaloSwCorrections.py:242
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
CaloDetDescrElement::z
float z() const
cell z
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:367
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:623
CaloHitAnalysis::m_expert
BooleanProperty m_expert
Definition: CaloHitAnalysis.h:84
CaloDetDescrElement::eta
float eta() const
cell eta
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:344
AthAlgorithm::AthAlgorithm
AthAlgorithm()
Default constructor:
CaloHitAnalysis::m_cell_eta
std::vector< float > * m_cell_eta
Definition: CaloHitAnalysis.h:65
CaloHitAnalysis::m_h_r_e
TH2 * m_h_r_e
Definition: CaloHitAnalysis.h:50
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:798
CaloDetDescrElement::phi
float phi() const
cell phi
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:346
CaloHitAnalysis::m_calib_eta
std::vector< float > * m_calib_eta
Definition: CaloHitAnalysis.h:73
LHEF::Writer
Pythia8::Writer Writer
Definition: Prophecy4fMerger.cxx:12
CaloHitAnalysis::m_h_phi_e
TH2 * m_h_phi_e
Definition: CaloHitAnalysis.h:49
CaloDetDescrElement::r
float r() const
cell r
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:348
Tile_Base_ID::cell_id
Identifier cell_id(const Identifier &any_id) const
Definition: Tile_Base_ID.cxx:581
CaloHitAnalysis::m_cell_phi
std::vector< float > * m_cell_phi
Definition: CaloHitAnalysis.h:66
CaloHitAnalysis::m_calib
BooleanProperty m_calib
Definition: CaloHitAnalysis.h:85
CaloHitAnalysis::m_h_calib_phi
TH1 * m_h_calib_phi
Definition: CaloHitAnalysis.h:52
AthCommonDataStore::declareGaudiProperty
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition: AthCommonDataStore.h:156
CaloHitAnalysis::m_tileID
const TileID * m_tileID
Definition: CaloHitAnalysis.h:62
CaloHitAnalysis::m_h_zr
TH2 * m_h_zr
Definition: CaloHitAnalysis.h:45
CaloHitAnalysis::m_cell_x
std::vector< float > * m_cell_x
Definition: CaloHitAnalysis.h:67
fitman.k
k
Definition: fitman.py:528
ServiceHandle< ICondSvc >
Identifier
Definition: IdentifierFieldParser.cxx:14