ATLAS Offline Software
Loading...
Searching...
No Matches
VKalVrtAthena Namespace Reference

Namespaces

namespace  AlgConsts
namespace  GeoModel
namespace  PhysConsts
namespace  varHolder_detail

Classes

class  BaseHolder
class  IntersectionPos
class  IntersectionPos_barrel
class  IntersectionPos_endcap
class  NtupleVars
class  varHolder
class  VrtSecInclusive

Functions

bool isAssociatedToVertices (const xAOD::TrackParticle *trk, const xAOD::VertexContainer *vertices)
double vtxVtxDistance (const Amg::Vector3D &v1, const Amg::Vector3D &v2)
template<>
void genSequence (const xAOD::Muon *, std::vector< unsigned > &trackTypes)
template<>
void genSequence (const xAOD::Electron *electron, std::vector< unsigned > &trackTypes)
template<>
const xAOD::TrackParticlegetLeptonTrackParticle (const xAOD::Muon *muon, const unsigned &trackType)
template<>
const xAOD::TrackParticlegetLeptonTrackParticle (const xAOD::Electron *electron, const unsigned &trackType)
template<class LeptonFlavor>
void genSequence (const LeptonFlavor *, std::vector< unsigned > &)
template<>
void genSequence (const xAOD::Muon *, std::vector< unsigned > &trackTypes)
template<>
void genSequence (const xAOD::Electron *electron, std::vector< unsigned > &trackTypes)
template<class LeptonFlavor>
const xAOD::TrackParticlegetLeptonTrackParticle (const LeptonFlavor *, const unsigned &)
template<>
const xAOD::TrackParticlegetLeptonTrackParticle (const xAOD::Muon *muon, const unsigned &trackType)
template<>
const xAOD::TrackParticlegetLeptonTrackParticle (const xAOD::Electron *electron, const unsigned &trackType)

Function Documentation

◆ genSequence() [1/5]

template<class LeptonFlavor>
void VKalVrtAthena::genSequence ( const LeptonFlavor * ,
std::vector< unsigned > &  )

◆ genSequence() [2/5]

template<>
void VKalVrtAthena::genSequence ( const xAOD::Electron * electron,
std::vector< unsigned > & trackTypes )

Definition at line 94 of file Reconstruction/VKalVrt/VrtSecInclusive/src/Utilities.cxx.

94 {
95 for( size_t i=0; i<electron->nTrackParticles(); i++ ) trackTypes.emplace_back( i );
96 }

◆ genSequence() [3/5]

template<>
void VKalVrtAthena::genSequence ( const xAOD::Electron * electron,
std::vector< unsigned > & trackTypes )

Definition at line 94 of file Reconstruction/VKalVrt/VrtSecInclusive/src/Utilities.cxx.

94 {
95 for( size_t i=0; i<electron->nTrackParticles(); i++ ) trackTypes.emplace_back( i );
96 }

◆ genSequence() [4/5]

template<>
void VKalVrtAthena::genSequence ( const xAOD::Muon * ,
std::vector< unsigned > & trackTypes )

Definition at line 84 of file Reconstruction/VKalVrt/VrtSecInclusive/src/Utilities.cxx.

84 {
85 trackTypes = { xAOD::Muon::Primary,
86 xAOD::Muon::InnerDetectorTrackParticle,
87 xAOD::Muon::MuonSpectrometerTrackParticle,
88 xAOD::Muon::CombinedTrackParticle,
89 xAOD::Muon::ExtrapolatedMuonSpectrometerTrackParticle
90 };
91 }

◆ genSequence() [5/5]

template<>
void VKalVrtAthena::genSequence ( const xAOD::Muon * ,
std::vector< unsigned > & trackTypes )

Definition at line 84 of file Reconstruction/VKalVrt/VrtSecInclusive/src/Utilities.cxx.

84 {
85 trackTypes = { xAOD::Muon::Primary,
86 xAOD::Muon::InnerDetectorTrackParticle,
87 xAOD::Muon::MuonSpectrometerTrackParticle,
88 xAOD::Muon::CombinedTrackParticle,
89 xAOD::Muon::ExtrapolatedMuonSpectrometerTrackParticle
90 };
91 }

◆ getLeptonTrackParticle() [1/5]

template<class LeptonFlavor>
const xAOD::TrackParticle * VKalVrtAthena::getLeptonTrackParticle ( const LeptonFlavor * ,
const unsigned &  )

Definition at line 101 of file Reconstruction/VKalVrt/VrtSecInclusive/VrtSecInclusive/details/Utilities.h.

101{ return nullptr; }

◆ getLeptonTrackParticle() [2/5]

template<>
const xAOD::TrackParticle * VKalVrtAthena::getLeptonTrackParticle ( const xAOD::Electron * electron,
const unsigned & trackType )

Definition at line 106 of file Reconstruction/VKalVrt/VrtSecInclusive/src/Utilities.cxx.

106 {
107 return electron->trackParticle( trackType );
108 }

◆ getLeptonTrackParticle() [3/5]

template<>
const xAOD::TrackParticle * VKalVrtAthena::getLeptonTrackParticle ( const xAOD::Electron * electron,
const unsigned & trackType )

Definition at line 106 of file Reconstruction/VKalVrt/VrtSecInclusive/src/Utilities.cxx.

106 {
107 return electron->trackParticle( trackType );
108 }

◆ getLeptonTrackParticle() [4/5]

template<>
const xAOD::TrackParticle * VKalVrtAthena::getLeptonTrackParticle ( const xAOD::Muon * muon,
const unsigned & trackType )

Definition at line 101 of file Reconstruction/VKalVrt/VrtSecInclusive/src/Utilities.cxx.

101 {
102 return muon->trackParticle( static_cast<xAOD::Muon::TrackParticleType>( trackType ) );
103 }

◆ getLeptonTrackParticle() [5/5]

template<>
const xAOD::TrackParticle * VKalVrtAthena::getLeptonTrackParticle ( const xAOD::Muon * muon,
const unsigned & trackType )

Definition at line 101 of file Reconstruction/VKalVrt/VrtSecInclusive/src/Utilities.cxx.

101 {
102 return muon->trackParticle( static_cast<xAOD::Muon::TrackParticleType>( trackType ) );
103 }

◆ isAssociatedToVertices()

bool VKalVrtAthena::isAssociatedToVertices ( const xAOD::TrackParticle * trk,
const xAOD::VertexContainer * vertices )

Definition at line 34 of file Reconstruction/VKalVrt/VrtSecInclusive/src/Utilities.cxx.

34 {
35
36 bool is_pv_associated = false;
37 const xAOD::TrackParticle *trk_from_gsf;
38 // get ID track matched to GSF track
40 for( const auto* vtx : *vertices ) {
41 for( size_t iv = 0; iv < vtx->nTrackParticles(); iv++ ) {
42 const auto* pvtrk = vtx->trackParticle( iv );
43 if (pvtrk == nullptr) continue;
44 // when using lepton-only selection, also need to check if the ID track matched to the GSF track is associated to the PV
45 if ( (trk_from_gsf == pvtrk) or (trk == pvtrk) ) {
46 is_pv_associated = true;
47 break;
48 }
49 }
50 }
51 return is_pv_associated;
52 }
const xAOD::TrackParticle * getOriginalTrackParticleFromGSF(const xAOD::TrackParticle *trkPar)
Helper function for getting the "Original" Track Particle (i.e before GSF) via the GSF Track Particle...
TrackParticle_v1 TrackParticle
Reference the current persistent version:

◆ vtxVtxDistance()

double VKalVrtAthena::vtxVtxDistance ( const Amg::Vector3D & v1,
const Amg::Vector3D & v2 )

Definition at line 55 of file Reconstruction/VKalVrt/VrtSecInclusive/src/Utilities.cxx.

55 {
56 return (v1-v2).norm();
57 }