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_Ntupleoperator= (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 TrackAnalysisanalysis () 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="ElectronAODCollection")
 select offline electrons
unsigned processMuons (TrigTrackSelector &selectorRef, const unsigned int selection=0, double ETOffline=0, const std::string &containerName="StacoMuonCollection")
 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::Eventm_event
TFile * m_File
TTree * m_Tree
TDirectory * m_Dir
std::vector< ChainStringm_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
AthReentrantAlgorithmm_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::string m_refChainName
std::string m_refChainKey
std::string m_testChainName
std::string m_testChainKey
std::vector< std::vector< TrackFilter * > > m_filters
TrigTrackSelectorm_selectorRef
TrigTrackSelectorm_selectorTest
TrigTrackSelectorm_selectorSel
TrackAssociatorm_associator
TrackAnalysism_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 201 of file T_AnalysisConfig.h.

201 {
202 m_chainNames[1].push_back(chainName); m_types[1].push_back(type); m_keys[1].push_back(key);
203 }
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 210 of file T_AnalysisConfig.h.

210{ 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 205 of file T_AnalysisConfig.h.

205 {
206 m_chainNames[2].push_back(chainName); m_types[2].push_back(type); m_keys[2].push_back(key);
207 }

◆ addSelectionFilter()

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

Definition at line 211 of file T_AnalysisConfig.h.

211{ 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 197 of file T_AnalysisConfig.h.

197 {
198 m_chainNames[0].push_back(chainName); m_types[0].push_back(type); m_keys[0].push_back(key);
199 }

◆ addTestFilter()

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

Definition at line 209 of file T_AnalysisConfig.h.

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

◆ analysis()

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

Definition at line 256 of file T_AnalysisConfig.h.

◆ beamX()

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

Definition at line 264 of file T_AnalysisConfig.h.

◆ beamY()

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

Definition at line 265 of file T_AnalysisConfig.h.

◆ beamZ()

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

Definition at line 266 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 223 of file T_AnalysisConfig.h.

223 {
224 if ( !m_provider ) std::cerr << "ERROR T_AnalysisConfig::execute() called without initialising" << std::endl;
225 loop();
226 }

◆ filterOnRoi()

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

Definition at line 282 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 268 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:838
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 629 of file T_AnalysisConfig.h.

629 {
630 const Collection* collection = 0;
632
633 if ( key!="" ) {
634 if ( m_provider->evtStore()->template contains<Collection>( key ) ) {
636 if( sc.isSuccess() && collection ) {
637 m_provider->msg(MSG::DEBUG) << "SG Collection->size() " << collection->size() << " (" << key << ")" << endmsg;
638
641 if ( trackitr!=trackend ) {
642 v.resize(3);
643 v[0] = (*trackitr)->vx();
644 v[1] = (*trackitr)->vy();
645 v[2] = (*trackitr)->vz();
646 return v;
647 } // only need to look at the first track
648 }
649 }
650 }
651 return v;
652 }
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 297 of file T_AnalysisConfig.h.

298 {
299
302 // std::cout << "try " << key << "\t" << m_provider->evtStore()->template transientContains<Collection>(key) << std::endl;
303
308 size_t pos = key_collection.find("/");
309 if ( pos!=std::string::npos ) {
310 key_collection = key.substr( pos+1, key.size()-pos );
311 key_tename = key.substr( 0, pos );
312 }
313
316
318
320 const std::string* keyStr = m_provider->evtStore()->keyToString(roi_link.key(), checkCLID);
321 m_provider->msg(MSG::DEBUG) << "Requesting range over (" << key << ") associated to ROI from " << (keyStr == nullptr ? "UNKNOWN" : *keyStr) << endmsg;
322
323 itrpair = (*m_tdt)->associateToEventView( handle, roi_link );
324
325 return itrpair;
326 }

◆ getUseHighestPT()

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

Definition at line 277 of file T_AnalysisConfig.h.

◆ getVtxIndex()

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

Definition at line 280 of file T_AnalysisConfig.h.

◆ initialize()

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

Definition at line 214 of file T_AnalysisConfig.h.

214 {
215 m_provider = p;
216 m_tdt = tdt;
217 if ( m_tdt==0 ) m_analysis->initialise();
218
219 }

◆ 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
149 m_provider->msg(MSG::INFO) << "␛[91;1m" << "AnalysisConfig_Ntuple::loop() for " << m_analysisInstanceName
150 << " compiled " << __DATE__ << " " << __TIME__ << "\t: " << date() << "␛[m" << endmsg;
151
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 259 of file T_AnalysisConfig.h.

259{ return m_mcTruth; }

◆ name()

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

Definition at line 233 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 = "ElectronAODCollection" )
inlineprotectedinherited

select offline electrons

Definition at line 698 of file T_AnalysisConfig.h.

708 {
709
710 m_provider->msg(MSG::DEBUG) << "Fetching offline electrons: " << containerName << endmsg;
711
712 selectorRef.clear();
713
714# ifdef XAODTRACKING_TRACKPARTICLE_H
716# else
718# endif
719
720
721 const Container* container = 0;
722
723 if( ! m_provider->evtStore()->template contains<Container>(containerName) ) {
724 m_provider->msg(MSG::WARNING) << "Error No Electron Container " << containerName << " !" << endmsg;
725 return 0;
726 }
727
729 if( sc.isFailure() || !container ) {
730 m_provider->msg(MSG::WARNING) << "Error retrieving container: " << containerName << " !" << endmsg;
731 return 0;
732 }
733
734 m_provider->msg(MSG::DEBUG) << "Event with " << container->size() << " Electron object(s) " << endmsg;
735
738
739 for( ; elec!=elec_end ; ++elec ){
740 //m_provider->msg(MSG::DEBUG) << " Electron " << (*elec)
741 // << ", eta " << (*elec)->eta()
742 // << ", phi " << (*elec)->phi()
743 // << ", ET " << (*elec)->pt()
744 // << ", author " << (*elec)->author()
745 // << ", trackParticle " << (*elec)->trackParticle()
746 // << ", conversion " << (*elec)->conversion()
747 // << ", mediumPP " << ((*elec)->isem(egammaPID::ElectronMediumPP)==0)
748 // << endmsg;
749
750 bool good_electron = false;
751# ifdef XAODTRACKING_TRACKPARTICLE_H
753# else
755# endif
756
757 if (good_electron) {
758 const xAOD::Electron_v1& eleduff = *(*elec);
759 long unsigned eleid = (unsigned long)(&eleduff) ;
760 TrackTrigObject eleobj = TrackTrigObject( (*elec)->eta(),
761 (*elec)->phi(),
762 (*elec)->pt(),
763 0,
764 (*elec)->type(),
765 eleid );
766
767 bool trk_added ;
769 else trk_added = selectorRef.selectTrack( (*elec)->trackParticle() );
770
771 if (trk_added) eleobj.addChild( selectorRef.tracks().back()->id() );
772 if (elevec) elevec->push_back( eleobj );
773 }
774 }
775
776 return selectorRef.tracks().size();
777 }
bool isGoodOffline(const Analysis::Electron &elec)

◆ processMuons()

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

select offlinqe muons

Definition at line 784 of file T_AnalysisConfig.h.

791 {
792
793# ifdef XAODTRACKING_TRACKPARTICLE_H
795# else
797# endif
798
799 m_provider->msg(MSG::DEBUG) << " Offline muons (" << containerName << ")" << endmsg;
800
801 selectorRef.clear();
802
803 const Container* container = 0;
804
805 if( ! m_provider->evtStore()->template contains<Container>(containerName) ) {
806 m_provider->msg(MSG::WARNING) << "Error No MuonCollection" << containerName << " !" << endmsg;
807 return 0;
808 }
809
811 if( sc.isFailure() || !container ) {
812 m_provider->msg(MSG::WARNING) << "Error retrieving " << containerName << " !" << endmsg;
813 return 0;
814 }
815
816 auto muon = container->begin();
817 auto muon_end = container->end();
818
819 // std::cout << "SUTT Offline muons " << container->size() << "\t threshold " << ETOffline << std::endl;
820
821 for( ; muon!=muon_end ; ++muon ){
822# ifdef XAODTRACKING_TRACKPARTICLE_H
824# else
825 if ( TIDA::isGoodOffline(*(*muon)) ) selectorRef.selectTrack((*muon)->inDetTrackParticle());
826# endif
827 }
828
829
830 // std::cout << "SUTT found " << selectorRef.tracks().size() << " muons for " << containerName << std::endl;
831 m_provider->msg(MSG::DEBUG) << "found " << selectorRef.tracks().size() << " muons for " << containerName << endmsg;
832
833 return selectorRef.tracks().size();
834}

◆ 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

Definition at line 841 of file T_AnalysisConfig.h.

847 {
848
850
851 selectorRef.clear();
852
853 const Container* container = 0;
854
855 selectorRef.clear();
856
857 m_provider->msg(MSG::DEBUG) << " Offline taus " << containerName << endmsg;
858
859 if ( !m_provider->evtStore()->template contains<Container>(containerName)) {
860 m_provider->msg(MSG::WARNING) << " Offline taus not found" << endmsg;
861 return 0;
862 }
863
865 if (sc != StatusCode::SUCCESS) {
866 m_provider->msg(MSG::WARNING) << " Offline tau retrieval not successful" << endmsg;
867 return 0;
868 }
869
872
873
874 for ( ; tau!=tau_end ; ++tau ) {
875
876# ifndef XAODTAU_VERSIONS_TAUJET_V3_H
877 int N = (*tau)->nTracks();
878 // std::cout << "SUTT no tau detail " << N << "\t3prong: " << doThreeProng << std::endl;
879# else
880 int N=0;
881 (*tau)->detail( xAOD::TauJetParameters::nChargedTracks, N );
882 // std::cout << "SUTT tau detail: N " << N << "\t3prong: " << doThreeProng << std::endl;
883# endif
884
885 bool good_tau = false;
887
888 // std::cout << "SUTT tau ntracks: " << N << "\tgoodtau: " << good_tau << "\tpt: " << (*tau)->p4().Et() << "\t3prong: " << doThreeProng << std::endl;
889
890 if (good_tau){
891 const xAOD::TauJet_v3& duff = *(*tau);
892 long unsigned tauid = (unsigned long)(&duff) ;
893 TrackTrigObject tauobj = TrackTrigObject( (*tau)->eta(),
894 (*tau)->phi(),
895 (*tau)->pt(),
896 0,
897 (*tau)->type(),
898 tauid );
899
900 bool trk_added = false;
901
902 for ( unsigned i=N ; i-- ; ) {
903# ifdef XAODTAU_TAUTRACK_H
904
905 std::vector< ElementLink<xAOD::TrackParticleContainer> > alink = (*tau)->track(i)->trackLinks();
906
907 trk_added = false;
908
909 for ( size_t ilink=0 ; ilink<alink.size() ; ilink++ ) {
910 if ( alink[ilink].isValid() ) trk_added = selectorRef.selectTrack((*alink[ilink]));
911 }
913 // trk_added = selectorRef.selectTrack((*tau)->track(i)->track());
915# else
916 trk_added = selectorRef.selectTrack((*tau)->track(i));
917# endif
918 if ( trk_added ) tauobj.addChild( selectorRef.tracks().back()->id() );
919 }
920 if ( tauvec ) tauvec->push_back( tauobj );
921 }
922 }
923
924 return selectorRef.tracks().size();
925
926}

◆ referenceChains()

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

Definition at line 242 of file T_AnalysisConfig.h.

242 {
244 for(unsigned int i=0; i<m_chainNames[1].size(); i++)
245 name += (m_chainNames[1][i]+"::"+m_types[1][i]+"::"+m_keys[1][i]+" ");
246 return name;
247 }

◆ releaseData()

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

Definition at line 271 of file T_AnalysisConfig.h.

271{ return m_releaseData; }

◆ requireDecision()

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

Definition at line 286 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 568 of file T_AnalysisConfig.h.

568 {
571 if ( m_provider->evtStore()->template contains<Collection>( key ) ) {
573 if ( handle.isValid() ) {
576 collection = handle.cptr();
577 return StatusCode::SUCCESS;
578 }
579 }
580 return StatusCode::FAILURE;
581 }

◆ 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 340 of file T_AnalysisConfig.h.

342 {
343
345
346 for ( ; vtxitr!=vtx_end ; ++vtxitr ) {
347 if ( (*vtxitr)->vertexType()!=0 ) {
348 m_provider->msg(MSG::VERBOSE) << "\tvertex " << (*vtxitr)->z() << endmsg;
349
350 vertices.push_back( TIDA::Vertex( (*vtxitr)->x(),
351 (*vtxitr)->y(),
352 (*vtxitr)->z(),
354 (*vtxitr)->covariancePosition()(Trk::x,Trk::x),
355 (*vtxitr)->covariancePosition()(Trk::y,Trk::y),
356 (*vtxitr)->covariancePosition()(Trk::z,Trk::z),
357 (*vtxitr)->nTrackParticles(),
359 (*vtxitr)->chiSquared(),
360 (*vtxitr)->numberDoF() ) );
361
362 }
363 }
364
365 return true;
366 }

◆ selectionChains()

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

Definition at line 249 of file T_AnalysisConfig.h.

249 {
251 for(unsigned int i=0; i<m_chainNames[2].size(); i++)
252 name += (m_chainNames[2][i]+"::"+m_types[2][i]+"::"+m_keys[2][i]+" ");
253 return name;
254 }

◆ 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 439 of file T_AnalysisConfig.h.

442 {
443
444
447 // std::cout << "try " << key << "\t" << m_provider->evtStore()->template transientContains<Collection>(key) << std::endl;
448
453 size_t pos = key_collection.find("/");
454 if ( pos!=std::string::npos ) {
455 key_collection = key.substr( pos+1, key.size()-pos );
456 key_tename = key.substr( 0, pos );
457 }
458
461
463
465 const std::string* keyStr = m_provider->evtStore()->keyToString(roi_link.key(), checkCLID);
466 m_provider->msg(MSG::DEBUG) << "Requesting range over (" << key << ") associated to ROI from " << (keyStr == nullptr ? "UNKNOWN" : *keyStr) << endmsg;
467
468 itrpair = (*m_tdt)->associateToEventView( handle, roi_link );
469
470 if ( itrpair.first != itrpair.second ) {
471 selector->selectTracks( itrpair.first, itrpair.second );
472 return true;
473 }
474 else {
475 m_provider->msg(MSG::DEBUG) << "TDT TrackFeature collection (" << key << ") is empty " << endmsg;
476 return false;
477 }
478 }
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 603 of file T_AnalysisConfig.h.

603 {
604 const Collection* collection = nullptr;
605 if ( key.empty() ) return false;
606 if ( !m_provider->evtStore()->template contains<Collection>( key ) ) return false;
607
609
610 if ( !( sc.isSuccess() && collection ) ) return false;
611
612 m_provider->msg(MSG::DEBUG) << "SG Collection->size() " << collection->size() << " (" << key << ")" << endmsg;
613
614 // added to fix muon samples bug
615 if ( collection->size() == 0 ) {
616 m_provider->msg(MSG::WARNING) << "no particles in collection" << endmsg;
617 return false;
618 }
619
621 return true;
622 }

◆ 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 261 of file T_AnalysisConfig.h.

261{ m_beamX=d; }

◆ setBeamY()

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

Definition at line 262 of file T_AnalysisConfig.h.

262{ m_beamY=d; }

◆ setBeamZ()

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

Definition at line 263 of file T_AnalysisConfig.h.

263{ m_beamZ=d; }

◆ setFilterOnRoi()

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

Definition at line 283 of file T_AnalysisConfig.h.

283{ return m_filterOnRoi=b; }

◆ setGenericFlag()

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

Definition at line 269 of file T_AnalysisConfig.h.

269{ m_genericFlag=b; }

◆ setMCTruth()

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

Definition at line 258 of file T_AnalysisConfig.h.

258{ m_mcTruth=b; }

◆ setRequireDecision()

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

Definition at line 285 of file T_AnalysisConfig.h.

◆ setUseHighestPT()

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

Definition at line 276 of file T_AnalysisConfig.h.

276{ m_useHighestPT=b; }

◆ setVtxIndex()

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

Definition at line 279 of file T_AnalysisConfig.h.

279{ m_vtxIndex=i; }

◆ testChains()

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

Definition at line 235 of file T_AnalysisConfig.h.

235 {
237 for(unsigned int i=0; i<m_chainNames[0].size(); i++)
238 name += (m_chainNames[0][i]+"::"+m_types[0][i]+"::"+m_keys[0][i]+" ");
239 return name;
240 }

Member Data Documentation

◆ m_analysis

TrackAnalysis* T_AnalysisConfig< AthReentrantAlgorithm >::m_analysis
protectedinherited

Definition at line 961 of file T_AnalysisConfig.h.

◆ m_analysisInstanceName

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

Definition at line 940 of file T_AnalysisConfig.h.

◆ m_associator

TrackAssociator* T_AnalysisConfig< AthReentrantAlgorithm >::m_associator
protectedinherited

Definition at line 960 of file T_AnalysisConfig.h.

◆ m_beamX

double T_AnalysisConfig< AthReentrantAlgorithm >::m_beamX
protectedinherited

Definition at line 965 of file T_AnalysisConfig.h.

◆ m_beamY

double T_AnalysisConfig< AthReentrantAlgorithm >::m_beamY
protectedinherited

Definition at line 965 of file T_AnalysisConfig.h.

◆ m_beamZ

double T_AnalysisConfig< AthReentrantAlgorithm >::m_beamZ
protectedinherited

Definition at line 965 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 976 of file T_AnalysisConfig.h.

◆ m_filters

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

Definition at line 954 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 967 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 970 of file T_AnalysisConfig.h.

◆ m_keys

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

Definition at line 945 of file T_AnalysisConfig.h.

◆ m_mcTruth

bool T_AnalysisConfig< AthReentrantAlgorithm >::m_mcTruth
protectedinherited

Definition at line 963 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 932 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 948 of file T_AnalysisConfig.h.

◆ m_refChainName

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

Definition at line 947 of file T_AnalysisConfig.h.

◆ m_releaseData

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

Definition at line 968 of file T_AnalysisConfig.h.

◆ m_requireDecision

bool T_AnalysisConfig< AthReentrantAlgorithm >::m_requireDecision
protectedinherited

Definition at line 978 of file T_AnalysisConfig.h.

◆ m_selectorRef

TrigTrackSelector* T_AnalysisConfig< AthReentrantAlgorithm >::m_selectorRef
protectedinherited

Definition at line 956 of file T_AnalysisConfig.h.

◆ m_selectorSel

TrigTrackSelector* T_AnalysisConfig< AthReentrantAlgorithm >::m_selectorSel
protectedinherited

Definition at line 958 of file T_AnalysisConfig.h.

◆ m_selectorTest

TrigTrackSelector* T_AnalysisConfig< AthReentrantAlgorithm >::m_selectorTest
protectedinherited

Definition at line 957 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 934 of file T_AnalysisConfig.h.

◆ m_testChainKey

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

Definition at line 951 of file T_AnalysisConfig.h.

◆ m_testChainName

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

Definition at line 950 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 944 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 972 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 974 of file T_AnalysisConfig.h.


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