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

#include <AnalysisConfig_Ntuple.h>

Inheritance diagram for AnalysisConfig_Ntuple:
Collaboration diagram for AnalysisConfig_Ntuple:

Public Member Functions

 AnalysisConfig_Ntuple (const std::vector< std::string > &chainNames, const std::string &outputFileName="TrkNtuple.root", double tauEtCutOffline=0.0, int TruthPdgId=0, bool keepAllEvents=false, int parentTruthPdgId=0)
 AnalysisConfig_Ntuple (const AnalysisConfig_Ntuple &)
AnalysisConfig_Ntuple & operator= (const AnalysisConfig_Ntuple &)
virtual ~AnalysisConfig_Ntuple ()
void set_ptmin (double d=0)
size_t get_jets (Trig::FeatureContainer::combination_const_iterator citr, std::vector< TrackTrigObject > &objects, const std::string &key="")
 retrieve the jets from the Roi
void addTestChain (const std::string &chainName, const std::string &type, const std::string &key)
void addReferenceChain (const std::string &chainName, const std::string &type, const std::string &key)
void addSelectionChain (const std::string &chainName, const std::string &type, const std::string &key)
void addTestFilter (TrackFilter *filter)
void addReferenceFilter (TrackFilter *filter)
void addSelectionFilter (TrackFilter *filter)
virtual void initialize (AthReentrantAlgorithm *p, ToolHandle< Trig::TrigDecisionTool > *tdt)
virtual void execute ()
const std::string & name () const
const std::string testChains () const
const std::string referenceChains () const
const std::string selectionChains () const
const TrackAnalysis * analysis () const
void setMCTruth (bool b=true)
bool mcTruth () const
void setBeamX (double d)
void setBeamY (double d)
void setBeamZ (double d)
double beamX () const
double beamY () const
double beamZ () const
bool genericFlag () const
void setGenericFlag (bool b)
const std::string & releaseData () const
void keepAllEvents (bool b)
void setUseHighestPT (bool b)
bool getUseHighestPT () const
void setVtxIndex (int i)
int getVtxIndex () const
bool filterOnRoi () const
bool setFilterOnRoi (bool b)
void setRequireDecision (bool b)
bool requireDecision () const

Protected Member Functions

virtual void loop ()
virtual void book ()
 setup the analysis the analysis, retrieve the tools etc
virtual void finalize ()
 finalise the analysis - take ratios for efficiencies etc
std::pair< typename Collection::const_iterator, typename Collection::const_iterator > getCollection (const ElementLink< TrigRoiDescriptorCollection > &roi_link, const std::string &key="")
 new MT feature access
bool select (std::vector< TIDA::Vertex > &vertices, xAOD::VertexContainer::const_iterator vtx_start, xAOD::VertexContainer::const_iterator vtx_end)
bool selectTracks (TrigTrackSelector *selector, const ElementLink< TrigRoiDescriptorCollection > &roi_link, const std::string &key="")
StatusCode retrieve (Collection const *&collection, const std::string &key="")
bool selectTracksNotEmpty (TrigTrackSelector *selector, const std::string &key)
std::vector< double > getBeamspot (const std::string &key)
unsigned processElectrons (TrigTrackSelector &selectorRef, std::vector< TrackTrigObject > *elevec=0, const unsigned int selection=0, bool raw_track=false, double ETOffline=0, const std::string &containerName="Electrons")
 select offline electrons
unsigned processMuons (TrigTrackSelector &selectorRef, const unsigned int selection=0, double ETOffline=0, const std::string &containerName="Muons")
 select offlinqe muons
unsigned processTaus (TrigTrackSelector &selectorRef, std::vector< TrackTrigObject > *tauvec=0, const unsigned selection=0, int requireNtracks=0, double EtCutOffline=0, const std::string &containerName="TauJets")
 select offline taus

Protected Attributes

bool m_useBeamCondSvc
TIDA::Event * m_event
TFile * m_File
TTree * m_Tree
TDirectory * m_Dir
std::vector< ChainString > m_chainNames
bool m_doOffline
bool m_doVertices
bool m_doMuons
bool m_doMuonsSP
std::vector< std::string > m_muonType
std::vector< bool > m_muonIsLRT
std::vector< std::string > m_electronType
std::vector< std::string > m_rawElectrons
std::vector< bool > m_electronIsLRT
std::vector< std::string > m_tauType
std::vector< std::string > m_tauProngs
std::vector< std::string > m_vertexType
bool m_doBjets
bool m_hasTruthMap
bool m_tauEtCutOffline
std::string m_outputFileName
int m_TruthPdgId
bool m_finalised
bool m_printInfo
double m_ptmin
int m_parentTruthPdgId
AthReentrantAlgorithm * m_provider
ToolHandle< Trig::TrigDecisionTool > * m_tdt
std::string m_analysisInstanceName
std::vector< std::vector< std::string > > m_types
std::vector< std::vector< std::string > > m_keys
std::vector< std::vector< TrackFilter * > > m_filters
std::string m_refChainName
std::string m_refChainKey
std::string m_testChainName
std::string m_testChainKey
TrigTrackSelector * m_selectorRef
TrigTrackSelector * m_selectorTest
TrigTrackSelector * m_selectorSel
TrackAssociator * m_associator
TrackAnalysis * m_analysis
bool m_mcTruth
double m_beamX
double m_beamY
double m_beamZ
int m_genericFlag
std::string m_releaseData
bool m_keepAllEvents
bool m_useHighestPT
int m_vtxIndex
bool m_filterOnRoi
bool m_requireDecision

Detailed Description

Definition at line 32 of file AnalysisConfig_Ntuple.h.

Constructor & Destructor Documentation

◆ AnalysisConfig_Ntuple() [1/2]

AnalysisConfig_Ntuple::AnalysisConfig_Ntuple ( const std::vector< std::string > & chainNames,
const std::string & outputFileName = "TrkNtuple.root",
double tauEtCutOffline = 0.0,
int TruthPdgId = 0,
bool keepAllEvents = false,
int parentTruthPdgId = 0 )
inline

leave in this debug printout ... std::cout << "AnalysisConfig_Ntuple::AnalysisConfig_Ntuple() " << chainNames.size() << std::endl;

this is now i nthe base class

abuse the ChainString, now use the roi as the default third field

abuse the ChainString, now use the roi as the default third field

provider is not assigned yet ...

Definition at line 43 of file AnalysisConfig_Ntuple.h.

44 :
46 "", "", "",
47 "", "", "",
48 "", "", "",
49 0, 0, 0,
50 0,
51 0 ),
52 m_useBeamCondSvc(false),
53 m_event(0),
54 m_File(0),
55 m_Tree(0),
56 m_Dir(0),
57 m_doOffline(false),
58 m_doVertices(false),
59 m_doMuons(false),
60 m_doMuonsSP(false),
61 m_muonType(),
66 m_tauType(),
69 m_doBjets(false),
70 m_hasTruthMap(false),
71 m_tauEtCutOffline(tauEtCutOffline),
72 m_TruthPdgId(TruthPdgId),
73 m_finalised(true),
74 m_printInfo(true),
75 m_ptmin(0),
76 m_parentTruthPdgId(parentTruthPdgId)
77 {
80
82
83 for ( unsigned i=0 ; i<chainNames.size() ; i++ ) {
84
85 if ( chainNames[i].empty() ) continue;
86
87 ChainString chain(chainNames[i]);
88
89 std::string cs = chain.head();
90
91 if ( cs=="Offline" ) m_doOffline = true;
92 else if ( cs=="Truth" ) m_mcTruth = true;
93 else if ( cs=="Vertex" ) {
94 m_vertexType.push_back(chain.tail());
95 m_doVertices = true;
96 }
97 else if ( cs=="MuonsSP" ) m_doMuonsSP = true;
98 else if ( cs=="Muons" ){
99 m_muonType.push_back(chain.tail());
100 if (chain.roi() == "LRT") m_muonIsLRT.push_back(true);
101 else m_muonIsLRT.push_back(false);
102 }
103 else if ( cs=="Electrons" ) {
104 m_electronType.push_back(chain.tail());
105 m_rawElectrons.push_back(chain.roi());
106
107 if (chain.roi() == "LRT") m_electronIsLRT.push_back(true); // more abuse
108 else m_electronIsLRT.push_back(false);
109 }
110 else if ( cs=="Taus" ) {
111 m_tauType.push_back(chain.tail());
112 m_tauProngs.push_back(chain.roi());
113 }
114 else if ( cs=="Bjets" ) m_doBjets = true;
115 else {
116
117 if ( cs!="" && cs.find("HLT")==std::string::npos ) {
119 // if ( m_provider ) m_provider->msg(MSG::WARNING) << "Unknown chain type: " << cs << endmsg;
120 // else std::cout << "Unknown chain type: " << cs << std::endl;
121 continue;
122 }
123
124 m_chainNames.push_back( chain );
125
126 }
127 }
128
129 m_event = new TIDA::Event();
131
132 }
static const std::string outputFileName
static const Attributes_t empty
std::vector< std::string > m_tauType
std::vector< std::string > m_muonType
std::vector< std::string > m_tauProngs
std::vector< ChainString > m_chainNames
std::vector< std::string > m_electronType
std::vector< std::string > m_rawElectrons
std::vector< bool > m_electronIsLRT
std::vector< bool > m_muonIsLRT
std::vector< std::string > m_vertexType
T_AnalysisConfig(const std::string &analysisInstanceName, const std::string &testChainName, const std::string &testType, const std::string &testKey, const std::string &referenceChainName, const std::string &referenceType, const std::string &referenceKey, const std::string &selectionChainName, const std::string &selectionType, const std::string &selectionKey, TrackFilter *testFilter, TrackFilter *referenceFilter, TrackFilter *selectionFilter, TrackAssociator *associator, TrackAnalysis *analysis)

◆ AnalysisConfig_Ntuple() [2/2]

AnalysisConfig_Ntuple::AnalysisConfig_Ntuple ( const AnalysisConfig_Ntuple & )

◆ ~AnalysisConfig_Ntuple()

virtual AnalysisConfig_Ntuple::~AnalysisConfig_Ntuple ( )
inlinevirtual

leave in this debug printout ... std::cout << "AnalysisConfig_Ntuple::~AnalysisConfig_Ntuple() running destructor" << std::endl;

Definition at line 138 of file AnalysisConfig_Ntuple.h.

138 {
141 if ( !m_finalised ) finalize();
142 delete m_event;
143 }
virtual void finalize()
finalise the analysis - take ratios for efficiencies etc

Member Function Documentation

◆ addReferenceChain()

void T_AnalysisConfig< AthReentrantAlgorithm >::addReferenceChain ( const std::string & chainName,
const std::string & type,
const std::string & key )
inlineinherited

Definition at line 157 of file T_AnalysisConfig.h.

157 {
158 m_chainNames[1].push_back(chainName); m_types[1].push_back(type); m_keys[1].push_back(key);
159 }
std::vector< std::vector< std::string > > m_chainNames
std::vector< std::vector< std::string > > m_types
std::vector< std::vector< std::string > > m_keys

◆ addReferenceFilter()

void T_AnalysisConfig< AthReentrantAlgorithm >::addReferenceFilter ( TrackFilter * filter)
inlineinherited

Definition at line 166 of file T_AnalysisConfig.h.

166{ m_filters[1].push_back(filter); }
std::vector< std::vector< TrackFilter * > > m_filters

◆ addSelectionChain()

void T_AnalysisConfig< AthReentrantAlgorithm >::addSelectionChain ( const std::string & chainName,
const std::string & type,
const std::string & key )
inlineinherited

Definition at line 161 of file T_AnalysisConfig.h.

161 {
162 m_chainNames[2].push_back(chainName); m_types[2].push_back(type); m_keys[2].push_back(key);
163 }

◆ addSelectionFilter()

void T_AnalysisConfig< AthReentrantAlgorithm >::addSelectionFilter ( TrackFilter * filter)
inlineinherited

Definition at line 167 of file T_AnalysisConfig.h.

167{ m_filters[2].push_back(filter); }

◆ addTestChain()

void T_AnalysisConfig< AthReentrantAlgorithm >::addTestChain ( const std::string & chainName,
const std::string & type,
const std::string & key )
inlineinherited

Definition at line 153 of file T_AnalysisConfig.h.

153 {
154 m_chainNames[0].push_back(chainName); m_types[0].push_back(type); m_keys[0].push_back(key);
155 }

◆ addTestFilter()

void T_AnalysisConfig< AthReentrantAlgorithm >::addTestFilter ( TrackFilter * filter)
inlineinherited

Definition at line 165 of file T_AnalysisConfig.h.

165{ m_filters[0].push_back(filter); }

◆ analysis()

const TrackAnalysis * T_AnalysisConfig< AthReentrantAlgorithm >::analysis ( ) const
inlineinherited

Definition at line 212 of file T_AnalysisConfig.h.

◆ beamX()

double T_AnalysisConfig< AthReentrantAlgorithm >::beamX ( ) const
inlineinherited

Definition at line 220 of file T_AnalysisConfig.h.

◆ beamY()

double T_AnalysisConfig< AthReentrantAlgorithm >::beamY ( ) const
inlineinherited

Definition at line 221 of file T_AnalysisConfig.h.

◆ beamZ()

double T_AnalysisConfig< AthReentrantAlgorithm >::beamZ ( ) const
inlineinherited

Definition at line 222 of file T_AnalysisConfig.h.

◆ book()

void AnalysisConfig_Ntuple::book ( )
protectedvirtual

setup the analysis the analysis, retrieve the tools etc

flag should be called m_fileIsNotOpen really, so is if m_fileIsNotOpen open file, if !m_fileIsNotOpen, then close file etc

save the current directory so we can return there after

create a brand new ntple

update the ntple from the file

go back to original directory

Reimplemented from T_AnalysisConfig< AthReentrantAlgorithm >.

Definition at line 161 of file AnalysisConfig_Ntuple.cxx.

161 {
162
163 m_provider->msg(MSG::INFO) << "AnalysisConfig_Ntuple::book() name " << name() << endmsg;
164
168 if ( !m_finalised ) {
169 m_provider->msg(MSG::INFO) << "AnalysisConfig_Ntuple::book() not booking " << name() << endmsg;
170 return;
171 }
172
173
174
175 // get the TriggerDecisionTool
176
177 if( m_tdt->retrieve().isFailure() ) {
178 m_provider->msg(MSG::FATAL) << " Unable to retrieve the TrigDecisionTool: Please check job options file" << endmsg;
179 // return StatusCode::FAILURE;
180 return;
181 }
182
183 m_provider->msg(MSG::INFO) << "␛[91;1m" << " Successfully retrieved the TrigDecisionTool" << "␛[m" << endmsg;
184 m_provider->msg(MSG::INFO) << "␛[91;1m" << " booking ntuple" << "␛[m" << endmsg;
185 m_provider->msg(MSG::INFO) << "␛[91;1m" << " trying to create new ntple file" << "␛[m" << endmsg;
186
188 TDirectory* dir = gDirectory;
189
190 static std::atomic<bool> first_open = true;
191
192 std::string outputFileName = m_outputFileName;
193
194 if ( genericFlag() ) {
195 static std::atomic<int> file_index = 0;
196 std::string::size_type pos = outputFileName.find(".root");
197 if ( pos != std::string::npos ) outputFileName.erase(pos, outputFileName.size());
198 char file_label[64];
199 sprintf( file_label, "-%04d.root", file_index++ );
200 outputFileName += file_label;
201 }
202
203 m_provider->msg(MSG::INFO) << "book() Writing to file " << outputFileName << endmsg;
204
205 if ( first_open || genericFlag() ) {
207 m_File = new TFile( outputFileName.c_str(), "recreate");
208
209 TTree* dataTree = new TTree("dataTree", "dataTree");
210 TString releaseData(m_releaseData.c_str());
211 dataTree->Branch( "ReleaseMetaData", "TString", &releaseData);
212 dataTree->Fill();
213 dataTree->Write("", TObject::kOverwrite);
214 delete dataTree;
215
216
217 m_Tree = new TTree("tree", "tree");
218 m_Tree->Branch( "TIDA::Event", "TIDA::Event", m_event, 6400, 1 );
219
220
221 }
222 else {
224 m_File = new TFile( outputFileName.c_str(), "update");
225 m_Tree = (TTree *)m_File->Get("tree");
226 m_Tree->SetBranchAddress( "TIDA::Event", &m_event );
227 }
228
230
231 first_open = false;
232
233
234 m_provider->msg(MSG::DEBUG) << "change directory " << name() << " " << dir->GetName() << endmsg;
235
236 // std::cout << "change directory " << name() << " " << dir->GetName() << std::endl;
238 dir->cd();
239
240 // gDirectory->pwd();
241
242 m_finalised = false; // flag we have an open file that is not yet finalised
243
244 m_provider->msg(MSG::INFO) << "AnalysisConfig_Ntuple::book() exiting" << endmsg;
245
246}
#define endmsg
ToolHandle< Trig::TrigDecisionTool > * m_tdt

◆ execute()

virtual void T_AnalysisConfig< AthReentrantAlgorithm >::execute ( )
inlinevirtualinherited

Definition at line 179 of file T_AnalysisConfig.h.

179 {
180 if ( !m_provider ) std::cerr << "ERROR T_AnalysisConfig::execute() called without initialising" << std::endl;
181 loop();
182 }

◆ filterOnRoi()

bool T_AnalysisConfig< AthReentrantAlgorithm >::filterOnRoi ( ) const
inlineinherited

Definition at line 238 of file T_AnalysisConfig.h.

◆ finalize()

void AnalysisConfig_Ntuple::finalize ( )
protectedvirtual

finalise the analysis - take ratios for efficiencies etc

NB: flag this round the other way for multiple files

flag that we have finalised and closed this file

Reimplemented from T_AnalysisConfig< AthReentrantAlgorithm >.

Definition at line 252 of file AnalysisConfig_Ntuple.cxx.

252 {
253
254 // gDirectory->pwd();
255
256
258 if ( m_finalised ) {
259 m_provider->msg(MSG::INFO) << "AnalysisConfig_Ntuple::finalise() flagged, not finalising " << m_provider->name() << "\t" << m_Tree->GetEntries() << " entries" << endmsg;
260 return;
261 }
262
263 m_provider->msg(MSG::INFO) << "AnalysisConfig_Ntuple::finalise() writing " << m_provider->name() << "\t" << m_Tree->GetEntries() << " entries" << endmsg;
264
265 TDirectory* directory = gDirectory;
266
267 // std::cout << "change directory " << name() << " " << m_Dir->GetName() << std::endl;
268
269 m_provider->msg(MSG::DEBUG) << "change directory " << name() << " " << m_Dir->GetName() << endmsg;
270
271
272 m_Dir->cd();
273
274 // gDirectory->pwd();
275
276 m_Tree->Write("", TObject::kOverwrite);
277
278 // m_File->Write();
279 if ( m_File ) m_File->Close();
280
281
282 m_finalised = true;
283
284 // m_Tree "belongs" to the m_File so was (possibly) deleted on the m_File->Close();
285 // so don't delete it !
286 // delete m_Tree;
287 delete m_File;
288
289 m_Tree = 0;
290 m_File = 0;
291
292 // f.Write();
293 // f.Close();
294
295 // std::cout << "change directory " << name() << " " << directory->GetName() << std::endl;
296
297 directory->cd();
298
299 // gDirectory->pwd();
300
301}
str directory
Definition DeMoScan.py:78

◆ genericFlag()

bool T_AnalysisConfig< AthReentrantAlgorithm >::genericFlag ( ) const
inlineinherited

Definition at line 224 of file T_AnalysisConfig.h.

◆ get_jets()

size_t AnalysisConfig_Ntuple::get_jets ( Trig::FeatureContainer::combination_const_iterator citr,
std::vector< TrackTrigObject > & objects,
const std::string & key = "" )

retrieve the jets from the Roi

Definition at line 107 of file AnalysisConfig_Ntuple.cxx.

108 {
109
110 objects.clear();
111
112 const std::vector< Trig::Feature<xAOD::JetContainer> > jetfeatures = citr->get<xAOD::JetContainer>( key, TrigDefs::alsoDeactivateTEs );
113
114 if ( jetfeatures.empty() ) return 0;
115
116 for ( size_t ifeature=0 ; ifeature<jetfeatures.size() ; ifeature++ ) {
117 Trig::Feature<xAOD::JetContainer> jetfeature = jetfeatures.at(ifeature);
118
119 if ( jetfeature.empty() ) continue;
120
121 const xAOD::JetContainer* jets = jetfeature.cptr();
122
123 if ( jets == 0 ) continue;
124
126
127 for ( ; jitr!=jets->end() ; ++jitr ) {
128
129 const xAOD::Jet* ajet = (*jitr);
130
131 long unsigned jetid = (unsigned long)ajet;
132
133 TrackTrigObject jet = TrackTrigObject( ajet->eta(), ajet->phi(), ajet->pt(), 0, ajet->type(), jetid );
134
135 objects.push_back( jet );
136
137 }
138 }
139
140 return objects.size();
141
142}
DataModel_detail::const_iterator< DataVector > const_iterator
Definition DataVector.h:861
const T * cptr() const
explicit conversion to object
Definition Feature.h:171
bool empty() const
test method to check if the object is truly there
Definition Feature.h:197
virtual double phi() const
The azimuthal angle ( ) of the particle.
Definition Jet_v1.cxx:54
virtual double pt() const
The transverse momentum ( ) of the particle.
Definition Jet_v1.cxx:44
virtual double eta() const
The pseudorapidity ( ) of the particle.
Definition Jet_v1.cxx:49
virtual Type::ObjectType type() const
The type of the object as a simple enumeration.
Definition Jet_v1.cxx:85
Jet_v1 Jet
Definition of the current "jet version".
JetContainer_v1 JetContainer
Definition of the current "jet container version".

◆ getBeamspot()

std::vector< double > T_AnalysisConfig< AthReentrantAlgorithm >::getBeamspot ( const std::string & key)
inlineprotectedinherited

Definition at line 585 of file T_AnalysisConfig.h.

585 {
586 const Collection* collection = 0;
588
589 if ( key!="" ) {
590 if ( m_provider->evtStore()->template contains<Collection>( key ) ) {
592 if( sc.isSuccess() && collection ) {
593 m_provider->msg(MSG::DEBUG) << "SG Collection->size() " << collection->size() << " (" << key << ")" << endmsg;
594
597 if ( trackitr!=trackend ) {
598 v.resize(3);
599 v[0] = (*trackitr)->vx();
600 v[1] = (*trackitr)->vy();
601 v[2] = (*trackitr)->vz();
602 return v;
603 } // only need to look at the first track
604 }
605 }
606 }
607 return v;
608 }
StatusCode retrieve(Collection const *&collection, const std::string &key="")

◆ getCollection()

std::pair< typename Collection::const_iterator, typename Collection::const_iterator > T_AnalysisConfig< AthReentrantAlgorithm >::getCollection ( const ElementLink< TrigRoiDescriptorCollection > & roi_link,
const std::string & key = "" )
inlineprotectedinherited

new MT feature access

will need this printout for debugging the feature access, so leave this commented until it has been properly debugged, then it can be removed

will not use the te name here, but keep it on just the same for the time being, for subsequent development

Definition at line 253 of file T_AnalysisConfig.h.

254 {
255
258 // std::cout << "try " << key << "\t" << m_provider->evtStore()->template transientContains<Collection>(key) << std::endl;
259
264 size_t pos = key_collection.find("/");
265 if ( pos!=std::string::npos ) {
266 key_collection = key.substr( pos+1, key.size()-pos );
267 key_tename = key.substr( 0, pos );
268 }
269
272
274
276 const std::string* keyStr = m_provider->evtStore()->keyToString(roi_link.key(), checkCLID);
277 m_provider->msg(MSG::DEBUG) << "Requesting range over (" << key << ") associated to ROI from " << (keyStr == nullptr ? "UNKNOWN" : *keyStr) << endmsg;
278
279 itrpair = (*m_tdt)->associateToEventView( handle, roi_link );
280
281 return itrpair;
282 }

◆ getUseHighestPT()

bool T_AnalysisConfig< AthReentrantAlgorithm >::getUseHighestPT ( ) const
inlineinherited

Definition at line 233 of file T_AnalysisConfig.h.

◆ getVtxIndex()

int T_AnalysisConfig< AthReentrantAlgorithm >::getVtxIndex ( ) const
inlineinherited

Definition at line 236 of file T_AnalysisConfig.h.

◆ initialize()

virtual void T_AnalysisConfig< AthReentrantAlgorithm >::initialize ( AthReentrantAlgorithm * p,
ToolHandle< Trig::TrigDecisionTool > * tdt )
inlinevirtualinherited

Definition at line 170 of file T_AnalysisConfig.h.

170 {
171 m_provider = p;
172 m_tdt = tdt;
173 if ( m_tdt==0 ) m_analysis->initialise();
174
175 }

◆ keepAllEvents()

void T_AnalysisConfig< AthReentrantAlgorithm >::keepAllEvents ( bool b)
inlineinherited

◆ loop()

void AnalysisConfig_Ntuple::loop ( )
protectedvirtual

Implements T_AnalysisConfig< AthReentrantAlgorithm >.

Reimplemented in AnalysisConfigMT_Ntuple.

Definition at line 147 of file AnalysisConfig_Ntuple.cxx.

147 {
148#ifdef USE_DATE_TIME_STAMP
149 m_provider->msg(MSG::INFO) << "␛[91;1m" << "AnalysisConfig_Ntuple::loop() for " << m_analysisInstanceName
150 << " compiled " << __DATE__ << " " << __TIME__ << "\t: " << date() << "␛[m" << endmsg;
151#endif
152 m_provider->msg(MSG::ERROR) << "␛[91;1m" << "This should no longer be called" << m_analysisInstanceName << endmsg;
153
154}
std::string date()
sadly, includes a return at the end
Definition hcg.cxx:60

◆ mcTruth()

bool T_AnalysisConfig< AthReentrantAlgorithm >::mcTruth ( ) const
inlineinherited

Definition at line 215 of file T_AnalysisConfig.h.

215{ return m_mcTruth; }

◆ name()

const std::string & T_AnalysisConfig< AthReentrantAlgorithm >::name ( ) const
inlineinherited

Definition at line 189 of file T_AnalysisConfig.h.

◆ operator=()

AnalysisConfig_Ntuple & AnalysisConfig_Ntuple::operator= ( const AnalysisConfig_Ntuple & )

◆ processElectrons()

unsigned T_AnalysisConfig< AthReentrantAlgorithm >::processElectrons ( TrigTrackSelector & selectorRef,
std::vector< TrackTrigObject > * elevec = 0,
const unsigned int selection = 0,
bool raw_track = false,
double ETOffline = 0,
const std::string & containerName = "Electrons" )
inlineprotectedinherited

select offline electrons

Definition at line 654 of file T_AnalysisConfig.h.

660 {
661
662 m_provider->msg(MSG::DEBUG) << "Fetching offline electrons: " << containerName << endmsg;
663
664 selectorRef.clear();
665
667
668 const Container* container = 0;
669
670 if( ! m_provider->evtStore()->template contains<Container>(containerName) ) {
671 m_provider->msg(MSG::WARNING) << "Error No Electron Container " << containerName << " !" << endmsg;
672 return 0;
673 }
674
676 if( sc.isFailure() || !container ) {
677 m_provider->msg(MSG::WARNING) << "Error retrieving container: " << containerName << " !" << endmsg;
678 return 0;
679 }
680
681 m_provider->msg(MSG::DEBUG) << "Event with " << container->size() << " Electron object(s) " << endmsg;
682
685
686 for( ; elec!=elec_end ; ++elec ){
687 //m_provider->msg(MSG::DEBUG) << " Electron " << (*elec)
688 // << ", eta " << (*elec)->eta()
689 // << ", phi " << (*elec)->phi()
690 // << ", ET " << (*elec)->pt()
691 // << ", author " << (*elec)->author()
692 // << ", trackParticle " << (*elec)->trackParticle()
693 // << ", conversion " << (*elec)->conversion()
694 // << ", mediumPP " << ((*elec)->isem(egammaPID::ElectronMediumPP)==0)
695 // << endmsg;
696
697 bool good_electron = false;
699
700 if (good_electron) {
701 const xAOD::Electron_v1& eleduff = *(*elec);
702 long unsigned eleid = (unsigned long)(&eleduff) ;
703 TrackTrigObject eleobj = TrackTrigObject( (*elec)->eta(),
704 (*elec)->phi(),
705 (*elec)->pt(),
706 0,
707 (*elec)->type(),
708 eleid );
709
710 bool trk_added ;
712 else trk_added = selectorRef.selectTrack( (*elec)->trackParticle() );
713
714 if (trk_added) eleobj.addChild( selectorRef.tracks().back()->id() );
715 if (elevec) elevec->push_back( eleobj );
716 }
717 }
718
719 return selectorRef.tracks().size();
720 }
bool isGoodOffline(const xAOD::Electron &elec, const unsigned int selection=0, double ETOffline=0)

◆ processMuons()

unsigned T_AnalysisConfig< AthReentrantAlgorithm >::processMuons ( TrigTrackSelector & selectorRef,
const unsigned int selection = 0,
double ETOffline = 0,
const std::string & containerName = "Muons" )
inlineprotectedinherited

select offlinqe muons

Definition at line 727 of file T_AnalysisConfig.h.

730 {
731
733
734 m_provider->msg(MSG::DEBUG) << " Offline muons (" << containerName << ")" << endmsg;
735
736 selectorRef.clear();
737
738 const Container* container = 0;
739
740 if( ! m_provider->evtStore()->template contains<Container>(containerName) ) {
741 m_provider->msg(MSG::WARNING) << "Error No MuonCollection" << containerName << " !" << endmsg;
742 return 0;
743 }
744
746 if( sc.isFailure() || !container ) {
747 m_provider->msg(MSG::WARNING) << "Error retrieving " << containerName << " !" << endmsg;
748 return 0;
749 }
750
751 auto muon = container->begin();
752 auto muon_end = container->end();
753
754 // std::cout << "SUTT Offline muons " << container->size() << "\t threshold " << ETOffline << std::endl;
755
756 for( ; muon!=muon_end ; ++muon ){
758 }
759
760
761 // std::cout << "SUTT found " << selectorRef.tracks().size() << " muons for " << containerName << std::endl;
762 m_provider->msg(MSG::DEBUG) << "found " << selectorRef.tracks().size() << " muons for " << containerName << endmsg;
763
764 return selectorRef.tracks().size();
765}

◆ processTaus()

unsigned T_AnalysisConfig< AthReentrantAlgorithm >::processTaus ( TrigTrackSelector & selectorRef,
std::vector< TrackTrigObject > * tauvec = 0,
const unsigned selection = 0,
int requireNtracks = 0,
double EtCutOffline = 0,
const std::string & containerName = "TauJets" )
inlineprotectedinherited

select offline taus

the previous version of the code ...

used the link to the Trk::Track

Definition at line 772 of file T_AnalysisConfig.h.

778 {
779
781
782 selectorRef.clear();
783
784 const Container* container = 0;
785
786 selectorRef.clear();
787
788 m_provider->msg(MSG::DEBUG) << " Offline taus " << containerName << endmsg;
789
790 if ( !m_provider->evtStore()->template contains<Container>(containerName)) {
791 m_provider->msg(MSG::WARNING) << " Offline taus not found" << endmsg;
792 return 0;
793 }
794
796 if (sc != StatusCode::SUCCESS) {
797 m_provider->msg(MSG::WARNING) << " Offline tau retrieval not successful" << endmsg;
798 return 0;
799 }
800
803
804
805 for ( ; tau!=tau_end ; ++tau ) {
806
807# ifndef XAODTAU_VERSIONS_TAUJET_V3_H
808 int N = (*tau)->nTracks();
809 // std::cout << "SUTT no tau detail " << N << "\t3prong: " << doThreeProng << std::endl;
810# else
811 int N=0;
812 (*tau)->detail( xAOD::TauJetParameters::nChargedTracks, N );
813 // std::cout << "SUTT tau detail: N " << N << "\t3prong: " << doThreeProng << std::endl;
814# endif
815
816 bool good_tau = false;
818
819 // std::cout << "SUTT tau ntracks: " << N << "\tgoodtau: " << good_tau << "\tpt: " << (*tau)->p4().Et() << "\t3prong: " << doThreeProng << std::endl;
820
821 if (good_tau){
822 const xAOD::TauJet_v3& duff = *(*tau);
823 long unsigned tauid = (unsigned long)(&duff) ;
824 TrackTrigObject tauobj = TrackTrigObject( (*tau)->eta(),
825 (*tau)->phi(),
826 (*tau)->pt(),
827 0,
828 (*tau)->type(),
829 tauid );
830
831 bool trk_added = false;
832
833 for ( unsigned i=N ; i-- ; ) {
834
835 std::vector< ElementLink<xAOD::TrackParticleContainer> > alink = (*tau)->track(i)->trackLinks();
836
837 trk_added = false;
838
839 for ( size_t ilink=0 ; ilink<alink.size() ; ilink++ ) {
840 if ( alink[ilink].isValid() ) trk_added = selectorRef.selectTrack((*alink[ilink]));
841 }
843 // trk_added = selectorRef.selectTrack((*tau)->track(i)->track());
845 if ( trk_added ) tauobj.addChild( selectorRef.tracks().back()->id() );
846 }
847 if ( tauvec ) tauvec->push_back( tauobj );
848 }
849 }
850
851 return selectorRef.tracks().size();
852
853}

◆ referenceChains()

const std::string T_AnalysisConfig< AthReentrantAlgorithm >::referenceChains ( ) const
inlineinherited

Definition at line 198 of file T_AnalysisConfig.h.

198 {
200 for(unsigned int i=0; i<m_chainNames[1].size(); i++)
201 name += (m_chainNames[1][i]+"::"+m_types[1][i]+"::"+m_keys[1][i]+" ");
202 return name;
203 }

◆ releaseData()

const std::string & T_AnalysisConfig< AthReentrantAlgorithm >::releaseData ( ) const
inlineinherited

Definition at line 227 of file T_AnalysisConfig.h.

227{ return m_releaseData; }

◆ requireDecision()

bool T_AnalysisConfig< AthReentrantAlgorithm >::requireDecision ( ) const
inlineinherited

Definition at line 242 of file T_AnalysisConfig.h.

◆ retrieve()

StatusCode T_AnalysisConfig< AthReentrantAlgorithm >::retrieve ( Collection const *& collection,
const std::string & key = "" )
inlineprotectedinherited

old implementation - leave in place until after the full validation ... return m_provider->evtStore()->retrieve( container, containerName);

commented code intentionally left for development purposes ... std::cout << "\t\t\t T_AnalysisConfig::selectTracks() - > TrackSelector" << std::endl;

Definition at line 524 of file T_AnalysisConfig.h.

524 {
527 if ( m_provider->evtStore()->template contains<Collection>( key ) ) {
529 if ( handle.isValid() ) {
532 collection = handle.cptr();
533 return StatusCode::SUCCESS;
534 }
535 }
536 return StatusCode::FAILURE;
537 }

◆ select()

bool T_AnalysisConfig< AthReentrantAlgorithm >::select ( std::vector< TIDA::Vertex > & vertices,
xAOD::VertexContainer::const_iterator vtx_start,
xAOD::VertexContainer::const_iterator vtx_end )
inlineprotectedinherited

variances

quality

Definition at line 296 of file T_AnalysisConfig.h.

298 {
299
301
302 for ( ; vtxitr!=vtx_end ; ++vtxitr ) {
303 if ( (*vtxitr)->vertexType()!=0 ) {
304 m_provider->msg(MSG::VERBOSE) << "\tvertex " << (*vtxitr)->z() << endmsg;
305
306 vertices.push_back( TIDA::Vertex( (*vtxitr)->x(),
307 (*vtxitr)->y(),
308 (*vtxitr)->z(),
310 (*vtxitr)->covariancePosition()(Trk::x,Trk::x),
311 (*vtxitr)->covariancePosition()(Trk::y,Trk::y),
312 (*vtxitr)->covariancePosition()(Trk::z,Trk::z),
313 (*vtxitr)->nTrackParticles(),
315 (*vtxitr)->chiSquared(),
316 (*vtxitr)->numberDoF() ) );
317
318 }
319 }
320
321 return true;
322 }

◆ selectionChains()

const std::string T_AnalysisConfig< AthReentrantAlgorithm >::selectionChains ( ) const
inlineinherited

Definition at line 205 of file T_AnalysisConfig.h.

205 {
207 for(unsigned int i=0; i<m_chainNames[2].size(); i++)
208 name += (m_chainNames[2][i]+"::"+m_types[2][i]+"::"+m_keys[2][i]+" ");
209 return name;
210 }

◆ selectTracks()

bool T_AnalysisConfig< AthReentrantAlgorithm >::selectTracks ( TrigTrackSelector * selector,
const ElementLink< TrigRoiDescriptorCollection > & roi_link,
const std::string & key = "" )
inlineprotectedinherited

will need this printout for debugging the feature access, so leave this commented until it has been properly debugged, then it can be removed

will not use the te name here, but keep it on just the same for the time being, for subsequent development

Definition at line 395 of file T_AnalysisConfig.h.

398 {
399
400
403 // std::cout << "try " << key << "\t" << m_provider->evtStore()->template transientContains<Collection>(key) << std::endl;
404
409 size_t pos = key_collection.find("/");
410 if ( pos!=std::string::npos ) {
411 key_collection = key.substr( pos+1, key.size()-pos );
412 key_tename = key.substr( 0, pos );
413 }
414
417
419
421 const std::string* keyStr = m_provider->evtStore()->keyToString(roi_link.key(), checkCLID);
422 m_provider->msg(MSG::DEBUG) << "Requesting range over (" << key << ") associated to ROI from " << (keyStr == nullptr ? "UNKNOWN" : *keyStr) << endmsg;
423
424 itrpair = (*m_tdt)->associateToEventView( handle, roi_link );
425
426 if ( itrpair.first != itrpair.second ) {
427 selector->selectTracks( itrpair.first, itrpair.second );
428 return true;
429 }
430 else {
431 m_provider->msg(MSG::DEBUG) << "TDT TrackFeature collection (" << key << ") is empty " << endmsg;
432 return false;
433 }
434 }
bool selectTracks(TrigTrackSelector *selector, const ElementLink< TrigRoiDescriptorCollection > &roi_link, const std::string &key="")

◆ selectTracksNotEmpty()

bool T_AnalysisConfig< AthReentrantAlgorithm >::selectTracksNotEmpty ( TrigTrackSelector * selector,
const std::string & key )
inlineprotectedinherited

Definition at line 559 of file T_AnalysisConfig.h.

559 {
560 const Collection* collection = nullptr;
561 if ( key.empty() ) return false;
562 if ( !m_provider->evtStore()->template contains<Collection>( key ) ) return false;
563
565
566 if ( !( sc.isSuccess() && collection ) ) return false;
567
568 m_provider->msg(MSG::DEBUG) << "SG Collection->size() " << collection->size() << " (" << key << ")" << endmsg;
569
570 // added to fix muon samples bug
571 if ( collection->size() == 0 ) {
572 m_provider->msg(MSG::WARNING) << "no particles in collection" << endmsg;
573 return false;
574 }
575
577 return true;
578 }

◆ set_ptmin()

void AnalysisConfig_Ntuple::set_ptmin ( double d = 0)
inline

Definition at line 145 of file AnalysisConfig_Ntuple.h.

◆ setBeamX()

void T_AnalysisConfig< AthReentrantAlgorithm >::setBeamX ( double d)
inlineinherited

Definition at line 217 of file T_AnalysisConfig.h.

217{ m_beamX=d; }

◆ setBeamY()

void T_AnalysisConfig< AthReentrantAlgorithm >::setBeamY ( double d)
inlineinherited

Definition at line 218 of file T_AnalysisConfig.h.

218{ m_beamY=d; }

◆ setBeamZ()

void T_AnalysisConfig< AthReentrantAlgorithm >::setBeamZ ( double d)
inlineinherited

Definition at line 219 of file T_AnalysisConfig.h.

219{ m_beamZ=d; }

◆ setFilterOnRoi()

bool T_AnalysisConfig< AthReentrantAlgorithm >::setFilterOnRoi ( bool b)
inlineinherited

Definition at line 239 of file T_AnalysisConfig.h.

239{ return m_filterOnRoi=b; }

◆ setGenericFlag()

void T_AnalysisConfig< AthReentrantAlgorithm >::setGenericFlag ( bool b)
inlineinherited

Definition at line 225 of file T_AnalysisConfig.h.

225{ m_genericFlag=b; }

◆ setMCTruth()

void T_AnalysisConfig< AthReentrantAlgorithm >::setMCTruth ( bool b = true)
inlineinherited

Definition at line 214 of file T_AnalysisConfig.h.

214{ m_mcTruth=b; }

◆ setRequireDecision()

void T_AnalysisConfig< AthReentrantAlgorithm >::setRequireDecision ( bool b)
inlineinherited

Definition at line 241 of file T_AnalysisConfig.h.

◆ setUseHighestPT()

void T_AnalysisConfig< AthReentrantAlgorithm >::setUseHighestPT ( bool b)
inlineinherited

Definition at line 232 of file T_AnalysisConfig.h.

232{ m_useHighestPT=b; }

◆ setVtxIndex()

void T_AnalysisConfig< AthReentrantAlgorithm >::setVtxIndex ( int i)
inlineinherited

Definition at line 235 of file T_AnalysisConfig.h.

235{ m_vtxIndex=i; }

◆ testChains()

const std::string T_AnalysisConfig< AthReentrantAlgorithm >::testChains ( ) const
inlineinherited

Definition at line 191 of file T_AnalysisConfig.h.

191 {
193 for(unsigned int i=0; i<m_chainNames[0].size(); i++)
194 name += (m_chainNames[0][i]+"::"+m_types[0][i]+"::"+m_keys[0][i]+" ");
195 return name;
196 }

Member Data Documentation

◆ m_analysis

TrackAnalysis* T_AnalysisConfig< AthReentrantAlgorithm >::m_analysis
protectedinherited

Definition at line 887 of file T_AnalysisConfig.h.

◆ m_analysisInstanceName

std::string T_AnalysisConfig< AthReentrantAlgorithm >::m_analysisInstanceName
protectedinherited

Definition at line 867 of file T_AnalysisConfig.h.

◆ m_associator

TrackAssociator* T_AnalysisConfig< AthReentrantAlgorithm >::m_associator
protectedinherited

Definition at line 886 of file T_AnalysisConfig.h.

◆ m_beamX

double T_AnalysisConfig< AthReentrantAlgorithm >::m_beamX
protectedinherited

Definition at line 891 of file T_AnalysisConfig.h.

◆ m_beamY

double T_AnalysisConfig< AthReentrantAlgorithm >::m_beamY
protectedinherited

Definition at line 891 of file T_AnalysisConfig.h.

◆ m_beamZ

double T_AnalysisConfig< AthReentrantAlgorithm >::m_beamZ
protectedinherited

Definition at line 891 of file T_AnalysisConfig.h.

◆ m_chainNames

std::vector<ChainString> AnalysisConfig_Ntuple::m_chainNames
protected

Definition at line 166 of file AnalysisConfig_Ntuple.h.

◆ m_Dir

TDirectory* AnalysisConfig_Ntuple::m_Dir
protected

Definition at line 164 of file AnalysisConfig_Ntuple.h.

◆ m_doBjets

bool AnalysisConfig_Ntuple::m_doBjets
protected

Definition at line 185 of file AnalysisConfig_Ntuple.h.

◆ m_doMuons

bool AnalysisConfig_Ntuple::m_doMuons
protected

Definition at line 170 of file AnalysisConfig_Ntuple.h.

◆ m_doMuonsSP

bool AnalysisConfig_Ntuple::m_doMuonsSP
protected

Definition at line 171 of file AnalysisConfig_Ntuple.h.

◆ m_doOffline

bool AnalysisConfig_Ntuple::m_doOffline
protected

Definition at line 168 of file AnalysisConfig_Ntuple.h.

◆ m_doVertices

bool AnalysisConfig_Ntuple::m_doVertices
protected

Definition at line 169 of file AnalysisConfig_Ntuple.h.

◆ m_electronIsLRT

std::vector<bool> AnalysisConfig_Ntuple::m_electronIsLRT
protected

Definition at line 178 of file AnalysisConfig_Ntuple.h.

◆ m_electronType

std::vector<std::string> AnalysisConfig_Ntuple::m_electronType
protected

Definition at line 176 of file AnalysisConfig_Ntuple.h.

◆ m_event

TIDA::Event* AnalysisConfig_Ntuple::m_event
protected

Definition at line 160 of file AnalysisConfig_Ntuple.h.

◆ m_File

TFile* AnalysisConfig_Ntuple::m_File
protected

Definition at line 162 of file AnalysisConfig_Ntuple.h.

◆ m_filterOnRoi

bool T_AnalysisConfig< AthReentrantAlgorithm >::m_filterOnRoi
protectedinherited

Definition at line 902 of file T_AnalysisConfig.h.

◆ m_filters

std::vector< std::vector<TrackFilter*> > T_AnalysisConfig< AthReentrantAlgorithm >::m_filters
protectedinherited

Definition at line 874 of file T_AnalysisConfig.h.

◆ m_finalised

bool AnalysisConfig_Ntuple::m_finalised
protected

Definition at line 193 of file AnalysisConfig_Ntuple.h.

◆ m_genericFlag

int T_AnalysisConfig< AthReentrantAlgorithm >::m_genericFlag
protectedinherited

Definition at line 893 of file T_AnalysisConfig.h.

◆ m_hasTruthMap

bool AnalysisConfig_Ntuple::m_hasTruthMap
protected

Definition at line 186 of file AnalysisConfig_Ntuple.h.

◆ m_keepAllEvents

bool T_AnalysisConfig< AthReentrantAlgorithm >::m_keepAllEvents
protectedinherited

Definition at line 896 of file T_AnalysisConfig.h.

◆ m_keys

std::vector< std::vector<std::string> > T_AnalysisConfig< AthReentrantAlgorithm >::m_keys
protectedinherited

Definition at line 872 of file T_AnalysisConfig.h.

◆ m_mcTruth

bool T_AnalysisConfig< AthReentrantAlgorithm >::m_mcTruth
protectedinherited

Definition at line 889 of file T_AnalysisConfig.h.

◆ m_muonIsLRT

std::vector<bool> AnalysisConfig_Ntuple::m_muonIsLRT
protected

Definition at line 174 of file AnalysisConfig_Ntuple.h.

◆ m_muonType

std::vector<std::string> AnalysisConfig_Ntuple::m_muonType
protected

Definition at line 173 of file AnalysisConfig_Ntuple.h.

◆ m_outputFileName

std::string AnalysisConfig_Ntuple::m_outputFileName
protected

Definition at line 189 of file AnalysisConfig_Ntuple.h.

◆ m_parentTruthPdgId

int AnalysisConfig_Ntuple::m_parentTruthPdgId
protected

Definition at line 201 of file AnalysisConfig_Ntuple.h.

◆ m_printInfo

bool AnalysisConfig_Ntuple::m_printInfo
protected

Definition at line 197 of file AnalysisConfig_Ntuple.h.

◆ m_provider

AthReentrantAlgorithm* T_AnalysisConfig< AthReentrantAlgorithm >::m_provider
protectedinherited

Definition at line 859 of file T_AnalysisConfig.h.

◆ m_ptmin

double AnalysisConfig_Ntuple::m_ptmin
protected

Definition at line 199 of file AnalysisConfig_Ntuple.h.

◆ m_rawElectrons

std::vector<std::string> AnalysisConfig_Ntuple::m_rawElectrons
protected

Definition at line 177 of file AnalysisConfig_Ntuple.h.

◆ m_refChainKey

std::string T_AnalysisConfig< AthReentrantAlgorithm >::m_refChainKey
protectedinherited

Definition at line 877 of file T_AnalysisConfig.h.

◆ m_refChainName

std::string T_AnalysisConfig< AthReentrantAlgorithm >::m_refChainName
protectedinherited

Definition at line 876 of file T_AnalysisConfig.h.

◆ m_releaseData

std::string T_AnalysisConfig< AthReentrantAlgorithm >::m_releaseData
protectedinherited

Definition at line 894 of file T_AnalysisConfig.h.

◆ m_requireDecision

bool T_AnalysisConfig< AthReentrantAlgorithm >::m_requireDecision
protectedinherited

Definition at line 904 of file T_AnalysisConfig.h.

◆ m_selectorRef

TrigTrackSelector* T_AnalysisConfig< AthReentrantAlgorithm >::m_selectorRef
protectedinherited

Definition at line 882 of file T_AnalysisConfig.h.

◆ m_selectorSel

TrigTrackSelector* T_AnalysisConfig< AthReentrantAlgorithm >::m_selectorSel
protectedinherited

Definition at line 884 of file T_AnalysisConfig.h.

◆ m_selectorTest

TrigTrackSelector* T_AnalysisConfig< AthReentrantAlgorithm >::m_selectorTest
protectedinherited

Definition at line 883 of file T_AnalysisConfig.h.

◆ m_tauEtCutOffline

bool AnalysisConfig_Ntuple::m_tauEtCutOffline
protected

Definition at line 187 of file AnalysisConfig_Ntuple.h.

◆ m_tauProngs

std::vector<std::string> AnalysisConfig_Ntuple::m_tauProngs
protected

Definition at line 181 of file AnalysisConfig_Ntuple.h.

◆ m_tauType

std::vector<std::string> AnalysisConfig_Ntuple::m_tauType
protected

Definition at line 180 of file AnalysisConfig_Ntuple.h.

◆ m_tdt

ToolHandle<Trig::TrigDecisionTool>* T_AnalysisConfig< AthReentrantAlgorithm >::m_tdt
protectedinherited

Definition at line 861 of file T_AnalysisConfig.h.

◆ m_testChainKey

std::string T_AnalysisConfig< AthReentrantAlgorithm >::m_testChainKey
protectedinherited

Definition at line 880 of file T_AnalysisConfig.h.

◆ m_testChainName

std::string T_AnalysisConfig< AthReentrantAlgorithm >::m_testChainName
protectedinherited

Definition at line 879 of file T_AnalysisConfig.h.

◆ m_Tree

TTree* AnalysisConfig_Ntuple::m_Tree
protected

Definition at line 163 of file AnalysisConfig_Ntuple.h.

◆ m_TruthPdgId

int AnalysisConfig_Ntuple::m_TruthPdgId
protected

Definition at line 191 of file AnalysisConfig_Ntuple.h.

◆ m_types

std::vector< std::vector<std::string> > T_AnalysisConfig< AthReentrantAlgorithm >::m_types
protectedinherited

Definition at line 871 of file T_AnalysisConfig.h.

◆ m_useBeamCondSvc

bool AnalysisConfig_Ntuple::m_useBeamCondSvc
protected

Definition at line 158 of file AnalysisConfig_Ntuple.h.

◆ m_useHighestPT

bool T_AnalysisConfig< AthReentrantAlgorithm >::m_useHighestPT
protectedinherited

Definition at line 898 of file T_AnalysisConfig.h.

◆ m_vertexType

std::vector<std::string> AnalysisConfig_Ntuple::m_vertexType
protected

Definition at line 183 of file AnalysisConfig_Ntuple.h.

◆ m_vtxIndex

int T_AnalysisConfig< AthReentrantAlgorithm >::m_vtxIndex
protectedinherited

Definition at line 900 of file T_AnalysisConfig.h.


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