Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
#include <T_AnalysisConfig.h>
|
| 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) |
|
| 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, TrackFilter *testFilter, TrackFilter *referenceFilter, TrackAssociator *associator, TrackAnalysis *analysis) |
|
virtual | ~T_AnalysisConfig () |
|
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 (Provider *p, ToolHandle< Trig::TrigDecisionTool > *tdt) |
|
virtual void | execute () |
|
virtual void | finalize () |
|
virtual void | book () |
|
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 | releaseData (const std::string &s) |
|
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 |
|
|
virtual void | loop ()=0 |
|
template<class Collection > |
std::pair< typename Collection::const_iterator, typename Collection::const_iterator > | getCollection (const ElementLink< TrigRoiDescriptorCollection > &roi_link, const std::string &key="") |
| new MT feature access More...
|
|
bool | select (std::vector< TIDA::Vertex > &vertices, xAOD::VertexContainer::const_iterator vtx_start, xAOD::VertexContainer::const_iterator vtx_end) |
|
bool | select (std::vector< TIDA::Vertex > &vertices, const ElementLink< TrigRoiDescriptorCollection > &roi_link, const std::string &key="") |
|
bool | select (std::vector< TIDA::Vertex > &vertices, const std::string &key="") |
|
template<class Collection > |
bool | selectTracks (TrigTrackSelector *selector, const ElementLink< TrigRoiDescriptorCollection > &roi_link, const std::string &key="") |
|
template<class Collection > |
bool | selectTracks (TrigTrackSelector *selector, Trig::FeatureContainer::combination_const_iterator citr, const std::string &key="") |
| lagacy run 2 access More...
|
|
template<class Collection > |
bool | selectTracks (TrigTrackSelector *selector, Trig::FeatureContainer::combination_const_iterator citr, const TrigInDetTrackTruthMap *truthmap, const std::string &key="", unsigned index=0) |
| NB: because we want to use this for the L2Star chains, we have to use this method, not the above method without the TruthMap argument - if we don't want/have the TruthMap, just set the pointer to 0 - there should be abetter way to do this, but shan't worry about it now. More...
|
|
template<class Collection > |
StatusCode | retrieve (Collection const *&collection, const std::string &key="") |
|
template<class Collection > |
bool | selectTracks (TrigTrackSelector *selector, const std::string &key) |
|
template<class Collection > |
bool | selectTracksNotEmpty (TrigTrackSelector *selector, const std::string &key) |
|
template<class Collection > |
std::vector< double > | getBeamspot (const std::string &key) |
|
template<class Collection > |
std::vector< double > | getBeamspot (Trig::FeatureContainer::combination_const_iterator citr, 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 More...
|
|
unsigned | processMuons (TrigTrackSelector &selectorRef, const unsigned int selection=0, double ETOffline=0, const std::string &containerName="StacoMuonCollection") |
| select offlinqe muons More...
|
|
unsigned | processTaus (TrigTrackSelector &selectorRef, std::vector< TrackTrigObject > *tauvec=0, const unsigned selection=0, int requireNtracks=0, double EtCutOffline=0, const std::string &containerName="TauRecContainer") |
| select offline taus More...
|
|
template<class Provider>
class T_AnalysisConfig< Provider >
Definition at line 59 of file T_AnalysisConfig.h.
◆ T_AnalysisConfig() [1/2]
template<class Provider >
T_AnalysisConfig< Provider >::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 |
|
) |
| |
|
inline |
Definition at line 69 of file T_AnalysisConfig.h.
101 std::vector<std::string> testChainNames; testChainNames.push_back(testChainName);
102 std::vector<std::string> referenceChainNames; referenceChainNames.push_back(referenceChainName);
103 std::vector<std::string> selectionChainNames; selectionChainNames.push_back(selectionChainName);
106 std::vector<std::string> testTypes; testTypes.push_back(testType);
107 std::vector<std::string> referenceTypes; referenceTypes.push_back(referenceType);
108 std::vector<std::string> selectionTypes; selectionTypes.push_back(selectionType);
112 std::vector<std::string> referenceKeys; referenceKeys.push_back(referenceKey);
113 std::vector<std::string> selectionKeys; selectionKeys.push_back(selectionKey);
116 std::vector<TrackFilter*> testFilters; testFilters.push_back(testFilter);
117 std::vector<TrackFilter*> referenceFilters; referenceFilters.push_back(referenceFilter);
118 std::vector<TrackFilter*> selectionFilters; selectionFilters.push_back(selectionFilter);
◆ T_AnalysisConfig() [2/2]
template<class Provider >
T_AnalysisConfig< Provider >::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, |
|
|
TrackFilter * |
testFilter, |
|
|
TrackFilter * |
referenceFilter, |
|
|
TrackAssociator * |
associator, |
|
|
TrackAnalysis * |
analysis |
|
) |
| |
|
inline |
Definition at line 129 of file T_AnalysisConfig.h.
160 std::vector<std::string> testChainNames; testChainNames.push_back(testChainName);
161 std::vector<std::string> referenceChainNames; referenceChainNames.push_back(referenceChainName);
162 std::vector<std::string> selectionChainNames; selectionChainNames.push_back(
"NONE");
165 std::vector<std::string> testTypes; testTypes.push_back(testType);
166 std::vector<std::string> referenceTypes; referenceTypes.push_back(referenceType);
167 std::vector<std::string> selectionTypes; selectionTypes.push_back(
"");
171 std::vector<std::string> referenceKeys; referenceKeys.push_back(referenceKey);
172 std::vector<std::string> selectionKeys; selectionKeys.push_back(
"");
175 std::vector<TrackFilter*> testFilters; testFilters.push_back(testFilter);
176 std::vector<TrackFilter*> referenceFilters; referenceFilters.push_back(referenceFilter);
177 std::vector<TrackFilter*> selectionFilters;
◆ ~T_AnalysisConfig()
template<class Provider >
◆ addReferenceChain()
template<class Provider >
◆ addReferenceFilter()
template<class Provider >
◆ addSelectionChain()
template<class Provider >
◆ addSelectionFilter()
template<class Provider >
◆ addTestChain()
template<class Provider >
◆ addTestFilter()
template<class Provider >
◆ analysis()
template<class Provider >
◆ beamX()
template<class Provider >
◆ beamY()
template<class Provider >
◆ beamZ()
template<class Provider >
◆ book()
template<class Provider >
◆ execute()
template<class Provider >
Definition at line 225 of file T_AnalysisConfig.h.
226 if ( !
m_provider ) std::cerr <<
"ERROR T_AnalysisConfig::execute() called without initialising" << std::endl;
◆ filterOnRoi()
template<class Provider >
◆ finalize()
template<class Provider >
◆ genericFlag()
template<class Provider >
◆ getBeamspot() [1/2]
template<class Provider >
template<class Collection >
Definition at line 634 of file T_AnalysisConfig.h.
636 std::vector<double>
v;
639 if (
m_provider->evtStore()->template contains<Collection>(
key ) ) {
641 if(
sc.isSuccess() && collection ) {
644 typename Collection::const_iterator trackitr = collection->begin();
645 typename Collection::const_iterator trackend = collection->end();
646 if ( trackitr!=trackend ) {
648 v[0] = (*trackitr)->vx();
649 v[1] = (*trackitr)->vy();
650 v[2] = (*trackitr)->vz();
◆ getBeamspot() [2/2]
template<class Provider >
template<class Collection >
Definition at line 663 of file T_AnalysisConfig.h.
664 std::vector< Trig::Feature<Collection> > trackcollections = citr->get<
Collection>(
key, TrigDefs::alsoDeactivateTEs );
665 std::vector<double>
v;
666 if ( !trackcollections.empty() ) {
669 for (
unsigned ifeat=0 ; ifeat<trackcollections.size() ; ifeat++ ) {
672 if ( !trackfeature.
empty() ) {
677 typename Collection::const_iterator trackitr = trigtracks->begin();
678 typename Collection::const_iterator trackend = trigtracks->end();
679 if ( trackitr!=trackend ) {
681 v[0] = (*trackitr)->vx();
682 v[1] = (*trackitr)->vy();
683 v[2] = (*trackitr)->vz();
◆ getCollection()
template<class Provider >
template<class Collection >
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 299 of file T_AnalysisConfig.h.
308 std::string key_collection =
key;
309 std::string key_tename =
"";
310 size_t pos = key_collection.find(
"/");
311 if (
pos!=std::string::npos ) {
313 key_tename =
key.substr( 0,
pos );
316 std::pair<
typename Collection::const_iterator,
317 typename Collection::const_iterator > itrpair;
322 const std::string* keyStr =
m_provider->evtStore()->keyToString(roi_link.
key(), checkCLID);
323 m_provider->msg(
MSG::DEBUG) <<
"Requesting range over (" <<
key <<
") associated to ROI from " << (keyStr ==
nullptr ?
"UNKNOWN" : *keyStr) <<
endmsg;
325 itrpair = (*m_tdt)->associateToEventView( handle, roi_link );
◆ getUseHighestPT()
template<class Provider >
◆ getVtxIndex()
template<class Provider >
◆ initialize()
template<class Provider >
◆ keepAllEvents()
template<class Provider >
◆ loop()
template<class Provider >
◆ mcTruth()
template<class Provider >
◆ name()
template<class Provider >
◆ processElectrons()
template<class Provider >
select offline electrons
Definition at line 703 of file T_AnalysisConfig.h.
719 # ifdef XAODTRACKING_TRACKPARTICLE_H
728 if( !
m_provider->evtStore()->template contains<Container>(containerName) ) {
729 m_provider->msg(MSG::WARNING) <<
"Error No Electron Container " << containerName <<
" !" <<
endmsg;
734 if(
sc.isFailure() || !container ) {
735 m_provider->msg(MSG::WARNING) <<
"Error retrieving container: " << containerName <<
" !" <<
endmsg;
741 Container::const_iterator elec = container->begin();
742 Container::const_iterator elec_end = container->end();
744 for( ; elec!=elec_end ; ++elec ){
755 bool good_electron =
false;
756 # ifdef XAODTRACKING_TRACKPARTICLE_H
764 long unsigned eleid = (
unsigned long)(&eleduff) ;
774 else trk_added = selectorRef.
selectTrack( (*elec)->trackParticle() );
776 if (trk_added) eleobj.
addChild( selectorRef.
tracks().back()->id() );
777 if (elevec) elevec->push_back( eleobj );
781 return selectorRef.
tracks().size();
◆ processMuons()
template<class Provider >
select offlinqe muons
Definition at line 789 of file T_AnalysisConfig.h.
798 # ifdef XAODTRACKING_TRACKPARTICLE_H
810 if( !
m_provider->evtStore()->template contains<Container>(containerName) ) {
811 m_provider->msg(MSG::WARNING) <<
"Error No MuonCollection" << containerName <<
" !" <<
endmsg;
816 if(
sc.isFailure() || !container ) {
817 m_provider->msg(MSG::WARNING) <<
"Error retrieving " << containerName <<
" !" <<
endmsg;
821 auto muon = container->begin();
822 auto muon_end = container->end();
827 # ifdef XAODTRACKING_TRACKPARTICLE_H
838 return selectorRef.
tracks().size();
◆ processTaus()
template<class Provider >
select offline taus
Definition at line 846 of file T_AnalysisConfig.h.
858 # ifdef XAODTRACKING_TRACKPARTICLE_H
872 if ( !
m_provider->evtStore()->template contains<Container>(containerName)) {
878 if (
sc != StatusCode::SUCCESS) {
879 m_provider->msg(MSG::WARNING) <<
" Offline tau retrieval not successful" <<
endmsg;
883 Container::const_iterator tau = container->begin();
884 Container::const_iterator tau_end = container->end();
887 for ( ; tau!=tau_end ; ++tau ) {
889 # ifdef XAODTRACKING_TRACKPARTICLE_H
892 # ifndef XAODTAU_VERSIONS_TAUJET_V3_H
893 int N = (*tau)->nTracks();
902 unsigned N = (*tau)->numTrack();
906 bool good_tau =
false;
907 # ifdef XAODTRACKING_TRACKPARTICLE_H
917 long unsigned tauid = (
unsigned long)(&duff) ;
925 bool trk_added =
false;
927 for (
unsigned i=
N ;
i-- ; ) {
928 # ifdef XAODTAU_TAUTRACK_H
930 std::vector< ElementLink<xAOD::TrackParticleContainer> > alink = (*tau)->track(
i)->trackLinks();
934 for (
size_t ilink=0 ; ilink<alink.size() ; ilink++ ) {
943 if ( trk_added ) tauobj.
addChild( selectorRef.
tracks().back()->id() );
945 if ( tauvec ) tauvec->push_back( tauobj );
949 return selectorRef.
tracks().size();
◆ referenceChains()
template<class Provider >
◆ releaseData() [1/2]
template<class Provider >
◆ releaseData() [2/2]
template<class Provider >
◆ requireDecision()
template<class Provider >
◆ retrieve()
template<class Provider >
template<class Collection >
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 573 of file T_AnalysisConfig.h.
576 if (
m_provider->evtStore()->template contains<Collection>(
key ) ) {
578 if ( handle.isValid() ) {
581 collection = handle.cptr();
582 return StatusCode::SUCCESS;
585 return StatusCode::FAILURE;
◆ select() [1/3]
template<class Provider >
Definition at line 371 of file T_AnalysisConfig.h.
380 if ( vtx_itrpair.first == vtx_itrpair.second ) {
385 m_provider->msg(
MSG::DEBUG) <<
"\txAOD::VertexContainer found with size " << (vtx_itrpair.second - vtx_itrpair.first)
388 return select( vertices, vtx_itrpair.first, vtx_itrpair.second );
◆ select() [2/3]
template<class Provider >
Definition at line 394 of file T_AnalysisConfig.h.
400 if (
retrieve( xaodVtxCollection,
key ).isFailure()) {
401 m_provider->msg(MSG::WARNING) <<
"xAOD vertex container not found with key " <<
key <<
endmsg;
405 if ( xaodVtxCollection!=0 ) {
409 return select( vertices, xaodVtxCollection->
begin(), xaodVtxCollection->
end() );
415 for ( ; vtxitr != xaodVtxCollection->
end(); vtxitr++ ) {
416 if ( (*vtxitr)->nTrackParticles()>0 && (*vtxitr)->vertexType()!=0 ) {
424 (*vtxitr)->nTrackParticles(),
426 (*vtxitr)->chiSquared(),
427 (*vtxitr)->numberDoF() ) );
◆ select() [3/3]
template<class Provider >
variances
quality
Definition at line 342 of file T_AnalysisConfig.h.
348 for ( ; vtxitr!=vtx_end ; ++vtxitr ) {
349 if ( (*vtxitr)->vertexType()!=0 ) {
359 (*vtxitr)->nTrackParticles(),
361 (*vtxitr)->chiSquared(),
362 (*vtxitr)->numberDoF() ) );
◆ selectionChains()
template<class Provider >
◆ selectTracks() [1/4]
template<class Provider >
template<class Collection >
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 441 of file T_AnalysisConfig.h.
453 std::string key_collection =
key;
454 std::string key_tename =
"";
455 size_t pos = key_collection.find(
"/");
456 if (
pos!=std::string::npos ) {
458 key_tename =
key.substr( 0,
pos );
461 std::pair<
typename Collection::const_iterator,
462 typename Collection::const_iterator > itrpair;
467 const std::string* keyStr =
m_provider->evtStore()->keyToString(roi_link.
key(), checkCLID);
468 m_provider->msg(
MSG::DEBUG) <<
"Requesting range over (" <<
key <<
") associated to ROI from " << (keyStr ==
nullptr ?
"UNKNOWN" : *keyStr) <<
endmsg;
470 itrpair = (*m_tdt)->associateToEventView( handle, roi_link );
472 if ( itrpair.first != itrpair.second ) {
473 selector->selectTracks( itrpair.first, itrpair.second );
◆ selectTracks() [2/4]
template<class Provider >
template<class Collection >
commented code intentionally left for development purposes ...
Definition at line 591 of file T_AnalysisConfig.h.
594 if ( handle.isValid() ) {
597 selector->selectTracks( handle.cptr() );
◆ selectTracks() [3/4]
template<class Provider >
template<class Collection >
lagacy run 2 access
Definition at line 487 of file T_AnalysisConfig.h.
491 std::string key_collection =
key;
492 std::string key_tename =
"";
493 size_t pos = key_collection.find(
"/");
494 if (
pos!=std::string::npos ) {
496 key_tename =
key.substr( 0,
pos );
499 std::vector< Trig::Feature<Collection> > trackcollections = citr->get<
Collection>( key_collection, TrigDefs::alsoDeactivateTEs, key_tename );
500 if ( !trackcollections.empty() ) {
502 for (
unsigned ifeat=0 ; ifeat<trackcollections.size() ; ifeat++ ) {
504 if ( !trackfeature.
empty() ) {
507 selector->selectTracks( trigtracks );
◆ selectTracks() [4/4]
template<class Provider >
template<class Collection >
NB: because we want to use this for the L2Star chains, we have to use this method, not the above method without the TruthMap argument - if we don't want/have the TruthMap, just set the pointer to 0 - there should be abetter way to do this, but shan't worry about it now.
get the correspondiong TE
get all the named collections attached to the TE
now got the collectionVector, can navigate through this
NB: this is safer than using index as an index, ie collectionVector[index] since it will do nothing if index is out of range, although it will be a little slower
useful for debug
Definition at line 523 of file T_AnalysisConfig.h.
527 std::vector< Trig::Feature<Collection> > trackcollections = citr->get<
Collection>(
key, TrigDefs::alsoDeactivateTEs );
528 if ( !trackcollections.empty() ) {
536 for (
unsigned ifeat=0 ; ifeat<trackcollections.size() ; ifeat++ ) {
544 std::vector< const Collection* > collectionVector;
551 for (
unsigned iv=collectionVector.size() ; iv-- ; ) {
555 if (
index!=iv )
continue;
558 selector->selectTracks( collectionVector[iv], truthmap );
◆ selectTracksNotEmpty()
template<class Provider >
template<class Collection >
Definition at line 608 of file T_AnalysisConfig.h.
610 if (
key.empty() )
return false;
611 if ( !
m_provider->evtStore()->template contains<Collection>(
key ) )
return false;
615 if ( !(
sc.isSuccess() && collection ) )
return false;
620 if ( collection->size() == 0 ) {
625 selector->selectTracks( collection );
◆ setBeamX()
template<class Provider >
◆ setBeamY()
template<class Provider >
◆ setBeamZ()
template<class Provider >
◆ setFilterOnRoi()
template<class Provider >
◆ setGenericFlag()
template<class Provider >
◆ setMCTruth()
template<class Provider >
◆ setRequireDecision()
template<class Provider >
◆ setUseHighestPT()
template<class Provider >
◆ setVtxIndex()
template<class Provider >
◆ testChains()
template<class Provider >
◆ m_analysis
template<class Provider >
◆ m_analysisInstanceName
template<class Provider >
◆ m_associator
template<class Provider >
◆ m_beamX
template<class Provider >
◆ m_beamY
template<class Provider >
◆ m_beamZ
template<class Provider >
◆ m_chainNames
template<class Provider >
std::vector< std::vector<std::string> > T_AnalysisConfig< Provider >::m_chainNames |
|
protected |
◆ m_filterOnRoi
template<class Provider >
◆ m_filters
template<class Provider >
◆ m_genericFlag
template<class Provider >
◆ m_keepAllEvents
template<class Provider >
◆ m_keys
template<class Provider >
◆ m_mcTruth
template<class Provider >
◆ m_provider
template<class Provider >
◆ m_refChainKey
template<class Provider >
◆ m_refChainName
template<class Provider >
◆ m_releaseData
template<class Provider >
◆ m_requireDecision
template<class Provider >
◆ m_selectorRef
template<class Provider >
◆ m_selectorSel
template<class Provider >
◆ m_selectorTest
template<class Provider >
◆ m_tdt
template<class Provider >
◆ m_testChainKey
template<class Provider >
◆ m_testChainName
template<class Provider >
◆ m_types
template<class Provider >
◆ m_useHighestPT
template<class Provider >
◆ m_vtxIndex
template<class Provider >
The documentation for this class was generated from the following file:
TrigTrackSelector * m_selectorRef
virtual void initialise()=0
standard operation interface
std::vector< std::vector< std::string > > m_types
std::string m_refChainKey
Const iterator class for DataVector/DataList.
bool isGoodOffline(const Analysis::Electron &elec)
@ z
global position (cartesian)
virtual void clear() override
virtual void finalise()=0
ToolHandle< Trig::TrigDecisionTool > * m_tdt
DataModel_detail::const_iterator< DataVector > const_iterator
Standard const_iterator.
std::string m_testChainName
std::string m_refChainName
const TrackAnalysis * analysis() const
TrigTrackSelector * m_selectorSel
sgkey_t key() const
Get the key that we reference, as a hash.
bool isValid(const T &p)
Av: we implement here an ATLAS-sepcific convention: all particles which are 99xxxxx are fine.
bool empty() const
test method to check if the object is truly there
ValuesCollection< T > Collection(std::string name, const T &collection)
Declare a monitored (double-convertible) collection.
std::string m_analysisInstanceName
storage of the time histories of all the cells
std::vector< std::vector< std::string > > m_keys
The NavigationCore class, adds on top of the TrigNavStructure the EDM read-only handling.
const HLT::TriggerElement * te() const
explicit conversion to TriggerElement
bool getFeatures(const TriggerElement *te, std::vector< const T * > &features, const std::string &label="", std::map< const T *, std::string > *labels=0) const
retrieve features attached to given TriggerElement
::StatusCode StatusCode
StatusCode definition for legacy code.
TriggerElement is the basic ingreedient of the interface between HLT algorithms and the navigation It...
TrackAnalysis * m_analysis
Class describing a tau jet.
definition of StoreGate container holding a vector of Analysis::Muon
uint32_t CLID
The Class ID type.
bool selectTrack(const TrigInDetTrack *track, const TrigInDetTrackTruthMap *truthMap=0)
neater code to make use of vector function also for a single ancestor pdgid, instead of the full code...
const std::string selection
StatusCode retrieve(Collection const *&collection, const std::string &key="")
TrackAssociator * m_associator
const std::vector< TIDA::Track * > & tracks() const
void testKeys(StoreGateSvc &rSG)
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
const xAOD::TrackParticle * getOriginalTrackParticle(const xAOD::Electron *el)
Helper function for getting the "Original" Track Particle (i.e before GSF) via the electron.
std::vector< std::vector< TrackFilter * > > m_filters
TrigTrackSelector * m_selectorTest
void addChild(unsigned long id)
size_type size() const noexcept
Returns the number of elements in the collection.
const std::string & name() const
std::string m_testChainKey
const T * cptr() const
explicit conversion to object
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
bool select(std::vector< TIDA::Vertex > &vertices, xAOD::VertexContainer::const_iterator vtx_start, xAOD::VertexContainer::const_iterator vtx_end)
std::string m_releaseData
std::vector< std::vector< std::string > > m_chainNames