ATLAS Offline Software
Loading...
Searching...
No Matches
TrackTraits< xAOD::Electron > Struct Reference

#include <ElectronTraits.h>

Inheritance diagram for TrackTraits< xAOD::Electron >:
Collaboration diagram for TrackTraits< xAOD::Electron >:

Static Public Member Functions

static uint8_t summary_value (const xAOD::Electron &e, xAOD::SummaryType type)
static float pt (const xAOD::Electron &e)
static float eta (const xAOD::Electron &e)
static float theta (const xAOD::Electron &e)
static float phi (const xAOD::Electron &e)
static float m (const xAOD::Electron &e)
static float z0 (const xAOD::Electron &e)
static float d0 (const xAOD::Electron &e)
static float qOverP (const xAOD::Electron &e)
static float p (const xAOD::Electron &e)
 is this really the best way to do it ?
static float E (const xAOD::Electron &e)
static float ET (const xAOD::Electron &e)
template<typename U>
static void addChildren (const xAOD::Electron &e, std::vector< U > &v)
static float pt (const xAOD::Electron &t)
static float eta (const xAOD::Electron &t)
static float theta (const xAOD::Electron &)
static float phi (const xAOD::Electron &t)
static float z0 (const xAOD::Electron &)
static float d0 (const xAOD::Electron &)
static float qOverP (const xAOD::Electron &)
static float p (const xAOD::Electron &)
static float m (const xAOD::Electron &)
static float E (const xAOD::Electron &)
static float ET (const xAOD::Electron &)
static float dphi (const xAOD::Electron &)
static float dtheta (const xAOD::Electron &)
static float dqOverP (const xAOD::Electron &)
static float deta (const xAOD::Electron &)
static float dz0 (const xAOD::Electron &)
static float dd0 (const xAOD::Electron &)
static float dpt (const xAOD::Electron &)
static float covthetaOvP (const xAOD::Electron &)
static unsigned author (const xAOD::Electron &)
static float chi2 (const xAOD::Electron &)
static float ndof (const xAOD::Electron &)
static uint8_t hasValidTime (const xAOD::Electron &)
static float time (const xAOD::Electron &)
static int nPixels (const xAOD::Electron &)
static int nPixelsShared (const xAOD::Electron &)
static int nPixelHoles (const xAOD::Electron &)
static int nPixelsInner (const xAOD::Electron &)
static int nPixelsInnerEndcap (const xAOD::Electron &)
static int nPixelsInnerShared (const xAOD::Electron &)
static int nPixelsInnerSharedEndcap (const xAOD::Electron &)
static int nPixelsBlayer (const xAOD::Electron &)
static int nPixelsBlayerEndcap (const xAOD::Electron &)
static int nSCT (const xAOD::Electron &)
static int nSCTShared (const xAOD::Electron &)
static int nSCTHoles (const xAOD::Electron &)
static int nSi (const xAOD::Electron &)
static int nSiHoles (const xAOD::Electron &)
static int nTRT (const xAOD::Electron &)
static int nTRTHi (const xAOD::Electron &)
static void addChildren (const xAOD::Electron &, std::vector< U > &)
 parent EDM functionality for classes with children - the class U, being used for the children has to be fully specified before trying to instantiate any instaces of the corresponding derived traits

Detailed Description

Definition at line 24 of file ElectronTraits.h.

Member Function Documentation

◆ addChildren() [1/2]

void TrackTraitsBase< xAOD::Electron >::addChildren ( const xAOD::Electron & ,
std::vector< U > &  )
inlinestatic

parent EDM functionality for classes with children - the class U, being used for the children has to be fully specified before trying to instantiate any instaces of the corresponding derived traits

Definition at line 118 of file TrackTraits.h.

118{ }

◆ addChildren() [2/2]

template<typename U>
void TrackTraits< xAOD::Electron >::addChildren ( const xAOD::Electron & e,
std::vector< U > & v )
inlinestatic

Definition at line 95 of file ElectronTraits.h.

95{ v.emplace_back( e.trackParticle() ); }

◆ author()

unsigned TrackTraitsBase< xAOD::Electron >::author ( const xAOD::Electron & )
inlinestatic

Definition at line 77 of file TrackTraits.h.

77{ return 0; }

◆ chi2()

float TrackTraitsBase< xAOD::Electron >::chi2 ( const xAOD::Electron & )
inlinestatic

Definition at line 79 of file TrackTraits.h.

79{ return 0; }

◆ covthetaOvP()

float TrackTraitsBase< xAOD::Electron >::covthetaOvP ( const xAOD::Electron & )
inlinestatic

Definition at line 75 of file TrackTraits.h.

75{ return 0; }

◆ d0() [1/2]

float TrackTraitsBase< xAOD::Electron >::d0 ( const xAOD::Electron & )
inlinestatic

Definition at line 54 of file TrackTraits.h.

54{ return 0; }

◆ d0() [2/2]

float TrackTraits< xAOD::Electron >::d0 ( const xAOD::Electron & e)
inlinestatic

Definition at line 40 of file ElectronTraits.h.

40{ return e.trackParticle()->d0(); }
static float d0(const T &)
Definition TrackTraits.h:54

◆ dd0()

float TrackTraitsBase< xAOD::Electron >::dd0 ( const xAOD::Electron & )
inlinestatic

Definition at line 71 of file TrackTraits.h.

71{ return 0; }

◆ deta()

float TrackTraitsBase< xAOD::Electron >::deta ( const xAOD::Electron & )
inlinestatic

Definition at line 68 of file TrackTraits.h.

68{ return 0; }

◆ dphi()

float TrackTraitsBase< xAOD::Electron >::dphi ( const xAOD::Electron & )
inlinestatic

Definition at line 64 of file TrackTraits.h.

64{ return 0; }

◆ dpt()

float TrackTraitsBase< xAOD::Electron >::dpt ( const xAOD::Electron & )
inlinestatic

Definition at line 73 of file TrackTraits.h.

73{ return 0; }

◆ dqOverP()

float TrackTraitsBase< xAOD::Electron >::dqOverP ( const xAOD::Electron & )
inlinestatic

Definition at line 66 of file TrackTraits.h.

66{ return 0; }

◆ dtheta()

float TrackTraitsBase< xAOD::Electron >::dtheta ( const xAOD::Electron & )
inlinestatic

Definition at line 65 of file TrackTraits.h.

65{ return 0; }

◆ dz0()

float TrackTraitsBase< xAOD::Electron >::dz0 ( const xAOD::Electron & )
inlinestatic

Definition at line 70 of file TrackTraits.h.

70{ return 0; }

◆ E() [1/2]

float TrackTraitsBase< xAOD::Electron >::E ( const xAOD::Electron & )
inlinestatic

Definition at line 61 of file TrackTraits.h.

61{ return 0; } // t.e(); }

◆ E() [2/2]

float TrackTraits< xAOD::Electron >::E ( const xAOD::Electron & e)
inlinestatic

Definition at line 51 of file ElectronTraits.h.

51{ return e.e(); }

◆ ET() [1/2]

float TrackTraitsBase< xAOD::Electron >::ET ( const xAOD::Electron & )
inlinestatic

Definition at line 62 of file TrackTraits.h.

62{ return 0; }

◆ ET() [2/2]

float TrackTraits< xAOD::Electron >::ET ( const xAOD::Electron & e)
inlinestatic

Definition at line 53 of file ElectronTraits.h.

53{ return e.e()*std::sin(theta(e)); }
Scalar theta() const
theta method

◆ eta() [1/2]

float TrackTraits< xAOD::Electron >::eta ( const xAOD::Electron & e)
inlinestatic

Definition at line 33 of file ElectronTraits.h.

33{ return e.eta(); }
static float eta(const T &t)
Definition TrackTraits.h:50

◆ eta() [2/2]

float TrackTraitsBase< xAOD::Electron >::eta ( const xAOD::Electron & t)
inlinestatic

Definition at line 50 of file TrackTraits.h.

50{ return t.eta(); }

◆ hasValidTime()

uint8_t TrackTraitsBase< xAOD::Electron >::hasValidTime ( const xAOD::Electron & )
inlinestatic

Definition at line 82 of file TrackTraits.h.

82{ return 0; }

◆ m() [1/2]

float TrackTraitsBase< xAOD::Electron >::m ( const xAOD::Electron & )
inlinestatic

Definition at line 58 of file TrackTraits.h.

58{ return 0; }

◆ m() [2/2]

float TrackTraits< xAOD::Electron >::m ( const xAOD::Electron & e)
inlinestatic

Definition at line 37 of file ElectronTraits.h.

37{ return e.m(); }
static float m(const T &)
Definition TrackTraits.h:58

◆ ndof()

float TrackTraitsBase< xAOD::Electron >::ndof ( const xAOD::Electron & )
inlinestatic

Definition at line 80 of file TrackTraits.h.

80{ return 0; }

◆ nPixelHoles()

int TrackTraitsBase< xAOD::Electron >::nPixelHoles ( const xAOD::Electron & )
inlinestatic

Definition at line 91 of file TrackTraits.h.

91{ return 0; }

◆ nPixels()

int TrackTraitsBase< xAOD::Electron >::nPixels ( const xAOD::Electron & )
inlinestatic

Definition at line 89 of file TrackTraits.h.

89{ return 0; }

◆ nPixelsBlayer()

int TrackTraitsBase< xAOD::Electron >::nPixelsBlayer ( const xAOD::Electron & )
inlinestatic

Definition at line 99 of file TrackTraits.h.

99{ return 0; }

◆ nPixelsBlayerEndcap()

int TrackTraitsBase< xAOD::Electron >::nPixelsBlayerEndcap ( const xAOD::Electron & )
inlinestatic

Definition at line 100 of file TrackTraits.h.

100{ return 0; }

◆ nPixelsInner()

int TrackTraitsBase< xAOD::Electron >::nPixelsInner ( const xAOD::Electron & )
inlinestatic

Definition at line 93 of file TrackTraits.h.

93{ return 0; }

◆ nPixelsInnerEndcap()

int TrackTraitsBase< xAOD::Electron >::nPixelsInnerEndcap ( const xAOD::Electron & )
inlinestatic

Definition at line 94 of file TrackTraits.h.

94{ return 0; }

◆ nPixelsInnerShared()

int TrackTraitsBase< xAOD::Electron >::nPixelsInnerShared ( const xAOD::Electron & )
inlinestatic

Definition at line 96 of file TrackTraits.h.

96{ return 0; }

◆ nPixelsInnerSharedEndcap()

int TrackTraitsBase< xAOD::Electron >::nPixelsInnerSharedEndcap ( const xAOD::Electron & )
inlinestatic

Definition at line 97 of file TrackTraits.h.

97{ return 0; }

◆ nPixelsShared()

int TrackTraitsBase< xAOD::Electron >::nPixelsShared ( const xAOD::Electron & )
inlinestatic

Definition at line 90 of file TrackTraits.h.

90{ return 0; }

◆ nSCT()

int TrackTraitsBase< xAOD::Electron >::nSCT ( const xAOD::Electron & )
inlinestatic

Definition at line 102 of file TrackTraits.h.

102{ return 0; }

◆ nSCTHoles()

int TrackTraitsBase< xAOD::Electron >::nSCTHoles ( const xAOD::Electron & )
inlinestatic

Definition at line 104 of file TrackTraits.h.

104{ return 0; }

◆ nSCTShared()

int TrackTraitsBase< xAOD::Electron >::nSCTShared ( const xAOD::Electron & )
inlinestatic

Definition at line 103 of file TrackTraits.h.

103{ return 0; }

◆ nSi()

int TrackTraitsBase< xAOD::Electron >::nSi ( const xAOD::Electron & )
inlinestatic

Definition at line 106 of file TrackTraits.h.

106{ return 0; }

◆ nSiHoles()

int TrackTraitsBase< xAOD::Electron >::nSiHoles ( const xAOD::Electron & )
inlinestatic

Definition at line 107 of file TrackTraits.h.

107{ return 0; }

◆ nTRT()

int TrackTraitsBase< xAOD::Electron >::nTRT ( const xAOD::Electron & )
inlinestatic

Definition at line 109 of file TrackTraits.h.

109{ return 0; }

◆ nTRTHi()

int TrackTraitsBase< xAOD::Electron >::nTRTHi ( const xAOD::Electron & )
inlinestatic

Definition at line 110 of file TrackTraits.h.

110{ return 0; }

◆ p() [1/2]

float TrackTraitsBase< xAOD::Electron >::p ( const xAOD::Electron & )
inlinestatic

Definition at line 56 of file TrackTraits.h.

56{ return 0; }

◆ p() [2/2]

float TrackTraits< xAOD::Electron >::p ( const xAOD::Electron & e)
inlinestatic

is this really the best way to do it ?

? or should we more properly use the electron parameters themselves ??

Definition at line 46 of file ElectronTraits.h.

46 {
47 if ( e.trackParticle()->qOverP()==0 ) throw std::runtime_error( "divide by 0 - track qOverP() is 0" );
48 return 1/e.trackParticle()->qOverP();
49 }
static float qOverP(const T &)
Definition TrackTraits.h:55

◆ phi() [1/2]

float TrackTraits< xAOD::Electron >::phi ( const xAOD::Electron & e)
inlinestatic

Definition at line 35 of file ElectronTraits.h.

35{ return e.phi(); }
static float phi(const T &t)
Definition TrackTraits.h:52

◆ phi() [2/2]

float TrackTraitsBase< xAOD::Electron >::phi ( const xAOD::Electron & t)
inlinestatic

Definition at line 52 of file TrackTraits.h.

52{ return t.phi(); }

◆ pt() [1/2]

float TrackTraits< xAOD::Electron >::pt ( const xAOD::Electron & e)
inlinestatic

Definition at line 32 of file ElectronTraits.h.

32{ return e.pt(); }
static float pt(const T &t)
Definition TrackTraits.h:49

◆ pt() [2/2]

float TrackTraitsBase< xAOD::Electron >::pt ( const xAOD::Electron & t)
inlinestatic

Definition at line 49 of file TrackTraits.h.

49{ return t.pt(); }

◆ qOverP() [1/2]

float TrackTraitsBase< xAOD::Electron >::qOverP ( const xAOD::Electron & )
inlinestatic

Definition at line 55 of file TrackTraits.h.

55{ return 0; }

◆ qOverP() [2/2]

float TrackTraits< xAOD::Electron >::qOverP ( const xAOD::Electron & e)
inlinestatic

Definition at line 42 of file ElectronTraits.h.

42{ return e.trackParticle()->qOverP(); }

◆ summary_value()

uint8_t TrackTraits< xAOD::Electron >::summary_value ( const xAOD::Electron & e,
xAOD::SummaryType type )
inlinestatic

Definition at line 28 of file ElectronTraits.h.

28 {
29 uint8_t n(0); e.trackParticle()->summaryValue(n, type); return n;
30 }

◆ theta() [1/2]

float TrackTraitsBase< xAOD::Electron >::theta ( const xAOD::Electron & )
inlinestatic

Definition at line 51 of file TrackTraits.h.

51{ return 0; }

◆ theta() [2/2]

float TrackTraits< xAOD::Electron >::theta ( const xAOD::Electron & e)
inlinestatic

Definition at line 34 of file ElectronTraits.h.

34{ return 2*std::atan(std::exp(-e.eta())); }

◆ time()

float TrackTraitsBase< xAOD::Electron >::time ( const xAOD::Electron & )
inlinestatic

Definition at line 83 of file TrackTraits.h.

83{ return 0; }

◆ z0() [1/2]

float TrackTraitsBase< xAOD::Electron >::z0 ( const xAOD::Electron & )
inlinestatic

Definition at line 53 of file TrackTraits.h.

53{ return 0; }

◆ z0() [2/2]

float TrackTraits< xAOD::Electron >::z0 ( const xAOD::Electron & e)
inlinestatic

Definition at line 39 of file ElectronTraits.h.

39{ return e.trackParticle()->z0() + e.trackParticle()->vz(); }
static float z0(const T &)
Definition TrackTraits.h:53

The documentation for this struct was generated from the following file: