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

#include <MMHitAnalysis.h>

Inheritance diagram for MMHitAnalysis:
Collaboration diagram for MMHitAnalysis:

Public Member Functions

 MMHitAnalysis (const std::string &name, ISvcLocator *pSvcLocator)
 
 ~MMHitAnalysis ()
 
virtual StatusCode initialize ()
 
virtual StatusCode execute ()
 
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

TH2 * m_h_S1_xy_A
 Some variables. More...
 
TH2 * m_h_S1_rz_A
 
TH1 * m_h_S1_r_A
 
TH2 * m_h_S1_xy_C
 
TH2 * m_h_S1_rz_C
 
TH1 * m_h_S1_r_C
 
TH2 * m_h_S2_xy_A
 
TH2 * m_h_S2_rz_A
 
TH1 * m_h_S2_r_A
 
TH2 * m_h_S2_xy_C
 
TH2 * m_h_S2_rz_C
 
TH1 * m_h_S2_r_C
 
TH2 * m_h_S_xy_A
 
TH2 * m_h_S_xy_C
 
TH2 * m_h_S_rz_A
 
TH2 * m_h_S_rz_C
 
TH2 * m_h_xy_A
 
TH2 * m_h_xy_C
 
TH2 * m_h_rz_A
 
TH2 * m_h_rz_C
 
TH2 * m_h_L1_xy_A
 
TH2 * m_h_L1_rz_A
 
TH1 * m_h_L1_r_A
 
TH2 * m_h_L1_xy_C
 
TH2 * m_h_L1_rz_C
 
TH1 * m_h_L1_r_C
 
TH2 * m_h_L2_xy_A
 
TH2 * m_h_L2_rz_A
 
TH1 * m_h_L2_r_A
 
TH2 * m_h_L2_xy_C
 
TH2 * m_h_L2_rz_C
 
TH1 * m_h_L2_r_C
 
TH2 * m_h_L_xy_A
 
TH2 * m_h_L_xy_C
 
TH2 * m_h_L_rz_A
 
TH2 * m_h_L_rz_C
 
std::vector< float > * m_hits_x
 
TTree * m_tree = nullptr
 
std::string m_ntupleFileName
 
std::string m_path
 
ServiceHandle< ITHistSvc > m_thistSvc
 
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 25 of file MMHitAnalysis.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

◆ MMHitAnalysis()

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

Definition at line 29 of file MMHitAnalysis.cxx.

30  : AthAlgorithm(name, pSvcLocator)
31  , m_h_S1_xy_A(0)
32  , m_h_S1_rz_A(0)
33  , m_h_S1_r_A(0)
34  , m_h_S1_xy_C(0)
35  , m_h_S1_rz_C(0)
36  , m_h_S1_r_C(0)
37  , m_h_S2_xy_A(0)
38  , m_h_S2_rz_A(0)
39  , m_h_S2_r_A(0)
40  , m_h_S2_xy_C(0)
41  , m_h_S2_rz_C(0)
42  , m_h_S2_r_C(0)
43  , m_h_S_xy_A(0)
44  , m_h_S_xy_C(0)
45  , m_h_S_rz_A(0)
46  , m_h_S_rz_C(0)
47  , m_h_xy_A(0)
48  , m_h_xy_C(0)
49  , m_h_rz_A(0)
50  , m_h_rz_C(0)
51  , m_h_L1_xy_A(0)
52  , m_h_L1_rz_A(0)
53  , m_h_L1_r_A(0)
54  , m_h_L1_xy_C(0)
55  , m_h_L1_rz_C(0)
56  , m_h_L1_r_C(0)
57  , m_h_L2_xy_A(0)
58  , m_h_L2_rz_A(0)
59  , m_h_L2_r_A(0)
60  , m_h_L2_xy_C(0)
61  , m_h_L2_rz_C(0)
62  , m_h_L2_r_C(0)
63  , m_h_L_xy_A(0)
64  , m_h_L_xy_C(0)
65  , m_h_L_rz_A(0)
66  , m_h_L_rz_C(0)
67  , m_hits_x(0)
68  , m_ntupleFileName("MMHitAnalysis/ntuple/")
69  , m_path("/MMHitAnalysis/histos/")
70  , m_thistSvc("THistSvc", name)
71 {
72  declareProperty("NtupleFileName", m_ntupleFileName);
73  declareProperty("HistPath", m_path);
74 
75 }

◆ ~MMHitAnalysis()

MMHitAnalysis::~MMHitAnalysis ( )
inline

Definition at line 30 of file MMHitAnalysis.h.

30 {}

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 MMHitAnalysis::execute ( )
virtual

Definition at line 261 of file MMHitAnalysis.cxx.

261  {
262  ATH_MSG_DEBUG( "In MMHitAnalysis::execute()" );
263 
264  m_hits_x->clear();
265 
266  const MMSimHitCollection* p_collection;;
267  if ((evtStore()->retrieve(p_collection,"MM_Hits"))==StatusCode::SUCCESS) {
268  for (MMSimHitCollection::const_iterator i_hit = p_collection->begin(); i_hit != p_collection->end(); ++i_hit){
269 
270  Amg::Vector3D p = (*i_hit).globalPosition();
271  //Get station names and make plots for each sector
273  int simId = (*i_hit).MMId();
274  std::string sim_stationName = hitHelper->GetStationName(simId);
275  int sim_side = hitHelper->GetSide(simId);
276  //Declare station name strings
277  static const std::string s_m1s1("M1S1");
278  static const std::string s_m2s1("M2S1");
279  static const std::string s_m1s2("M1S2");
280  static const std::string s_m2s2("M2S2");
281  static const std::string s_m1l1("M1L1");
282  static const std::string s_m2l1("M2L1");
283  static const std::string s_m1l2("M1L2");
284  static const std::string s_m2l2("M2L2");
285 
286  //Small sectors
287  /*-------------------------Wedge 1 Fill histos begin-------------------------*/
288  //M1S1 (Note: M1->Module 1, S1->Small sector wedge 1)
289 
290  //Small sectors at +ve Z (A-Side)
291  if ((sim_stationName==s_m1s1 || sim_stationName==s_m2s1) && sim_side==1){
292  double r_S1_A = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
293  m_h_S1_xy_A->Fill(p.x(),p.y());
294  m_h_S1_rz_A->Fill(p.z(), r_S1_A);
295  m_h_S1_r_A->Fill(r_S1_A);
296  }
297 
298  //Small sectors at -ve Z (C-Side)
299  if ((sim_stationName==s_m1s1 || sim_stationName==s_m2s1) && sim_side==-1){
300  double r_S1_C = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
301  m_h_S1_xy_C->Fill(p.x(),p.y());
302  m_h_S1_rz_C->Fill(p.z(), r_S1_C);
303  m_h_S1_r_C->Fill(r_S1_C);
304  }
305 
306  /*------------------------Wedge 1 Fill histos end---------------------------*/
307 
308  /*------------------------- Wedge 2 Fill histos begin-------------------------*/
309  //Small sectors at +ve Z (A-Side)
310  if ((sim_stationName==s_m1s2 || sim_stationName==s_m2s2) && sim_side==1){
311  double r_S2_A = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
312  m_h_S2_xy_A->Fill(p.x(),p.y());
313  m_h_S2_rz_A->Fill(p.z(), r_S2_A);
314  m_h_S2_r_A->Fill(r_S2_A);
315  }
316 
317  //Small sectors at -ve Z (C-Side)
318  if ((sim_stationName==s_m1s2 || sim_stationName==s_m2s2) && sim_side==-1){
319  double r_S2_C = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
320  m_h_S2_xy_C->Fill(p.x(),p.y());
321  m_h_S2_rz_C->Fill(p.z(), r_S2_C);
322  m_h_S2_r_C->Fill(r_S2_C);
323  }
324 
325  /*------------------------Wedge 2 Fill histos end---------------------------*/
326 
327  /*------------------------- Small sectors both wedges Fill histos begin-------------------------*/
328  //Small sectors at +ve Z (A-Side)
329  if ((sim_stationName==s_m1s2 || sim_stationName==s_m2s2 || sim_stationName==s_m1s1 || sim_stationName==s_m2s1) && sim_side==1){
330  double r_S_A = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
331  m_h_S_xy_A->Fill(p.x(),p.y());
332  m_h_S_rz_A->Fill(p.z(), r_S_A);
333  }
334 
335  //Small sectors at -ve Z (C-Side)
336  if ((sim_stationName==s_m1s2 || sim_stationName==s_m2s2 || sim_stationName==s_m1s1 || sim_stationName==s_m2s1) && sim_side==-1){
337  double r_S_C = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
338  m_h_S_xy_C->Fill(p.x(),p.y());
339  m_h_S_rz_C->Fill(p.z(), r_S_C);
340  }
341  /*------------------------Small sectors both wedges Fill histos end---------------------------*/
342 
343  //All sectors
344  /*-------------------------All sectors Fill histos begin-------------------------*/
345  //Sectors at +ve Z (A-Side)
346  if (sim_side==1){
347  double r_A = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
348  m_h_xy_A->Fill(p.x(),p.y());
349  m_h_rz_A->Fill(p.z(), r_A);
350  }
351 
352  //Sectors at -ve Z (C-Side)
353  if (sim_side==-1){
354  double r_C = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
355  m_h_xy_C->Fill(p.x(),p.y());
356  m_h_rz_C->Fill(p.z(), r_C);
357  }
358  /*------------------------All sectors Fill histos end---------------------------*/
359 
360  //Large sectors
361  /*-------------------------Wedge 1 Fill histos begin-------------------------*/
362  //M1L1 (Note: M1->Module 1, L1->Large sector wedge 1)
363 
364  //Large sectors at +ve Z (A-Side)
365  if ((sim_stationName==s_m1l1 || sim_stationName==s_m2l1) && sim_side==1){
366  double r_L1_A = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
367  m_h_L1_xy_A->Fill(p.x(),p.y());
368  m_h_L1_rz_A->Fill(p.z(), r_L1_A);
369  m_h_L1_r_A->Fill(r_L1_A);
370  }
371 
372  //Large sectors at -ve Z (C-Side)
373  if ((sim_stationName==s_m1l1 || sim_stationName==s_m2l1) && sim_side==-1){
374  double r_L1_C = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
375  m_h_L1_xy_C->Fill(p.x(),p.y());
376  m_h_L1_rz_C->Fill(p.z(), r_L1_C);
377  m_h_L1_r_C->Fill(r_L1_C);
378  }
379 
380  /*------------------------Wedge 1 Fill histos end---------------------------*/
381 
382  /*-------------------------Wedge 2 Fill histos begin-------------------------*/
383  //M1L1 (Note: M1->Module 1, L1->Large sector wedge 1)
384 
385  //Large sectors at +ve Z (A-Side)
386  if ((sim_stationName==s_m1l2 || sim_stationName==s_m2l2) && sim_side==1){
387  double r_L2_A = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
388  m_h_L2_xy_A->Fill(p.x(),p.y());
389  m_h_L2_rz_A->Fill(p.z(), r_L2_A);
390  m_h_L2_r_A->Fill(r_L2_A);
391  }
392 
393  //Large sectors at -ve Z (C-Side)
394  if ((sim_stationName==s_m1l2 || sim_stationName==s_m2l2) && sim_side==-1){
395  double r_L2_C = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
396  m_h_L2_xy_C->Fill(p.x(),p.y());
397  m_h_L2_rz_C->Fill(p.z(), r_L2_C);
398  m_h_L2_r_C->Fill(r_L2_C);
399  }
400 
401  /*------------------------Wedge 2 Fill histos end---------------------------*/
402 
403  /*------------------------- Large sectors both wedges Fill histos begin-------------------------*/
404  //Large sectors at +ve Z (A-Side)
405  if ((sim_stationName==s_m1l2 || sim_stationName==s_m2l2 || sim_stationName==s_m1l1 || sim_stationName==s_m2l1) && sim_side==1){
406  double r_L_A = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
407  m_h_L_xy_A->Fill(p.x(),p.y());
408  m_h_L_rz_A->Fill(p.z(), r_L_A);
409  }
410 
411  //Large sectors at -ve Z (C-Side)
412  if ((sim_stationName==s_m1l2 || sim_stationName==s_m2l2 || sim_stationName==s_m1l1 || sim_stationName==s_m2l1) && sim_side==-1){
413  double r_L_C = sqrt(p.x()*p.x()+p.y()*p.y()); //Evaluate r
414  m_h_L_xy_C->Fill(p.x(),p.y());
415  m_h_L_rz_C->Fill(p.z(), r_L_C);
416  }
417  /*------------------------Large sectors both wedges Fill histos end---------------------------*/
418 
419  m_hits_x->push_back(p.x());
420  }
421  } // End while hits
422 
423  if (m_tree) m_tree->Fill();
424 
425  return StatusCode::SUCCESS;
426 }

◆ 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 MMHitAnalysis::initialize ( )
virtual

Histograms

now add branches and leaves to the tree

Definition at line 77 of file MMHitAnalysis.cxx.

77  {
78  ATH_MSG_DEBUG( "Initializing MMHitAnalysis" );
79 
80 // Grab the Ntuple and histogramming service for the tree
81  CHECK(m_thistSvc.retrieve());
82 
83 
86 /*-----------------------------------Small sector Wedge 1 histos begin--------------------------------------*/
87  m_h_S1_xy_A = new TH2D("h_mm_S1_xy_A","S1_xy_A", 1200,-6000., 6000., 1200, -6000., 6000.);
88  m_h_S1_xy_A->StatOverflows();
89  CHECK(m_thistSvc->regHist(m_path + m_h_S1_xy_A->GetName(), m_h_S1_xy_A));
90 
91  m_h_S1_rz_A = new TH2D("h_mm_S1_rz_A","S1_rz_A", 1000,7000., 8000., 5000, 0., 5000.);
92  m_h_S1_rz_A->StatOverflows();
93  CHECK(m_thistSvc->regHist(m_path + m_h_S1_rz_A->GetName(), m_h_S1_rz_A));
94 
95  m_h_S1_r_A = new TH1D("h_mm_S1_r_A","S1_r_A", 1000,0., 14000.);
96  m_h_S1_r_A->StatOverflows();
97  CHECK(m_thistSvc->regHist(m_path + m_h_S1_r_A->GetName(), m_h_S1_r_A));
98 
99  m_h_S1_xy_C = new TH2D("h_mm_S1_xy_C","S1_xy_C", 1200,-6000., 6000., 1200, -6000., 6000.);
100  m_h_S1_xy_C->StatOverflows();
101  CHECK(m_thistSvc->regHist(m_path + m_h_S1_xy_C->GetName(), m_h_S1_xy_C));
102 
103  m_h_S1_rz_C = new TH2D("h_mm_S1_rz_C","S1_rz_C", 1000,-8000., -7000., 5000, 0., 5000.);
104  m_h_S1_rz_C->StatOverflows();
105  CHECK(m_thistSvc->regHist(m_path + m_h_S1_rz_C->GetName(), m_h_S1_rz_C));
106 
107  m_h_S1_r_C = new TH1D("h_mm_S1_r_C","S1_r_C", 1000,0., 14000.);
108  m_h_S1_r_C->StatOverflows();
109  CHECK(m_thistSvc->regHist(m_path + m_h_S1_r_C->GetName(), m_h_S1_r_C));
110  /*-----------------------------------Small sector Wedge 1 histos end--------------------------------------*/
111 
112  /*-----------------------------------Small sector Wedge 2 histos begin--------------------------------------*/
113  m_h_S2_xy_A = new TH2D("h_mm_S2_xy_A","S2_xy_A", 1200,-6000., 6000., 1200, -6000., 6000.);
114  m_h_S2_xy_A->StatOverflows();
115  CHECK(m_thistSvc->regHist(m_path + m_h_S2_xy_A->GetName(), m_h_S2_xy_A));
116 
117  m_h_S2_rz_A = new TH2D("h_mm_S2_rz_A","S2_rz_A", 1000,7000., 8000., 5000, 0., 5000.);
118  m_h_S2_rz_A->StatOverflows();
119  CHECK(m_thistSvc->regHist(m_path + m_h_S2_rz_A->GetName(), m_h_S2_rz_A));
120 
121  m_h_S2_r_A = new TH1D("h_mm_S2_r_A","S2_r_A", 1000,0., 14000.);
122  m_h_S2_r_A->StatOverflows();
123  CHECK(m_thistSvc->regHist(m_path + m_h_S2_r_A->GetName(), m_h_S2_r_A));
124 
125  m_h_S2_xy_C = new TH2D("h_mm_S2_xy_C","S2_xy_C", 1200,-6000., 6000., 1200, -6000., 6000.);
126  m_h_S2_xy_C->StatOverflows();
127  CHECK(m_thistSvc->regHist(m_path + m_h_S2_xy_C->GetName(), m_h_S2_xy_C));
128 
129  m_h_S2_rz_C = new TH2D("h_mm_S2_rz_C","S2_rz_C", 1000,-8000., -7000., 5000, 0., 5000.);
130  m_h_S2_rz_C->StatOverflows();
131  CHECK(m_thistSvc->regHist(m_path + m_h_S2_rz_C->GetName(), m_h_S2_rz_C));
132 
133  m_h_S2_r_C = new TH1D("h_mm_S2_r_C","S2_r_C", 1000,0., 14000.);
134  m_h_S2_r_C->StatOverflows();
135  CHECK(m_thistSvc->regHist(m_path + m_h_S2_r_C->GetName(), m_h_S2_r_C));
136 /*---------------------------------Small sector Wedge 2 histos end--------------------------------------*/
137 
138 /*-----------------------------------Small sector both Wedges histos begin--------------------------------------*/
139  m_h_S_xy_A = new TH2D("h_mm_S_xy_A","S_xy_A", 1200,-6000., 6000., 1200, -6000., 6000.);
140  m_h_S_xy_A->StatOverflows();
141  CHECK(m_thistSvc->regHist(m_path + m_h_S_xy_A->GetName(), m_h_S_xy_A));
142 
143  m_h_S_xy_C = new TH2D("h_mm_S_xy_C","S_xy_C", 1200,-6000., 6000., 1200, -6000., 6000.);
144  m_h_S_xy_C->StatOverflows();
145  CHECK(m_thistSvc->regHist(m_path + m_h_S_xy_C->GetName(), m_h_S_xy_C));
146 
147  m_h_S_rz_A = new TH2D("h_mm_S_rz_A","S_rz_A", 1000,7000., 8000., 5000, 0., 5000.);
148  m_h_S_rz_A->StatOverflows();
149  CHECK(m_thistSvc->regHist(m_path + m_h_S_rz_A->GetName(), m_h_S_rz_A));
150 
151  m_h_S_rz_C = new TH2D("h_mm_S_rz_C","S_rz_C", 1000,-8000., -7000., 5000, 0., 5000.);
152  m_h_S_rz_C->StatOverflows();
153  CHECK(m_thistSvc->regHist(m_path + m_h_S_rz_C->GetName(), m_h_S_rz_C));
154  /*---------------------------------Small sector both Wedges histos end--------------------------------------*/
155 
156  /*-----------------------------------All sector histos begin--------------------------------------*/
157  m_h_xy_A = new TH2D("h_mm_xy_A","xy_A", 1200,-6000., 6000., 1200, -6000., 6000.);
158  m_h_xy_A->StatOverflows();
159  CHECK(m_thistSvc->regHist(m_path + m_h_xy_A->GetName(), m_h_xy_A));
160 
161  m_h_xy_C = new TH2D("h_mm_xy_C","xy_C", 1200,-6000., 6000., 1200, -6000., 6000.);
162  m_h_xy_C->StatOverflows();
163  CHECK(m_thistSvc->regHist(m_path + m_h_xy_C->GetName(), m_h_xy_C));
164 
165  m_h_rz_A = new TH2D("h_mm_rz_A","rz_A", 1000,7000., 8000., 5000, 0., 5000.);
166  m_h_rz_A->StatOverflows();
167  CHECK(m_thistSvc->regHist(m_path + m_h_rz_A->GetName(), m_h_rz_A));
168 
169  m_h_rz_C = new TH2D("h_mm_rz_C","rz_C", 1000,-8000., -7000., 5000, 0., 5000.);
170  m_h_rz_C->StatOverflows();
171  CHECK(m_thistSvc->regHist(m_path + m_h_rz_C->GetName(), m_h_rz_C));
172  /*---------------------------------All sector histos end-------------------------------------------*/
173 
174  /*-----------------------------------Large sector Wedge 1 histos begin--------------------------------------*/
175  m_h_L1_xy_A = new TH2D("h_mm_L1_xy_A","L1_xy_A", 1200,-6000., 6000., 1200, -6000., 6000.);
176  m_h_L1_xy_A->StatOverflows();
177  CHECK(m_thistSvc->regHist(m_path + m_h_L1_xy_A->GetName(), m_h_L1_xy_A));
178 
179  m_h_L1_rz_A = new TH2D("h_mm_L1_rz_A","L1_rz_A", 1000,7000., 8000., 5000, 0., 5000.);
180  m_h_L1_rz_A->StatOverflows();
181  CHECK(m_thistSvc->regHist(m_path + m_h_L1_rz_A->GetName(), m_h_L1_rz_A));
182 
183  m_h_L1_r_A = new TH1D("h_mm_L1_r_A","L1_r_A", 1000,0., 14000.);
184  m_h_L1_r_A->StatOverflows();
185  CHECK(m_thistSvc->regHist(m_path + m_h_L1_r_A->GetName(), m_h_L1_r_A));
186 
187  m_h_L1_xy_C = new TH2D("h_mm_L1_xy_C","L1_xy_C", 1200,-6000., 6000., 1200, -6000., 6000.);
188  m_h_L1_xy_C->StatOverflows();
189  CHECK(m_thistSvc->regHist(m_path + m_h_L1_xy_C->GetName(), m_h_L1_xy_C));
190 
191  m_h_L1_rz_C = new TH2D("h_mm_L1_rz_C","L1_rz_C", 1000,-8000., -7000., 5000, 0., 5000.);
192  m_h_L1_rz_C->StatOverflows();
193  CHECK(m_thistSvc->regHist(m_path + m_h_L1_rz_C->GetName(), m_h_L1_rz_C));
194 
195  m_h_L1_r_C = new TH1D("h_mm_L1_r_C","L1_r_C", 1000,0., 14000.);
196  m_h_L1_r_C->StatOverflows();
197  CHECK(m_thistSvc->regHist(m_path + m_h_L1_r_C->GetName(), m_h_L1_r_C));
198  /*-----------------------------------Large sector Wedge 1 histos end--------------------------------------*/
199 
200  /*-----------------------------------Large sector Wedge 2 histos begin--------------------------------------*/
201  m_h_L2_xy_A = new TH2D("h_mm_L2_xy_A","L2_xy_A", 1200,-6000., 6000., 1200, -6000., 6000.);
202  m_h_L2_xy_A->StatOverflows();
203  CHECK(m_thistSvc->regHist(m_path + m_h_L2_xy_A->GetName(), m_h_L2_xy_A));
204 
205  m_h_L2_rz_A = new TH2D("h_mm_L2_rz_A","L2_rz_A", 1000,7000., 8000., 5000, 0., 5000.);
206  m_h_L2_rz_A->StatOverflows();
207  CHECK(m_thistSvc->regHist(m_path + m_h_L2_rz_A->GetName(), m_h_L2_rz_A));
208 
209  m_h_L2_r_A = new TH1D("h_mm_L2_r_A","L2_r_A", 1000,0., 14000.);
210  m_h_L2_r_A->StatOverflows();
211  CHECK(m_thistSvc->regHist(m_path + m_h_L2_r_A->GetName(), m_h_L2_r_A));
212 
213  m_h_L2_xy_C = new TH2D("h_mm_L2_xy_C","L2_xy_C", 1200,-6000., 6000., 1200, -6000., 6000.);
214  m_h_L2_xy_C->StatOverflows();
215  CHECK(m_thistSvc->regHist(m_path + m_h_L2_xy_C->GetName(), m_h_L2_xy_C));
216 
217  m_h_L2_rz_C = new TH2D("h_mm_L2_rz_C","L2_rz_C", 1000,-8000., -7000., 5000, 0., 5000.);
218  m_h_L2_rz_C->StatOverflows();
219  CHECK(m_thistSvc->regHist(m_path + m_h_L2_rz_C->GetName(), m_h_L2_rz_C));
220 
221  m_h_L2_r_C = new TH1D("h_mm_L2_r_C","L2_r_C", 1000,0., 14000.);
222  m_h_L2_r_C->StatOverflows();
223  CHECK(m_thistSvc->regHist(m_path + m_h_L2_r_C->GetName(), m_h_L2_r_C));
224  /*-----------------------------------Large sector Wedge 1 histos end--------------------------------------*/
225 
226  /*-----------------------------------Large sector both Wedge histos begin--------------------------------------*/
227  m_h_L_xy_A = new TH2D("h_mm_L_xy_A","L_xy_A", 1200,-6000., 6000., 1200, -6000., 6000.);
228  m_h_L_xy_A->StatOverflows();
229  CHECK(m_thistSvc->regHist(m_path + m_h_L_xy_A->GetName(), m_h_L_xy_A));
230 
231  m_h_L_rz_A = new TH2D("h_mm_L_rz_A","L_rz_A", 1000,7000., 8000., 5000, 0., 5000.);
232  m_h_L_rz_A->StatOverflows();
233  CHECK(m_thistSvc->regHist(m_path + m_h_L_rz_A->GetName(), m_h_L_rz_A));
234 
235  m_h_L_xy_C = new TH2D("h_mm_L_xy_C","L_xy_C", 1200,-6000., 6000., 1200, -6000., 6000.);
236  m_h_L_xy_C->StatOverflows();
237  CHECK(m_thistSvc->regHist(m_path + m_h_L_xy_C->GetName(), m_h_L_xy_C));
238 
239  m_h_L_rz_C = new TH2D("h_mm_L_rz_C","L_rz_C", 1000,-8000., -7000., 5000, 0., 5000.);
240  m_h_L_rz_C->StatOverflows();
241  CHECK(m_thistSvc->regHist(m_path + m_h_L_rz_C->GetName(), m_h_L_rz_C));
242  /*-----------------------------------Large sector both Wedge histos end--------------------------------------*/
243 
244  m_tree= new TTree("NtupleMMHitAnalysis","MMHitAna");
245  std::string fullNtupleName = "/"+m_ntupleFileName+"/";
246  CHECK(m_thistSvc->regTree(fullNtupleName,m_tree));
247 
248 
251  if (m_tree){
252  m_tree->Branch("x", &m_hits_x);
253  }
254  else{
255  ATH_MSG_ERROR("No tree found!");
256  }
257 
258  return StatusCode::SUCCESS;
259 }

◆ 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_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_extendedExtraObjects

DataObjIDColl AthAlgorithm::m_extendedExtraObjects
privateinherited

Definition at line 79 of file AthAlgorithm.h.

◆ m_h_L1_r_A

TH1* MMHitAnalysis::m_h_L1_r_A
private

Definition at line 62 of file MMHitAnalysis.h.

◆ m_h_L1_r_C

TH1* MMHitAnalysis::m_h_L1_r_C
private

Definition at line 65 of file MMHitAnalysis.h.

◆ m_h_L1_rz_A

TH2* MMHitAnalysis::m_h_L1_rz_A
private

Definition at line 61 of file MMHitAnalysis.h.

◆ m_h_L1_rz_C

TH2* MMHitAnalysis::m_h_L1_rz_C
private

Definition at line 64 of file MMHitAnalysis.h.

◆ m_h_L1_xy_A

TH2* MMHitAnalysis::m_h_L1_xy_A
private

Definition at line 60 of file MMHitAnalysis.h.

◆ m_h_L1_xy_C

TH2* MMHitAnalysis::m_h_L1_xy_C
private

Definition at line 63 of file MMHitAnalysis.h.

◆ m_h_L2_r_A

TH1* MMHitAnalysis::m_h_L2_r_A
private

Definition at line 68 of file MMHitAnalysis.h.

◆ m_h_L2_r_C

TH1* MMHitAnalysis::m_h_L2_r_C
private

Definition at line 71 of file MMHitAnalysis.h.

◆ m_h_L2_rz_A

TH2* MMHitAnalysis::m_h_L2_rz_A
private

Definition at line 67 of file MMHitAnalysis.h.

◆ m_h_L2_rz_C

TH2* MMHitAnalysis::m_h_L2_rz_C
private

Definition at line 70 of file MMHitAnalysis.h.

◆ m_h_L2_xy_A

TH2* MMHitAnalysis::m_h_L2_xy_A
private

Definition at line 66 of file MMHitAnalysis.h.

◆ m_h_L2_xy_C

TH2* MMHitAnalysis::m_h_L2_xy_C
private

Definition at line 69 of file MMHitAnalysis.h.

◆ m_h_L_rz_A

TH2* MMHitAnalysis::m_h_L_rz_A
private

Definition at line 75 of file MMHitAnalysis.h.

◆ m_h_L_rz_C

TH2* MMHitAnalysis::m_h_L_rz_C
private

Definition at line 76 of file MMHitAnalysis.h.

◆ m_h_L_xy_A

TH2* MMHitAnalysis::m_h_L_xy_A
private

Definition at line 73 of file MMHitAnalysis.h.

◆ m_h_L_xy_C

TH2* MMHitAnalysis::m_h_L_xy_C
private

Definition at line 74 of file MMHitAnalysis.h.

◆ m_h_rz_A

TH2* MMHitAnalysis::m_h_rz_A
private

Definition at line 57 of file MMHitAnalysis.h.

◆ m_h_rz_C

TH2* MMHitAnalysis::m_h_rz_C
private

Definition at line 58 of file MMHitAnalysis.h.

◆ m_h_S1_r_A

TH1* MMHitAnalysis::m_h_S1_r_A
private

Definition at line 40 of file MMHitAnalysis.h.

◆ m_h_S1_r_C

TH1* MMHitAnalysis::m_h_S1_r_C
private

Definition at line 43 of file MMHitAnalysis.h.

◆ m_h_S1_rz_A

TH2* MMHitAnalysis::m_h_S1_rz_A
private

Definition at line 39 of file MMHitAnalysis.h.

◆ m_h_S1_rz_C

TH2* MMHitAnalysis::m_h_S1_rz_C
private

Definition at line 42 of file MMHitAnalysis.h.

◆ m_h_S1_xy_A

TH2* MMHitAnalysis::m_h_S1_xy_A
private

Some variables.

Definition at line 38 of file MMHitAnalysis.h.

◆ m_h_S1_xy_C

TH2* MMHitAnalysis::m_h_S1_xy_C
private

Definition at line 41 of file MMHitAnalysis.h.

◆ m_h_S2_r_A

TH1* MMHitAnalysis::m_h_S2_r_A
private

Definition at line 46 of file MMHitAnalysis.h.

◆ m_h_S2_r_C

TH1* MMHitAnalysis::m_h_S2_r_C
private

Definition at line 49 of file MMHitAnalysis.h.

◆ m_h_S2_rz_A

TH2* MMHitAnalysis::m_h_S2_rz_A
private

Definition at line 45 of file MMHitAnalysis.h.

◆ m_h_S2_rz_C

TH2* MMHitAnalysis::m_h_S2_rz_C
private

Definition at line 48 of file MMHitAnalysis.h.

◆ m_h_S2_xy_A

TH2* MMHitAnalysis::m_h_S2_xy_A
private

Definition at line 44 of file MMHitAnalysis.h.

◆ m_h_S2_xy_C

TH2* MMHitAnalysis::m_h_S2_xy_C
private

Definition at line 47 of file MMHitAnalysis.h.

◆ m_h_S_rz_A

TH2* MMHitAnalysis::m_h_S_rz_A
private

Definition at line 52 of file MMHitAnalysis.h.

◆ m_h_S_rz_C

TH2* MMHitAnalysis::m_h_S_rz_C
private

Definition at line 53 of file MMHitAnalysis.h.

◆ m_h_S_xy_A

TH2* MMHitAnalysis::m_h_S_xy_A
private

Definition at line 50 of file MMHitAnalysis.h.

◆ m_h_S_xy_C

TH2* MMHitAnalysis::m_h_S_xy_C
private

Definition at line 51 of file MMHitAnalysis.h.

◆ m_h_xy_A

TH2* MMHitAnalysis::m_h_xy_A
private

Definition at line 55 of file MMHitAnalysis.h.

◆ m_h_xy_C

TH2* MMHitAnalysis::m_h_xy_C
private

Definition at line 56 of file MMHitAnalysis.h.

◆ m_hits_x

std::vector<float>* MMHitAnalysis::m_hits_x
private

Definition at line 78 of file MMHitAnalysis.h.

◆ m_ntupleFileName

std::string MMHitAnalysis::m_ntupleFileName
private

Definition at line 81 of file MMHitAnalysis.h.

◆ m_path

std::string MMHitAnalysis::m_path
private

Definition at line 83 of file MMHitAnalysis.h.

◆ m_thistSvc

ServiceHandle<ITHistSvc> MMHitAnalysis::m_thistSvc
private

Definition at line 84 of file MMHitAnalysis.h.

◆ m_tree

TTree* MMHitAnalysis::m_tree = nullptr
private

Definition at line 80 of file MMHitAnalysis.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
MicromegasHitIdHelper::GetSide
int GetSide(const int &hid) const
Definition: MicromegasHitIdHelper.cxx:94
MMHitAnalysis::m_h_S1_xy_C
TH2 * m_h_S1_xy_C
Definition: MMHitAnalysis.h:41
MMHitAnalysis::m_h_L2_rz_A
TH2 * m_h_L2_rz_A
Definition: MMHitAnalysis.h:67
MicromegasHitIdHelper::GetStationName
std::string GetStationName(const int &hid) const
Definition: MicromegasHitIdHelper.cxx:61
MMHitAnalysis::m_h_S1_xy_A
TH2 * m_h_S1_xy_A
Some variables.
Definition: MMHitAnalysis.h:38
MMHitAnalysis::m_h_xy_A
TH2 * m_h_xy_A
Definition: MMHitAnalysis.h:55
MMHitAnalysis::m_h_L_rz_A
TH2 * m_h_L_rz_A
Definition: MMHitAnalysis.h:75
AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
MMHitAnalysis::m_h_S2_xy_A
TH2 * m_h_S2_xy_A
Definition: MMHitAnalysis.h:44
MMHitAnalysis::m_h_L1_r_A
TH1 * m_h_L1_r_A
Definition: MMHitAnalysis.h:62
AtlasHitsVector
Definition: AtlasHitsVector.h:33
MMHitAnalysis::m_h_S2_xy_C
TH2 * m_h_S2_xy_C
Definition: MMHitAnalysis.h:47
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
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
MMHitAnalysis::m_thistSvc
ServiceHandle< ITHistSvc > m_thistSvc
Definition: MMHitAnalysis.h:84
MMHitAnalysis::m_h_S1_rz_C
TH2 * m_h_S1_rz_C
Definition: MMHitAnalysis.h:42
MMHitAnalysis::m_h_L_xy_A
TH2 * m_h_L_xy_A
Definition: MMHitAnalysis.h:73
AtlasHitsVector::begin
const_iterator begin() const
Definition: AtlasHitsVector.h:131
AtlasHitsVector::const_iterator
CONT::const_iterator const_iterator
Definition: AtlasHitsVector.h:43
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
IDTPMcnv.htype
htype
Definition: IDTPMcnv.py:29
AthCommonDataStore< AthCommonMsg< Algorithm > >::evtStore
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:85
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
MMHitAnalysis::m_h_L1_rz_C
TH2 * m_h_L1_rz_C
Definition: MMHitAnalysis.h:64
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
MMHitAnalysis::m_h_L1_xy_C
TH2 * m_h_L1_xy_C
Definition: MMHitAnalysis.h:63
AthCommonDataStore< AthCommonMsg< Algorithm > >::outputHandles
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
MMHitAnalysis::m_h_S2_rz_A
TH2 * m_h_S2_rz_A
Definition: MMHitAnalysis.h:45
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
MMHitAnalysis::m_tree
TTree * m_tree
Definition: MMHitAnalysis.h:80
MMHitAnalysis::m_h_S_rz_A
TH2 * m_h_S_rz_A
Definition: MMHitAnalysis.h:52
CHECK
#define CHECK(...)
Evaluate an expression and check for errors.
Definition: Control/AthenaKernel/AthenaKernel/errorcheck.h:422
MMHitAnalysis::m_h_L2_xy_A
TH2 * m_h_L2_xy_A
Definition: MMHitAnalysis.h:66
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
MMHitAnalysis::m_h_S2_r_C
TH1 * m_h_S2_r_C
Definition: MMHitAnalysis.h:49
MMHitAnalysis::m_h_S1_r_C
TH1 * m_h_S1_r_C
Definition: MMHitAnalysis.h:43
MicromegasHitIdHelper
Definition: MicromegasHitIdHelper.h:13
MMHitAnalysis::m_path
std::string m_path
Definition: MMHitAnalysis.h:83
MMHitAnalysis::m_h_L1_xy_A
TH2 * m_h_L1_xy_A
Definition: MMHitAnalysis.h:60
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
MMHitAnalysis::m_h_L1_rz_A
TH2 * m_h_L1_rz_A
Definition: MMHitAnalysis.h:61
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
MMHitAnalysis::m_h_xy_C
TH2 * m_h_xy_C
Definition: MMHitAnalysis.h:56
MMHitAnalysis::m_h_L2_rz_C
TH2 * m_h_L2_rz_C
Definition: MMHitAnalysis.h:70
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
MMHitAnalysis::m_ntupleFileName
std::string m_ntupleFileName
Definition: MMHitAnalysis.h:81
MMHitAnalysis::m_h_S_xy_C
TH2 * m_h_S_xy_C
Definition: MMHitAnalysis.h:51
MMHitAnalysis::m_h_S2_rz_C
TH2 * m_h_S2_rz_C
Definition: MMHitAnalysis.h:48
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
MicromegasHitIdHelper::GetHelper
static const MicromegasHitIdHelper * GetHelper()
Definition: MicromegasHitIdHelper.cxx:25
AthAlgorithm::m_extendedExtraObjects
DataObjIDColl m_extendedExtraObjects
Definition: AthAlgorithm.h:79
MMHitAnalysis::m_h_S2_r_A
TH1 * m_h_S2_r_A
Definition: MMHitAnalysis.h:46
a
TList * a
Definition: liststreamerinfos.cxx:10
h
MMHitAnalysis::m_h_L_xy_C
TH2 * m_h_L_xy_C
Definition: MMHitAnalysis.h:74
MMHitAnalysis::m_h_L_rz_C
TH2 * m_h_L_rz_C
Definition: MMHitAnalysis.h:76
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
AtlasHitsVector::end
const_iterator end() const
Definition: AtlasHitsVector.h:134
MMHitAnalysis::m_h_S1_r_A
TH1 * m_h_S1_r_A
Definition: MMHitAnalysis.h:40
MMHitAnalysis::m_h_S_rz_C
TH2 * m_h_S_rz_C
Definition: MMHitAnalysis.h:53
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:623
MMHitAnalysis::m_h_rz_C
TH2 * m_h_rz_C
Definition: MMHitAnalysis.h:58
MMHitAnalysis::m_h_L1_r_C
TH1 * m_h_L1_r_C
Definition: MMHitAnalysis.h:65
AthAlgorithm::AthAlgorithm
AthAlgorithm()
Default constructor:
MMHitAnalysis::m_h_S1_rz_A
TH2 * m_h_S1_rz_A
Definition: MMHitAnalysis.h:39
MMHitAnalysis::m_h_L2_r_A
TH1 * m_h_L2_r_A
Definition: MMHitAnalysis.h:68
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:798
LHEF::Writer
Pythia8::Writer Writer
Definition: Prophecy4fMerger.cxx:12
MMHitAnalysis::m_hits_x
std::vector< float > * m_hits_x
Definition: MMHitAnalysis.h:78
AthCommonDataStore::declareGaudiProperty
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition: AthCommonDataStore.h:156
MMHitAnalysis::m_h_S_xy_A
TH2 * m_h_S_xy_A
Definition: MMHitAnalysis.h:50
MMHitAnalysis::m_h_rz_A
TH2 * m_h_rz_A
Definition: MMHitAnalysis.h:57
MMHitAnalysis::m_h_L2_r_C
TH1 * m_h_L2_r_C
Definition: MMHitAnalysis.h:71
fitman.k
k
Definition: fitman.py:528
ServiceHandle< ICondSvc >
MMHitAnalysis::m_h_L2_xy_C
TH2 * m_h_L2_xy_C
Definition: MMHitAnalysis.h:69