 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef INDETTRACKPERFMON_OFFLINEOBJECTDECORHELPER_H
6 #define INDETTRACKPERFMON_OFFLINEOBJECTDECORHELPER_H
36 template <
typename container_t >
38 const std::string& decoName ) {
41 return ( not
acc.isAvailable(
track ) );
45 template <
typename container_t >
48 const std::string& decoName )
52 if( isUnlinkedObject< container_t >(
track, decoName ) )
return nullptr;
55 elementLink_t eleLink =
acc(
track );
57 if( not eleLink.isValid() )
return nullptr;
65 const std::string&
quality=
"All" );
69 const std::string&
quality=
"All" );
73 const int requiredNtracks,
74 const std::string&
type=
"RNN",
75 const std::string&
quality=
"" );
79 const std::string&
quality=
"DRtruthJet" );
82 const std::string&
quality=
"DRtruthJet" );
85 const std::string& =
"" ) {
return nullptr; };
88 const std::string& =
"" ) {
return -999.; };
98 const float truthProbCut=0. );
102 template<
typename PARTICLE >
104 const std::vector< float >&
etaBins );
106 template<
typename PARTICLE >
108 const std::vector< unsigned int >& minHits,
112 const std::vector< unsigned int >& minHits,
113 const std::vector< float >&
etaBins );
115 const std::vector< unsigned int >& minHits,
116 const std::vector< float >&
etaBins );
119 const std::vector< float >& minPt,
122 const std::vector< float >& ,
123 const std::vector< float >& ) {
return false; };
126 const std::vector< float >& maxD0,
129 const std::vector< float >& ,
130 const std::vector< float >& ) {
return false; };
133 const std::vector< float >& maxZ0,
136 const std::vector< float >& ,
137 const std::vector< float >& ) {
return false; };
142 std::vector< const xAOD::TrackParticle* >& vtxTracks,
143 std::vector< float >& vtxTrackWeights,
144 const std::vector< const xAOD::TrackParticle* >& selTracks = {},
145 bool useSelected = false );
147 std::vector< const xAOD::TruthParticle* >&,
148 std::vector< float >&,
149 const std::vector< const xAOD::TruthParticle* >& = {},
150 bool = false ) {
return true; }
154 #endif // > ! INDETTRACKPERFMON_OFFLINEOBJECTDECORHELPER_H
bool nHitsSelVec(const PARTICLE &p, const std::vector< unsigned int > &minHits, const std::vector< float > &etaBins)
float getTruthMatchProb(const xAOD::TrackParticle &track)
getTruthMatchProb
const xAOD::TauJet * getLinkedTau(const xAOD::TrackParticle &track, const int requiredNtracks, const std::string &type, const std::string &quality)
getLinkedTau
unsigned int getEtaBin(const PARTICLE &p, const std::vector< float > &etaBins)
const xAOD::TruthParticle * getLinkedTruth(const xAOD::TrackParticle &track, const float truthProbCut)
getLinkedTruth
const xAOD::Electron * getLinkedElectron(const xAOD::TrackParticle &track, const std::string &quality)
getLinkedElectron
Helper class to provide constant type-safe access to aux data.
Utility methods to access track/truth particles parmeters in a consitent way in this package.
float getD0TrackInJet(const xAOD::TrackParticle &track, const std::string &quality)
recompute d0 projecting in jet direction w.r.t. origin
bool maxZ0SelVec(const xAOD::TrackParticle &track, const std::vector< float > &maxZ0, const std::vector< float > &etaBins)
Class describing a truth particle in the MC record.
Class describing a tau jet.
const xAOD::Muon * getLinkedMuon(const xAOD::TrackParticle &track, const std::string &quality)
getLinkedMuon
float pT(const U &p)
Accessor utility function for getting the value of pT.
bool maxD0SelVec(const xAOD::TrackParticle &track, const std::vector< float > &maxD0, const std::vector< float > &etaBins)
ElementLink implementation for ROOT usage.
Class describing a truth vertex in the MC record.
bool minPtSelVec(const xAOD::TrackParticle &track, const std::vector< float > &minPt, const std::vector< float > &etaBins)
bool getVertexTracksAndWeights(const xAOD::Vertex &vtx, std::vector< const xAOD::TrackParticle * > &vtxTracks, std::vector< float > &vtxTrackWeights, const std::vector< const xAOD::TrackParticle * > &selTracks, bool useSelected)
getVertexTracksAndWeights
Class describing a Vertex.
container_t::const_value_type getLinkedObject(const xAOD::TrackParticle &track, const std::string &decoName)
Templated method to retrieve object linked to a track.
const xAOD::Jet * getLinkedJet(const xAOD::TrackParticle &track, const std::string &quality)
getLinkedJet
bool isUnlinkedObject(const xAOD::TrackParticle &track, const std::string &decoName)
Templated method to check if a track is not linked to an object.
Class describing a TrackParticle.
bool isUnlinkedTruth(const xAOD::TrackParticle &track)
isUnlinkedTruth
float nSiHits(const U &p)