ATLAS Offline Software
GeneratorPhysValMonitoringTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef GeneratorPhysVal_GeneratorPhysValMonitoring_H
6 #define GeneratorPhysVal_GeneratorPhysValMonitoring_H
7 
8 // STL includes
9 #include <string>
10 
11 // FrameWork includes
12 #include "GaudiKernel/ServiceHandle.h"
13 
14 // Local includes
17 #include "xAODJet/JetContainer.h"
19 #include "StoreGate/ReadHandle.h"
22 #include "xAODTruth/TruthVertex.h"
23 #include <TLorentzVector.h>
24 #include "GeneratorPlots.h"
26 #include "GeneratorSelector.h"
27 #include "GeneratorEventInfo.h"
28 #include "AsgTools/AnaToolHandle.h"
31 #include "AtlasHepMC/GenEvent.h"
32 // Root includes
33 #include "TH1.h"
34 
35 
36 
37 
38 
39 namespace GeneratorPhysVal
40 {
42  : public ManagedMonitorToolBase
43  {
44 
45  public:
46 
47  GeneratorPhysValMonitoringTool(const std::string &type,
48  const std::string &name,
49  const IInterface *parent);
50 
52 
53  virtual StatusCode initialize();
54  virtual StatusCode bookHistograms();
55  virtual StatusCode fillHistograms();
56  virtual StatusCode procHistograms();
57 
58  private:
66 
68  TH1D* m_number = nullptr;
69  TH1D* m_number_GeneratorLevel = nullptr;
70  TH1D* m_number_SimulationLevel = nullptr;
71 
73 
74 
76 
77  Gaudi::Property<std::vector<float>> m_binning_N_TruthParticle{this, "binning_N_TruthParticle", {600,0.,6000},"binning_N_TruthParticle"};
78  Gaudi::Property<std::vector<float>> m_binning_N_GeneratorLevelParticle{this, "binning_N_GeneratorLevelParticle", {10,-5.,5},"binning_N_GeneratorLevelParticle"};
79  Gaudi::Property<std::vector<float>> m_binning_N_SimulationLevelParticle{this, "binning_N_SimulationLevelParticle", {2000,0,2000},"binning_N_SimulationLevelParticle"};
80 
81 
82 
84  , "EventInfo"
85  , "EventInfo"
86  , "ReadHandleKey for xAOD::EventInfo" };
87 
88  };
89 }
90 
91 #endif
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_GeneratorSelector
GeneratorSelector * m_GeneratorSelector
Definition: GeneratorPhysValMonitoringTool.h:72
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_evtInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_evtInfoKey
Definition: GeneratorPhysValMonitoringTool.h:83
GenEvent.h
PlotBase
Definition: PlotBase.h:34
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_GeneratorLevelPlots
GeneratorPhysVal::GeneratorPlots m_GeneratorLevelPlots
Definition: GeneratorPhysValMonitoringTool.h:62
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_testPlots
GeneratorPhysVal::GeneratorPlots m_testPlots
Definition: GeneratorPhysValMonitoringTool.h:60
ManagedMonitorToolBase
Provides functionality for users to implement and save histograms, ntuples, and summary data,...
Definition: ManagedMonitorToolBase.h:73
GeneratorPhysVal::GeneratorProductionVertexPlots
Definition: GeneratorProductionVertexPlots.h:14
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_number_GeneratorLevel
TH1D * m_number_GeneratorLevel
Definition: GeneratorPhysValMonitoringTool.h:69
TruthParticleContainer.h
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_binning_N_GeneratorLevelParticle
Gaudi::Property< std::vector< float > > m_binning_N_GeneratorLevelParticle
Definition: GeneratorPhysValMonitoringTool.h:78
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_binning_N_TruthParticle
Gaudi::Property< std::vector< float > > m_binning_N_TruthParticle
Definition: GeneratorPhysValMonitoringTool.h:77
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_ChargedParticlePlots
GeneratorPhysVal::GeneratorPlots m_ChargedParticlePlots
Definition: GeneratorPhysValMonitoringTool.h:61
SG::ReadHandleKey< xAOD::EventInfo >
GeneratorPhysVal::GeneratorPhysValMonitoringTool::GeneratorPhysValMonitoringTool
GeneratorPhysValMonitoringTool()
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_number
TH1D * m_number
Definition: GeneratorPhysValMonitoringTool.h:68
AthAlgorithm.h
GeneratorPlots.h
ManagedMonitorToolBase.h
GeneratorPhysVal::GeneratorEventInfo
Definition: GeneratorEventInfo.h:15
GeneratorPhysVal::GeneratorPhysValMonitoringTool::~GeneratorPhysValMonitoringTool
virtual ~GeneratorPhysValMonitoringTool()
Definition: GeneratorPhysValMonitoringTool.cxx:38
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
GeneratorSelector.h
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_ref_mcChannelNumber
int m_ref_mcChannelNumber
Definition: GeneratorPhysValMonitoringTool.h:75
GeneratorPhysVal::GeneratorPhysValMonitoringTool::fillHistograms
virtual StatusCode fillHistograms()
An inheriting class should either override this function or fillHists().
Definition: GeneratorPhysValMonitoringTool.cxx:78
test_pyathena.parent
parent
Definition: test_pyathena.py:15
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_ProductionVertexPlots
GeneratorPhysVal::GeneratorProductionVertexPlots m_ProductionVertexPlots
Definition: GeneratorPhysValMonitoringTool.h:64
GeneratorPhysVal::GeneratorPlots
Definition: GeneratorPlots.h:14
AnaToolHandle.h
TruthVertex.h
PathResolver.h
GeneratorPhysVal::GeneratorPhysValMonitoringTool::procHistograms
virtual StatusCode procHistograms()
An inheriting class should either override this function or finalHists().
Definition: GeneratorPhysValMonitoringTool.cxx:121
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
GeneratorEventInfo.h
EventInfo.h
GeneratorPhysVal::GeneratorPhysValMonitoringTool::initialize
virtual StatusCode initialize()
Definition: GeneratorPhysValMonitoringTool.cxx:41
GeneratorPhysVal::GeneratorPhysValMonitoringTool::bookHistograms
virtual StatusCode bookHistograms()
An inheriting class should either override this function or bookHists().
Definition: GeneratorPhysValMonitoringTool.cxx:61
GeneratorProductionVertexPlots.h
JetContainer.h
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_number_SimulationLevel
TH1D * m_number_SimulationLevel
Definition: GeneratorPhysValMonitoringTool.h:70
GeneratorPhysVal::GeneratorPhysValMonitoringTool::book
StatusCode book(PlotBase &plots)
Definition: GeneratorPhysValMonitoringTool.cxx:49
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_EventInfoPlots
GeneratorPhysVal::GeneratorEventInfo m_EventInfoPlots
Definition: GeneratorPhysValMonitoringTool.h:65
covarianceTool.plots
plots
Definition: covarianceTool.py:698
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_SimulationLevelPlots
GeneratorPhysVal::GeneratorPlots m_SimulationLevelPlots
Definition: GeneratorPhysValMonitoringTool.h:63
GeneratorPhysVal
Definition: GeneratorEventInfo.cxx:7
ReadHandle.h
Handle class for reading from StoreGate.
GeneratorSelector
Definition: GeneratorSelector.h:15
GeneratorPhysVal::GeneratorPhysValMonitoringTool::m_binning_N_SimulationLevelParticle
Gaudi::Property< std::vector< float > > m_binning_N_SimulationLevelParticle
Definition: GeneratorPhysValMonitoringTool.h:79
GeneratorPhysVal::GeneratorPhysValMonitoringTool
Definition: GeneratorPhysValMonitoringTool.h:43