ATLAS Offline Software
Loading...
Searching...
No Matches
TrackView Class Reference

forward declaration required for function prototype More...

#include <TrackView.h>

Inheritance diagram for TrackView:
Collaboration diagram for TrackView:

Classes

struct  VTable

Public Member Functions

template<typename T>
 TrackView (const T *pobj)
template<typename T, typename = std::enable_if_t< !std::is_pointer_v<T> && !std::is_same_v<std::decay_t<T>, TrackView> >>
 TrackView (const T &obj)
 TrackView (const TrackView &t)=default
 TrackView (const TrackView *)=delete
 TrackView (TrackView *)=delete
virtual ~TrackView ()=default
const void * ptr () const
float pt () const
float eta () const
float theta () const
virtual float phi () const
virtual float z0 () const
virtual float d0 () const
float m () const
float qOverP () const
float p () const
float E () const
float ET () const
float dphi () const
float dtheta () const
float dqOverP () const
float deta () const
float dz0 () const
float dd0 () const
float dpt () const
float covthetaOvP () const
unsigned author () const
float chi2 () const
float ndof () const
uint8_t hasValidTime () const
float time () const
int nPixels () const
int nPixelsShared () const
int nPixelHoles () const
int nPixelsInner () const
int nPixelsInnerEndcap () const
int nPixelsInnerShared () const
int nPixelsInnerSharedEndcap () const
int nPixelsBlayer () const
int nPixelsBlayerEndcap () const
int nSCT () const
int nSCTShared () const
int nSCTHoles () const
int nSi () const
int nSiHoles () const
int nTRT () const
int nTRTHi () const
const std::type_info & type () const
template<typename T>
bool is () const
template<typename T>
const T * as () const
virtual bool isComposite () const
 standard TrackView can't have any children
virtual bool hasChildren () const
virtual size_t childCount () const
virtual const TrackView * child (size_t) const
virtual bool hasParent () const
 and doesn't have a parent ...
virtual const TrackView * parent () const
virtual bool hasDecorations () const

Protected Member Functions

const VTable * vtable () const

Private Types

using CHILDTYPE = ChildView
 so we can more easily change the type if required ...

Static Private Member Functions

template<typename T>
static const T & deref (const void *p)
template<typename T>
static float pt_impl (const void *p)
template<typename T>
static float eta_impl (const void *p)
template<typename T>
static float theta_impl (const void *p)
template<typename T>
static float phi_impl (const void *p)
template<typename T>
static float z0_impl (const void *p)
template<typename T>
static float d0_impl (const void *p)
template<typename T>
static float m_impl (const void *p)
template<typename T>
static float qOverP_impl (const void *p)
template<typename T>
static float p_impl (const void *p)
template<typename T>
static float E_impl (const void *p)
template<typename T>
static float ET_impl (const void *p)
template<typename T>
static float dphi_impl (const void *p)
template<typename T>
static float dtheta_impl (const void *p)
template<typename T>
static float dqOverP_impl (const void *p)
template<typename T>
static float deta_impl (const void *p)
template<typename T>
static float dz0_impl (const void *p)
template<typename T>
static float dd0_impl (const void *p)
template<typename T>
static float dpt_impl (const void *p)
template<typename T>
static float covthetaOvP_impl (const void *p)
template<typename T>
static unsigned author_impl (const void *p)
template<typename T>
static float chi2_impl (const void *p)
template<typename T>
static float ndof_impl (const void *p)
template<typename T>
static uint8_t hasValidTime_impl (const void *p)
template<typename T>
static float time_impl (const void *p)
template<typename T>
static int nPixels_impl (const void *p)
template<typename T>
static int nPixelsShared_impl (const void *p)
template<typename T>
static int nPixelHoles_impl (const void *p)
template<typename T>
static int nPixelsInner_impl (const void *p)
template<typename T>
static int nPixelsInnerEndcap_impl (const void *p)
template<typename T>
static int nPixelsInnerShared_impl (const void *p)
template<typename T>
static int nPixelsInnerSharedEndcap_impl (const void *p)
template<typename T>
static int nPixelsBlayer_impl (const void *p)
template<typename T>
static int nPixelsBlayerEndcap_impl (const void *p)
template<typename T>
static int nSCT_impl (const void *p)
template<typename T>
static int nSCTShared_impl (const void *p)
template<typename T>
static int nSCTHoles_impl (const void *p)
template<typename T>
static int nSi_impl (const void *p)
template<typename T>
static int nSiHoles_impl (const void *p)
template<typename T>
static int nTRT_impl (const void *p)
template<typename T>
static int nTRTHi_impl (const void *p)
template<typename T>
static void addChildren_impl (const void *p, std::vector< CHILDTYPE > &v)

Private Attributes

const void * m_ptr
const VTable * m_vtable

Static Private Attributes

template<typename T>
static const VTable table

Detailed Description

forward declaration required for function prototype

Definition at line 43 of file TrackView.h.

Member Typedef Documentation

◆ CHILDTYPE

so we can more easily change the type if required ...

Definition at line 183 of file TrackView.h.

Constructor & Destructor Documentation

◆ TrackView() [1/5]

template<typename T>
TrackView::TrackView ( const T * pobj)
inline

Definition at line 48 of file TrackView.h.

48 : m_ptr(pobj), m_vtable(&table<T>) {
49#if 0
55 using BareT = std::remove_cv_t<T>;
56 static_assert( std::is_same_v<BareT, xAOD::TrackParticle> || std::is_same_v<BareT, xAOD::TruthParticle>,
57 "unsupported TrackView type" );
58#endif
59 }
const VTable * m_vtable
Definition TrackView.h:177
const void * m_ptr
Definition TrackView.h:176
static const VTable table
Definition TrackView.h:294

◆ TrackView() [2/5]

template<typename T, typename = std::enable_if_t< !std::is_pointer_v<T> && !std::is_same_v<std::decay_t<T>, TrackView> >>
TrackView::TrackView ( const T & obj)
inline

Definition at line 63 of file TrackView.h.

63 : m_ptr(&obj), m_vtable(&table<T>) {
64#if 0
66 using BareT = std::remove_cv_t<T>;
67 static_assert( std::is_same_v<BareT, xAOD::TrackParticle> || std::is_same_v<BareT, xAOD::TruthParticle>,
68 "unsupported TrackView type" );
69#endif
70 }

◆ TrackView() [3/5]

TrackView::TrackView ( const TrackView & t)
default

◆ TrackView() [4/5]

TrackView::TrackView ( const TrackView * )
delete

◆ TrackView() [5/5]

TrackView::TrackView ( TrackView * )
delete

◆ ~TrackView()

virtual TrackView::~TrackView ( )
virtualdefault

Member Function Documentation

◆ addChildren_impl()

template<typename T>
void TrackView::addChildren_impl ( const void * p,
std::vector< CHILDTYPE > & v )
inlinestaticprivate

Definition at line 289 of file TrackView.h.

289{ TrackTraits<T>::template addChildren<CHILDTYPE>(deref<T>(p), v ); }
static const T & deref(const void *p)
Definition TrackView.h:246
float p() const
Definition TrackView.h:94

◆ as()

template<typename T>
const T * TrackView::as ( ) const
inline

Definition at line 142 of file TrackView.h.

142{ return is<T>() ? static_cast<const T*>(m_ptr) : 0; }
bool is() const
Definition TrackView.h:140
unsigned long long T

◆ author()

unsigned TrackView::author ( ) const
inline

Definition at line 107 of file TrackView.h.

107{ return m_vtable->author(m_ptr);}

◆ author_impl()

template<typename T>
unsigned TrackView::author_impl ( const void * p)
inlinestaticprivate

Definition at line 268 of file TrackView.h.

static unsigned author(const T &)
Definition TrackTraits.h:77

◆ chi2()

float TrackView::chi2 ( ) const
inline

Definition at line 109 of file TrackView.h.

109{ return m_vtable->chi2(m_ptr); }

◆ chi2_impl()

template<typename T>
float TrackView::chi2_impl ( const void * p)
inlinestaticprivate

Definition at line 269 of file TrackView.h.

269{ return TrackTraits<T>::chi2(deref<T>(p)); }
static float chi2(const T &)
Definition TrackTraits.h:79

◆ child()

virtual const TrackView * TrackView::child ( size_t ) const
inlinevirtual

Reimplemented in ParentView.

Definition at line 153 of file TrackView.h.

153{ return 0; }

◆ childCount()

virtual size_t TrackView::childCount ( ) const
inlinevirtual

Reimplemented in ParentView.

Definition at line 151 of file TrackView.h.

151{ return 0; }

◆ covthetaOvP()

float TrackView::covthetaOvP ( ) const
inline

Definition at line 105 of file TrackView.h.

105{ return m_vtable->covthetaOvP(m_ptr); }

◆ covthetaOvP_impl()

template<typename T>
float TrackView::covthetaOvP_impl ( const void * p)
inlinestaticprivate

Definition at line 267 of file TrackView.h.

static float covthetaOvP(const T &)
Definition TrackTraits.h:75

◆ d0()

virtual float TrackView::d0 ( ) const
inlinevirtual

Reimplemented in TruthView.

Definition at line 88 of file TrackView.h.

88{ return m_vtable->d0(m_ptr); }

◆ d0_impl()

template<typename T>
float TrackView::d0_impl ( const void * p)
inlinestaticprivate

Definition at line 253 of file TrackView.h.

253{ return TrackTraits<T>::d0(deref<T>(p)); }
static float d0(const T &)
Definition TrackTraits.h:54

◆ dd0()

float TrackView::dd0 ( ) const
inline

Definition at line 102 of file TrackView.h.

102{ return m_vtable->dd0(m_ptr); }

◆ dd0_impl()

template<typename T>
float TrackView::dd0_impl ( const void * p)
inlinestaticprivate

Definition at line 265 of file TrackView.h.

265{ return TrackTraits<T>::dd0(deref<T>(p)); }
static float dd0(const T &)
Definition TrackTraits.h:71

◆ deref()

template<typename T>
const T & TrackView::deref ( const void * p)
inlinestaticprivate

Definition at line 246 of file TrackView.h.

246{ return *static_cast<const T*>(p); }

◆ deta()

float TrackView::deta ( ) const
inline

Definition at line 100 of file TrackView.h.

100{ return m_vtable->deta(m_ptr); }

◆ deta_impl()

template<typename T>
float TrackView::deta_impl ( const void * p)
inlinestaticprivate

Definition at line 263 of file TrackView.h.

263{ return TrackTraits<T>::deta(deref<T>(p)); }
static float deta(const T &)
Definition TrackTraits.h:68

◆ dphi()

float TrackView::dphi ( ) const
inline

Definition at line 97 of file TrackView.h.

97{ return m_vtable->dphi(m_ptr); }

◆ dphi_impl()

template<typename T>
float TrackView::dphi_impl ( const void * p)
inlinestaticprivate

Definition at line 260 of file TrackView.h.

260{ return TrackTraits<T>::dphi(deref<T>(p)); }
static float dphi(const T &)
Definition TrackTraits.h:64

◆ dpt()

float TrackView::dpt ( ) const
inline

Definition at line 103 of file TrackView.h.

103{ return m_vtable->dpt(m_ptr); }

◆ dpt_impl()

template<typename T>
float TrackView::dpt_impl ( const void * p)
inlinestaticprivate

Definition at line 266 of file TrackView.h.

266{ return TrackTraits<T>::dpt(deref<T>(p)); }
static float dpt(const T &)
Definition TrackTraits.h:73

◆ dqOverP()

float TrackView::dqOverP ( ) const
inline

Definition at line 99 of file TrackView.h.

99{ return m_vtable->dqOverP(m_ptr); }

◆ dqOverP_impl()

template<typename T>
float TrackView::dqOverP_impl ( const void * p)
inlinestaticprivate

Definition at line 262 of file TrackView.h.

static float dqOverP(const T &)
Definition TrackTraits.h:66

◆ dtheta()

float TrackView::dtheta ( ) const
inline

Definition at line 98 of file TrackView.h.

98{ return m_vtable->dtheta(m_ptr); }

◆ dtheta_impl()

template<typename T>
float TrackView::dtheta_impl ( const void * p)
inlinestaticprivate

Definition at line 261 of file TrackView.h.

static float dtheta(const T &)
Definition TrackTraits.h:65

◆ dz0()

float TrackView::dz0 ( ) const
inline

Definition at line 101 of file TrackView.h.

101{ return m_vtable->dz0(m_ptr); }

◆ dz0_impl()

template<typename T>
float TrackView::dz0_impl ( const void * p)
inlinestaticprivate

Definition at line 264 of file TrackView.h.

264{ return TrackTraits<T>::dz0(deref<T>(p)); }
static float dz0(const T &)
Definition TrackTraits.h:70

◆ E()

float TrackView::E ( ) const
inline

Definition at line 95 of file TrackView.h.

95{ return m_vtable->E(m_ptr); }

◆ E_impl()

template<typename T>
float TrackView::E_impl ( const void * p)
inlinestaticprivate

Definition at line 258 of file TrackView.h.

258{ return TrackTraits<T>::E(deref<T>(p)); }
static float E(const T &)
Definition TrackTraits.h:61

◆ ET()

float TrackView::ET ( ) const
inline

Definition at line 96 of file TrackView.h.

96{ return m_vtable->ET(m_ptr); }

◆ ET_impl()

template<typename T>
float TrackView::ET_impl ( const void * p)
inlinestaticprivate

Definition at line 259 of file TrackView.h.

259{ return TrackTraits<T>::ET(deref<T>(p)); }
static float ET(const T &)
Definition TrackTraits.h:62

◆ eta()

float TrackView::eta ( ) const
inline

Definition at line 83 of file TrackView.h.

83{ return m_vtable->eta(m_ptr); }

◆ eta_impl()

template<typename T>
float TrackView::eta_impl ( const void * p)
inlinestaticprivate

Definition at line 249 of file TrackView.h.

249{ return TrackTraits<T>::eta(deref<T>(p)); }
static float eta(const T &t)
Definition TrackTraits.h:50

◆ hasChildren()

virtual bool TrackView::hasChildren ( ) const
inlinevirtual

Reimplemented in ParentView.

Definition at line 149 of file TrackView.h.

149{ return false; }

◆ hasDecorations()

virtual bool TrackView::hasDecorations ( ) const
inlinevirtual

Reimplemented in TruthView.

Definition at line 161 of file TrackView.h.

161{ return false; }

◆ hasParent()

virtual bool TrackView::hasParent ( ) const
inlinevirtual

and doesn't have a parent ...

Reimplemented in ChildView.

Definition at line 157 of file TrackView.h.

157{ return false; }

◆ hasValidTime()

uint8_t TrackView::hasValidTime ( ) const
inline

Definition at line 112 of file TrackView.h.

112{ return m_vtable->hasValidTime(m_ptr); }

◆ hasValidTime_impl()

template<typename T>
uint8_t TrackView::hasValidTime_impl ( const void * p)
inlinestaticprivate

Definition at line 271 of file TrackView.h.

static uint8_t hasValidTime(const T &)
Definition TrackTraits.h:82

◆ is()

template<typename T>
bool TrackView::is ( ) const
inline

Definition at line 140 of file TrackView.h.

140{ return type()==typeid(T); }
const std::type_info & type() const
Definition TrackView.h:138

◆ isComposite()

virtual bool TrackView::isComposite ( ) const
inlinevirtual

standard TrackView can't have any children

Reimplemented in ParentView.

Definition at line 147 of file TrackView.h.

147{ return false; }

◆ m()

float TrackView::m ( ) const
inline

Definition at line 90 of file TrackView.h.

90{ return m_vtable->m(m_ptr); }

◆ m_impl()

template<typename T>
float TrackView::m_impl ( const void * p)
inlinestaticprivate

Definition at line 254 of file TrackView.h.

254{ return TrackTraits<T>::m(deref<T>(p)); }
static float m(const T &)
Definition TrackTraits.h:58

◆ ndof()

float TrackView::ndof ( ) const
inline

Definition at line 110 of file TrackView.h.

110{ return m_vtable->ndof(m_ptr); }

◆ ndof_impl()

template<typename T>
float TrackView::ndof_impl ( const void * p)
inlinestaticprivate

Definition at line 270 of file TrackView.h.

270{ return TrackTraits<T>::ndof(deref<T>(p)); }
static float ndof(const T &)
Definition TrackTraits.h:80

◆ nPixelHoles()

int TrackView::nPixelHoles ( ) const
inline

Definition at line 117 of file TrackView.h.

117{ return m_vtable->nPixelHoles(m_ptr); }

◆ nPixelHoles_impl()

template<typename T>
int TrackView::nPixelHoles_impl ( const void * p)
inlinestaticprivate

Definition at line 275 of file TrackView.h.

static int nPixelHoles(const T &)
Definition TrackTraits.h:91

◆ nPixels()

int TrackView::nPixels ( ) const
inline

Definition at line 115 of file TrackView.h.

115{ return m_vtable->nPixels(m_ptr); }

◆ nPixels_impl()

template<typename T>
int TrackView::nPixels_impl ( const void * p)
inlinestaticprivate

Definition at line 273 of file TrackView.h.

static int nPixels(const T &)
Definition TrackTraits.h:89

◆ nPixelsBlayer()

int TrackView::nPixelsBlayer ( ) const
inline

Definition at line 125 of file TrackView.h.

125{ return m_vtable->nPixelsBlayer(m_ptr); }

◆ nPixelsBlayer_impl()

template<typename T>
int TrackView::nPixelsBlayer_impl ( const void * p)
inlinestaticprivate

Definition at line 280 of file TrackView.h.

static int nPixelsBlayer(const T &)
Definition TrackTraits.h:99

◆ nPixelsBlayerEndcap()

int TrackView::nPixelsBlayerEndcap ( ) const
inline

Definition at line 126 of file TrackView.h.

126{ return m_vtable->nPixelsBlayerEndcap(m_ptr); }

◆ nPixelsBlayerEndcap_impl()

template<typename T>
int TrackView::nPixelsBlayerEndcap_impl ( const void * p)
inlinestaticprivate

Definition at line 281 of file TrackView.h.

static int nPixelsBlayerEndcap(const T &)

◆ nPixelsInner()

int TrackView::nPixelsInner ( ) const
inline

Definition at line 119 of file TrackView.h.

119{ return m_vtable->nPixelsInner(m_ptr); }

◆ nPixelsInner_impl()

template<typename T>
int TrackView::nPixelsInner_impl ( const void * p)
inlinestaticprivate

Definition at line 276 of file TrackView.h.

static int nPixelsInner(const T &)
Definition TrackTraits.h:93

◆ nPixelsInnerEndcap()

int TrackView::nPixelsInnerEndcap ( ) const
inline

Definition at line 120 of file TrackView.h.

120{ return m_vtable->nPixelsInnerEndcap(m_ptr); }

◆ nPixelsInnerEndcap_impl()

template<typename T>
int TrackView::nPixelsInnerEndcap_impl ( const void * p)
inlinestaticprivate

Definition at line 277 of file TrackView.h.

static int nPixelsInnerEndcap(const T &)
Definition TrackTraits.h:94

◆ nPixelsInnerShared()

int TrackView::nPixelsInnerShared ( ) const
inline

Definition at line 122 of file TrackView.h.

122{ return m_vtable->nPixelsInnerShared(m_ptr); }

◆ nPixelsInnerShared_impl()

template<typename T>
int TrackView::nPixelsInnerShared_impl ( const void * p)
inlinestaticprivate

Definition at line 278 of file TrackView.h.

static int nPixelsInnerShared(const T &)
Definition TrackTraits.h:96

◆ nPixelsInnerSharedEndcap()

int TrackView::nPixelsInnerSharedEndcap ( ) const
inline

Definition at line 123 of file TrackView.h.

123{ return m_vtable->nPixelsInnerSharedEndcap(m_ptr); }

◆ nPixelsInnerSharedEndcap_impl()

template<typename T>
int TrackView::nPixelsInnerSharedEndcap_impl ( const void * p)
inlinestaticprivate

Definition at line 279 of file TrackView.h.

static int nPixelsInnerSharedEndcap(const T &)
Definition TrackTraits.h:97

◆ nPixelsShared()

int TrackView::nPixelsShared ( ) const
inline

Definition at line 116 of file TrackView.h.

116{ return m_vtable->nPixelsShared(m_ptr); }

◆ nPixelsShared_impl()

template<typename T>
int TrackView::nPixelsShared_impl ( const void * p)
inlinestaticprivate

Definition at line 274 of file TrackView.h.

static int nPixelsShared(const T &)
Definition TrackTraits.h:90

◆ nSCT()

int TrackView::nSCT ( ) const
inline

Definition at line 128 of file TrackView.h.

128{ return m_vtable->nSCT(m_ptr); }

◆ nSCT_impl()

template<typename T>
int TrackView::nSCT_impl ( const void * p)
inlinestaticprivate

Definition at line 282 of file TrackView.h.

282{ return TrackTraits<T>::nSCT(deref<T>(p)); }
static int nSCT(const T &)

◆ nSCTHoles()

int TrackView::nSCTHoles ( ) const
inline

Definition at line 130 of file TrackView.h.

130{ return m_vtable->nSCTHoles(m_ptr); }

◆ nSCTHoles_impl()

template<typename T>
int TrackView::nSCTHoles_impl ( const void * p)
inlinestaticprivate

Definition at line 284 of file TrackView.h.

static int nSCTHoles(const T &)

◆ nSCTShared()

int TrackView::nSCTShared ( ) const
inline

Definition at line 129 of file TrackView.h.

129{ return m_vtable->nSCTShared(m_ptr); }

◆ nSCTShared_impl()

template<typename T>
int TrackView::nSCTShared_impl ( const void * p)
inlinestaticprivate

Definition at line 283 of file TrackView.h.

static int nSCTShared(const T &)

◆ nSi()

int TrackView::nSi ( ) const
inline

Definition at line 132 of file TrackView.h.

132{ return m_vtable->nSi(m_ptr); }

◆ nSi_impl()

template<typename T>
int TrackView::nSi_impl ( const void * p)
inlinestaticprivate

Definition at line 285 of file TrackView.h.

285{ return TrackTraits<T>::nSi(deref<T>(p)); }
static int nSi(const T &)

◆ nSiHoles()

int TrackView::nSiHoles ( ) const
inline

Definition at line 133 of file TrackView.h.

133{ return m_vtable->nSiHoles(m_ptr); }

◆ nSiHoles_impl()

template<typename T>
int TrackView::nSiHoles_impl ( const void * p)
inlinestaticprivate

Definition at line 286 of file TrackView.h.

static int nSiHoles(const T &)

◆ nTRT()

int TrackView::nTRT ( ) const
inline

Definition at line 135 of file TrackView.h.

135{ return m_vtable->nTRT(m_ptr); }

◆ nTRT_impl()

template<typename T>
int TrackView::nTRT_impl ( const void * p)
inlinestaticprivate

Definition at line 287 of file TrackView.h.

287{ return TrackTraits<T>::nTRT(deref<T>(p)); }
static int nTRT(const T &)

◆ nTRTHi()

int TrackView::nTRTHi ( ) const
inline

Definition at line 136 of file TrackView.h.

136{ return m_vtable->nTRTHi(m_ptr); }

◆ nTRTHi_impl()

template<typename T>
int TrackView::nTRTHi_impl ( const void * p)
inlinestaticprivate

Definition at line 288 of file TrackView.h.

static int nTRTHi(const T &)

◆ p()

float TrackView::p ( ) const
inline

Definition at line 94 of file TrackView.h.

94{ return m_vtable->p(m_ptr); }

◆ p_impl()

template<typename T>
float TrackView::p_impl ( const void * p)
inlinestaticprivate

Definition at line 257 of file TrackView.h.

257{ return TrackTraits<T>::p(deref<T>(p)); }
static float p(const T &)
Definition TrackTraits.h:56

◆ parent()

virtual const TrackView * TrackView::parent ( ) const
inlinevirtual

Reimplemented in ChildView.

Definition at line 159 of file TrackView.h.

159{ return 0; }

◆ phi()

virtual float TrackView::phi ( ) const
inlinevirtual

Reimplemented in TruthView.

Definition at line 86 of file TrackView.h.

86{ return m_vtable->phi(m_ptr); }

◆ phi_impl()

template<typename T>
float TrackView::phi_impl ( const void * p)
inlinestaticprivate

Definition at line 251 of file TrackView.h.

251{ return TrackTraits<T>::phi(deref<T>(p)); }
static float phi(const T &t)
Definition TrackTraits.h:52

◆ pt()

float TrackView::pt ( ) const
inline

Definition at line 82 of file TrackView.h.

82{ return m_vtable->pt(m_ptr); }

◆ pt_impl()

template<typename T>
float TrackView::pt_impl ( const void * p)
inlinestaticprivate

Definition at line 248 of file TrackView.h.

248{ return TrackTraits<T>::pt(deref<T>(p)); }
static float pt(const T &t)
Definition TrackTraits.h:49

◆ ptr()

const void * TrackView::ptr ( ) const
inline

Definition at line 80 of file TrackView.h.

80{ return m_ptr; }

◆ qOverP()

float TrackView::qOverP ( ) const
inline

Definition at line 92 of file TrackView.h.

92{ return m_vtable->qOverP(m_ptr); }

◆ qOverP_impl()

template<typename T>
float TrackView::qOverP_impl ( const void * p)
inlinestaticprivate

Definition at line 255 of file TrackView.h.

static float qOverP(const T &)
Definition TrackTraits.h:55

◆ theta()

float TrackView::theta ( ) const
inline

Definition at line 84 of file TrackView.h.

84{ return m_vtable->theta(m_ptr); }

◆ theta_impl()

template<typename T>
float TrackView::theta_impl ( const void * p)
inlinestaticprivate

Definition at line 250 of file TrackView.h.

250{ return TrackTraits<T>::theta(deref<T>(p)); }
static float theta(const T &)
Definition TrackTraits.h:51

◆ time()

float TrackView::time ( ) const
inline

Definition at line 113 of file TrackView.h.

113{ return m_vtable->time(m_ptr); }

◆ time_impl()

template<typename T>
float TrackView::time_impl ( const void * p)
inlinestaticprivate

Definition at line 272 of file TrackView.h.

272{ return TrackTraits<T>::time(deref<T>(p)); }
static float time(const T &)
Definition TrackTraits.h:83

◆ type()

const std::type_info & TrackView::type ( ) const
inline

Definition at line 138 of file TrackView.h.

138{ return *m_vtable->m_type; }

◆ vtable()

const VTable * TrackView::vtable ( ) const
inlineprotected

Definition at line 172 of file TrackView.h.

172{ return m_vtable; };

◆ z0()

virtual float TrackView::z0 ( ) const
inlinevirtual

Reimplemented in TruthView.

Definition at line 87 of file TrackView.h.

87{ return m_vtable->z0(m_ptr); }

◆ z0_impl()

template<typename T>
float TrackView::z0_impl ( const void * p)
inlinestaticprivate

Definition at line 252 of file TrackView.h.

252{ return TrackTraits<T>::z0(deref<T>(p)); }
static float z0(const T &)
Definition TrackTraits.h:53

Member Data Documentation

◆ m_ptr

const void* TrackView::m_ptr
private

Definition at line 176 of file TrackView.h.

◆ m_vtable

const VTable* TrackView::m_vtable
private

Definition at line 177 of file TrackView.h.

◆ table

template<typename T>
const TrackView::VTable TrackView::table
inlinestaticprivate

Definition at line 294 of file TrackView.h.

294 {
336 &typeid(T)
337};
static float theta_impl(const void *p)
Definition TrackView.h:250
static float dtheta_impl(const void *p)
Definition TrackView.h:261
static int nSi_impl(const void *p)
Definition TrackView.h:285
static int nPixelsInnerShared_impl(const void *p)
Definition TrackView.h:278
static int nPixelsInnerEndcap_impl(const void *p)
Definition TrackView.h:277
static int nPixelHoles_impl(const void *p)
Definition TrackView.h:275
static float dphi_impl(const void *p)
Definition TrackView.h:260
static float deta_impl(const void *p)
Definition TrackView.h:263
static uint8_t hasValidTime_impl(const void *p)
Definition TrackView.h:271
static float ET_impl(const void *p)
Definition TrackView.h:259
static int nTRTHi_impl(const void *p)
Definition TrackView.h:288
static float chi2_impl(const void *p)
Definition TrackView.h:269
static int nPixelsInnerSharedEndcap_impl(const void *p)
Definition TrackView.h:279
static int nSiHoles_impl(const void *p)
Definition TrackView.h:286
static float z0_impl(const void *p)
Definition TrackView.h:252
static int nPixelsBlayer_impl(const void *p)
Definition TrackView.h:280
static float m_impl(const void *p)
Definition TrackView.h:254
static int nPixels_impl(const void *p)
Definition TrackView.h:273
static int nSCTShared_impl(const void *p)
Definition TrackView.h:283
static int nSCT_impl(const void *p)
Definition TrackView.h:282
static float dd0_impl(const void *p)
Definition TrackView.h:265
static float eta_impl(const void *p)
Definition TrackView.h:249
static float d0_impl(const void *p)
Definition TrackView.h:253
static float E_impl(const void *p)
Definition TrackView.h:258
static int nSCTHoles_impl(const void *p)
Definition TrackView.h:284
static unsigned author_impl(const void *p)
Definition TrackView.h:268
static int nPixelsShared_impl(const void *p)
Definition TrackView.h:274
static float ndof_impl(const void *p)
Definition TrackView.h:270
static float dpt_impl(const void *p)
Definition TrackView.h:266
static void addChildren_impl(const void *p, std::vector< CHILDTYPE > &v)
Definition TrackView.h:289
static float dqOverP_impl(const void *p)
Definition TrackView.h:262
static float pt_impl(const void *p)
Definition TrackView.h:248
static float phi_impl(const void *p)
Definition TrackView.h:251
static float qOverP_impl(const void *p)
Definition TrackView.h:255
static float covthetaOvP_impl(const void *p)
Definition TrackView.h:267
static float p_impl(const void *p)
Definition TrackView.h:257
static float dz0_impl(const void *p)
Definition TrackView.h:264
static float time_impl(const void *p)
Definition TrackView.h:272
static int nPixelsInner_impl(const void *p)
Definition TrackView.h:276
static int nTRT_impl(const void *p)
Definition TrackView.h:287
static int nPixelsBlayerEndcap_impl(const void *p)
Definition TrackView.h:281

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