ATLAS Offline Software
TrigIDR4Mon.h
Go to the documentation of this file.
1 
12 #ifndef TRIGIDMONITORING_TRIGIDR4MON_H
13 #define TRIGIDMONITORING_TRIGIDR4MON_H
14 
15 #include "GaudiKernel/ToolHandle.h"
19 
20 #include <string>
21 
26 
32 
35 
36 
38 
39 
40 public:
41 
42  TrigIDR4Mon( const std::string & name, ISvcLocator* pSvcLocator);
43 
44  virtual ~TrigIDR4Mon();
45 
46  virtual StatusCode initialize() override;
47  virtual StatusCode fillHistograms(const EventContext &context) const override;
48  virtual StatusCode finalize() override;
49 
50  virtual StatusCode bookHistograms();
51 
52  void addMonGroupFromBase( const std::string& ) { }
53 
54 protected:
55 
56  // track selector cuts
57 
58  // test tracks
59  double m_pTCut;
60  double m_etaCut;
61  double m_d0Cut;
62  double m_z0Cut;
63 
64  int m_siHits; // total number of si hits
65  int m_pixHits; // pixel hits
66  int m_sctHits; // sct hits
67 
68  int m_trtHits; // high threshold hits
69  int m_strawHits; // total number of straws
70 
71  // reference tracks
79 
80  int m_siHitsOffline; // total number of si hits
81  int m_pixHitsOffline; // pixel hits
82  int m_sctHitsOffline; // sct hits
84 
85  int m_pixHolesOffline; // pixel holes
86  int m_sctHolesOffline; // sct holes
87  int m_siHolesOffline; // total pix+sct holes
88 
89  int m_trtHitsOffline; // high threshold hits
90  int m_strawHitsOffline; // total number of straws
91 
92  // matching parameters
93  double m_matchR; // for DeltaR matcher
94  double m_matchPhi; // for DeltaPhi matcher
95 
96  ToolHandle<Trig::TrigDecisionTool> m_tdt;
97 
98  std::vector<TrackFilter*> m_filters;
99  std::vector<TrackAssociator*> m_associators;
100 
102  // std::vector<T_AnalysisConfig<AthReentrantAlgorithm>*> m_sequences;
103 
104  std::vector<std::string> m_chainNames;
105  std::vector<std::string> m_ntupleChainNames;
106  std::string m_releaseMetaData;
107 
109 
110  std::string m_analysis_config;
111  std::string m_outputFileName;
112 
114 
117 
118  //pdgId
120 
122 
125 
128 
131 
135 
138 
140  bool m_shifter;
141 
143  std::string m_sliceTag;
144 
147 
148  bool m_legacy;
149 
151 
153 
155 
157 
158  ToolHandleArray<GenericMonitoringTool> m_monTools { this, "MonTools", {} }; // insane configuration paradigm ?
159 
160  SG::ReadHandleKeyArray<xAOD::TrackParticleContainer> m_trackdummykeys{ this, "OfflineTrackCollections", {"InDetTrackParticles"}, "" };
161 
162  SG::ReadHandleKeyArray<xAOD::VertexContainer> m_vtxdummykeys{ this, "OfflineVertexCollections", {"PrimaryVertices"}, "" };
163 
164 };
165 
166 
167 
168 #endif // TRIGIDMONITORING_TRIGIDR4MON_H
TrigIDR4Mon::finalize
virtual StatusCode finalize() override
TrigIDR4Mon::m_ntupleChainNames
std::vector< std::string > m_ntupleChainNames
Definition: TrigIDR4Mon.h:105
Filter_RoiSelector.h
TrigIDR4Mon::m_outputFileName
std::string m_outputFileName
Definition: TrigIDR4Mon.h:111
TrigIDR4Mon::m_blayerHitsOffline
int m_blayerHitsOffline
Definition: TrigIDR4Mon.h:83
TrigIDR4Mon::m_d0Cut
double m_d0Cut
Definition: TrigIDR4Mon.h:61
TrigIDR4Mon::m_selectParentTruthPdgId
int m_selectParentTruthPdgId
Definition: TrigIDR4Mon.h:121
TrigIDR4Mon::m_etaCut
double m_etaCut
Definition: TrigIDR4Mon.h:60
TrigIDR4Mon::fillHistograms
virtual StatusCode fillHistograms(const EventContext &context) const override
adds event to the monitoring histograms
TrigIDR4Mon::m_sctHits
int m_sctHits
Definition: TrigIDR4Mon.h:66
TrackFilter.h
base class for a single track selection filter allowing parameter setting for complex track selection
TrigIDR4Mon::m_sctHolesOffline
int m_sctHolesOffline
Definition: TrigIDR4Mon.h:86
TrigIDR4Mon::m_analysis_config
std::string m_analysis_config
Definition: TrigIDR4Mon.h:110
TIDARoiDescriptor.h
TrigIDR4Mon::m_releaseMetaData
std::string m_releaseMetaData
Definition: TrigIDR4Mon.h:106
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:45
TrigIDR4Mon::m_z0CutOffline
double m_z0CutOffline
Definition: TrigIDR4Mon.h:78
TrackMatchDeltaRCosmic.h
Associator_BestMatch.h
TrigIDR4Mon::m_pTCutOffline
double m_pTCutOffline
Definition: TrigIDR4Mon.h:74
TrigIDR4Mon::m_pTCut
double m_pTCut
Definition: TrigIDR4Mon.h:59
TrigIDR4Mon::m_chainNames
std::vector< std::string > m_chainNames
do we need this ??? why not the base class ???
Definition: TrigIDR4Mon.h:104
TrigIDR4Mon::m_filter_on_roi
bool m_filter_on_roi
Definition: TrigIDR4Mon.h:156
AthMonitorAlgorithm
Base class for Athena Monitoring Algorithms.
Definition: AthMonitorAlgorithm.h:39
TrigIDR4Mon::m_trtHitsOffline
int m_trtHitsOffline
Definition: TrigIDR4Mon.h:89
TrigIDR4Mon::m_etaCutOffline
double m_etaCutOffline
Definition: TrigIDR4Mon.h:75
TrigIDR4Mon
Definition: TrigIDR4Mon.h:37
TrigIDR4Mon::m_strawHits
int m_strawHits
Definition: TrigIDR4Mon.h:69
TIDDirectory.h
class to keep a directory for each object in a root sort of way, but needed to keep the root objects ...
GenericMonitoringTool.h
Efficiency1D.h
TrigIDR4Mon::m_siHitsOffline
int m_siHitsOffline
Definition: TrigIDR4Mon.h:80
TrigIDR4Mon::m_siHits
int m_siHits
Definition: TrigIDR4Mon.h:64
TrigIDR4Mon::m_pixHits
int m_pixHits
Definition: TrigIDR4Mon.h:65
TrigIDR4Mon::TrigIDR4Mon
TrigIDR4Mon(const std::string &name, ISvcLocator *pSvcLocator)
Definition: TrigIDR4Mon.cxx:27
TrigIDR4Mon::m_sctHitsOffline
int m_sctHitsOffline
Definition: TrigIDR4Mon.h:82
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrigIDR4Mon::m_buildNtuple
bool m_buildNtuple
Definition: TrigIDR4Mon.h:108
TrigIDR4Mon::m_vtxIndex
int m_vtxIndex
if performing the vertex analysis, the index of the offline vertex to look for
Definition: TrigIDR4Mon.h:134
AthMonitorAlgorithm.h
TrigIDR4Mon::m_keepAllEvents
bool m_keepAllEvents
kepp events even if they fail the requested trigger chains
Definition: TrigIDR4Mon.h:124
TrigIDR4Mon::m_fiducial_radius
double m_fiducial_radius
ntuple building variables
Definition: TrigIDR4Mon.h:152
TrigIDR4Mon::m_trackdummykeys
SG::ReadHandleKeyArray< xAOD::TrackParticleContainer > m_trackdummykeys
Definition: TrigIDR4Mon.h:160
TrigIDR4Mon::m_initialisePerRun
bool m_initialisePerRun
Definition: TrigIDR4Mon.h:115
TrigIDR4Mon::m_firstRun
bool m_firstRun
Definition: TrigIDR4Mon.h:116
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
TrigIDR4Mon::m_matchR
double m_matchR
Definition: TrigIDR4Mon.h:93
TrigIDR4Mon::m_doTauThreeProng
double m_doTauThreeProng
Definition: TrigIDR4Mon.h:73
TrigIDR4Mon::m_containTracks
bool m_containTracks
do we want basic, or rigorous roi track containment
Definition: TrigIDR4Mon.h:146
TrigIDR4Mon::m_tdt
ToolHandle< Trig::TrigDecisionTool > m_tdt
Definition: TrigIDR4Mon.h:96
TrigIDR4Mon::m_shifter
bool m_shifter
determine whether this should be treated as a shifter chain
Definition: TrigIDR4Mon.h:140
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
TrigIDR4Mon::m_fileopen
bool m_fileopen
if an ntple file open?
Definition: TrigIDR4Mon.h:127
TrigIDR4Mon::m_tauEtCutOffline
double m_tauEtCutOffline
Definition: TrigIDR4Mon.h:72
TrigIDR4Mon::m_strawHitsOffline
int m_strawHitsOffline
Definition: TrigIDR4Mon.h:90
TrigIDR4Mon::m_associators
std::vector< TrackAssociator * > m_associators
Definition: TrigIDR4Mon.h:99
TrigIDR4Mon::m_vtxdummykeys
SG::ReadHandleKeyArray< xAOD::VertexContainer > m_vtxdummykeys
Definition: TrigIDR4Mon.h:162
TrigIDR4Mon::m_trtHits
int m_trtHits
Definition: TrigIDR4Mon.h:68
TrigIDR4Mon::m_requireDecision
bool m_requireDecision
Definition: TrigIDR4Mon.h:154
TrigIDR4Mon::m_genericFlag
bool m_genericFlag
Definition: TrigIDR4Mon.h:113
TrigIDR4Mon::bookHistograms
virtual StatusCode bookHistograms()
Definition: TrigIDR4Mon.cxx:169
VertexContainer.h
TrigIDR4Mon::m_pixHolesOffline
int m_pixHolesOffline
Definition: TrigIDR4Mon.h:85
TrigIDR4Mon::m_sliceTag
std::string m_sliceTag
additional string for the histogram directory
Definition: TrigIDR4Mon.h:143
TrigIDR4Mon::m_z0Cut
double m_z0Cut
Definition: TrigIDR4Mon.h:62
TrigIDR4Mon::m_pixHitsOffline
int m_pixHitsOffline
Definition: TrigIDR4Mon.h:81
TrackMatchDeltaR.h
TrigIDR4Mon::m_runPurity
bool m_runPurity
also run purity analyses
Definition: TrigIDR4Mon.h:137
TrigIDR4Mon::m_filters
std::vector< TrackFilter * > m_filters
Definition: TrigIDR4Mon.h:98
TrigIDR4Mon::m_selectTruthPdgId
int m_selectTruthPdgId
Definition: TrigIDR4Mon.h:119
TrigIDR4Mon::m_monTools
ToolHandleArray< GenericMonitoringTool > m_monTools
Definition: TrigIDR4Mon.h:158
TrigIDR4Mon::addMonGroupFromBase
void addMonGroupFromBase(const std::string &)
Definition: TrigIDR4Mon.h:52
TrigIDR4Mon::m_matchPhi
double m_matchPhi
Definition: TrigIDR4Mon.h:94
TrigIDR4Mon::m_mind0CutOffline
double m_mind0CutOffline
Definition: TrigIDR4Mon.h:77
TrigIDR4Mon::~TrigIDR4Mon
virtual ~TrigIDR4Mon()
Definition: TrigIDR4Mon.cxx:121
TrigIDR4Mon::m_legacy
bool m_legacy
Definition: TrigIDR4Mon.h:148
TrigIDR4Mon::initialize
virtual StatusCode initialize() override
initialize
Definition: TrigIDR4Mon.cxx:133
Filter_Track.h
TrigIDR4Mon::m_siHolesOffline
int m_siHolesOffline
Definition: TrigIDR4Mon.h:87
TrackParticleContainer.h
TrigIDR4Mon::m_useHighestPT
bool m_useHighestPT
use only the highest pt tracks
Definition: TrigIDR4Mon.h:130
TrigIDR4Mon::m_d0CutOffline
double m_d0CutOffline
Definition: TrigIDR4Mon.h:76