ATLAS Offline Software
Loading...
Searching...
No Matches
TrackView.h
Go to the documentation of this file.
1/* emacs: this is -*- c++ -*- */
13
14
15#ifndef TRIGIDR4MONITORING_TRACKVIEW_H
16#define TRIGIDR4MONITORING_TRACKVIEW_H
17
18#include "TrackTraits.h"
19
20#include <vector>
21#include <cstdint>
22#include <iostream>
23#include <typeinfo>
24
29
36
37// #include "xAODTracking/TrackParticle.h"
38// #include "xAODTruth/TruthParticle.h"
39
40class ChildView;
41
42
43class TrackView {
44
45public:
46
47 template<typename T>
48 TrackView(const T* pobj) : 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 }
60
61 template<typename T,
62 typename=std::enable_if_t< !std::is_pointer_v<T> && !std::is_same_v<std::decay_t<T>, TrackView> > >
63 TrackView(const T& obj) : 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 }
71
72 TrackView( const TrackView& t ) = default;
73
74 TrackView( const TrackView* ) = delete; // prevent implicitly creating a TrackView with an internal TrackView*
75 TrackView( TrackView* ) = delete;
76
77 virtual ~TrackView() = default;
78
79
80 const void* ptr() const { return m_ptr; }
81
82 float pt() const { return m_vtable->pt(m_ptr); }
83 float eta() const { return m_vtable->eta(m_ptr); }
84 float theta() const { return m_vtable->theta(m_ptr); }
85
86 virtual float phi() const { return m_vtable->phi(m_ptr); }
87 virtual float z0() const { return m_vtable->z0(m_ptr); }
88 virtual float d0() const { return m_vtable->d0(m_ptr); }
89
90 float m() const { return m_vtable->m(m_ptr); }
91
92 float qOverP() const { return m_vtable->qOverP(m_ptr); }
93
94 float p() const { return m_vtable->p(m_ptr); }
95 float E() const { return m_vtable->E(m_ptr); }
96 float ET() const { return m_vtable->ET(m_ptr); }
97 float dphi() const { return m_vtable->dphi(m_ptr); }
98 float dtheta() const { return m_vtable->dtheta(m_ptr); }
99 float dqOverP() const { return m_vtable->dqOverP(m_ptr); }
100 float deta() const { return m_vtable->deta(m_ptr); }
101 float dz0() const { return m_vtable->dz0(m_ptr); }
102 float dd0() const { return m_vtable->dd0(m_ptr); }
103 float dpt() const { return m_vtable->dpt(m_ptr); }
104
105 float covthetaOvP() const { return m_vtable->covthetaOvP(m_ptr); }
106
107 unsigned author() const { return m_vtable->author(m_ptr);}
108
109 float chi2() const { return m_vtable->chi2(m_ptr); }
110 float ndof() const { return m_vtable->ndof(m_ptr); }
111
112 uint8_t hasValidTime() const { return m_vtable->hasValidTime(m_ptr); }
113 float time() const { return m_vtable->time(m_ptr); }
114
115 int nPixels() const { return m_vtable->nPixels(m_ptr); }
116 int nPixelsShared() const { return m_vtable->nPixelsShared(m_ptr); }
117 int nPixelHoles() const { return m_vtable->nPixelHoles(m_ptr); }
118
119 int nPixelsInner() const { return m_vtable->nPixelsInner(m_ptr); }
120 int nPixelsInnerEndcap() const { return m_vtable->nPixelsInnerEndcap(m_ptr); }
121
122 int nPixelsInnerShared() const { return m_vtable->nPixelsInnerShared(m_ptr); }
123 int nPixelsInnerSharedEndcap() const { return m_vtable->nPixelsInnerSharedEndcap(m_ptr); }
124
125 int nPixelsBlayer() const { return m_vtable->nPixelsBlayer(m_ptr); }
126 int nPixelsBlayerEndcap() const { return m_vtable->nPixelsBlayerEndcap(m_ptr); }
127
128 int nSCT() const { return m_vtable->nSCT(m_ptr); }
129 int nSCTShared() const { return m_vtable->nSCTShared(m_ptr); }
130 int nSCTHoles() const { return m_vtable->nSCTHoles(m_ptr); }
131
132 int nSi() const { return m_vtable->nSi(m_ptr); }
133 int nSiHoles() const { return m_vtable->nSiHoles(m_ptr); }
134
135 int nTRT() const { return m_vtable->nTRT(m_ptr); }
136 int nTRTHi() const { return m_vtable->nTRTHi(m_ptr); }
137
138 const std::type_info& type() const { return *m_vtable->m_type; }
139
140 template<typename T> bool is() const { return type()==typeid(T); }
141
142 template<typename T> const T* as() const { return is<T>() ? static_cast<const T*>(m_ptr) : 0; }
143
144
146
147 virtual bool isComposite() const { return false; }
148
149 virtual bool hasChildren() const { return false; }
150
151 virtual size_t childCount() const { return 0; }
152
153 virtual const TrackView* child(size_t ) const { return 0; }
154
156
157 virtual bool hasParent() const { return false; }
158
159 virtual const TrackView* parent() const { return 0; }
160
161 virtual bool hasDecorations() const { return false; }
162
165
166private:
167
168 struct VTable;
169
170protected:
171
172 const VTable* vtable() const { return m_vtable; };
173
174private:
175
176 const void* m_ptr;
178
179private:
180
182
184
185 struct VTable {
186 float (*pt)(const void*);
187 float (*eta)(const void*);
188 float (*theta)(const void*);
189 float (*phi)(const void*);
190 float (*z0)(const void*);
191 float (*d0)(const void*);
192 float (*m)(const void*);
193 float (*qOverP)(const void*);
194 float (*p)(const void*);
195 float (*E)(const void*);
196 float (*ET)(const void*);
197 float (*dphi)(const void*);
198 float (*dtheta)(const void*);
199 float (*dqOverP)(const void*);
200 float (*deta)(const void*);
201 float (*dz0)(const void*);
202 float (*dd0)(const void*);
203 float (*dpt)(const void*);
204
205 float (*covthetaOvP)(const void*);
206
207 unsigned (*author)(const void*);
208
209 float (*chi2)(const void*);
210 float (*ndof)(const void*);
211
212 uint8_t (*hasValidTime)(const void*);
213 float (*time)(const void*);
214
215 int (*nPixels)(const void*);
216 int (*nPixelsShared)(const void*);
217 int (*nPixelHoles)(const void*);
218
219 int (*nPixelsInner)(const void*);
220 int (*nPixelsInnerEndcap)(const void*);
221
222 int (*nPixelsInnerShared)(const void*);
223 int (*nPixelsInnerSharedEndcap)(const void*);
224
225 int (*nPixelsBlayer)(const void*);
226 int (*nPixelsBlayerEndcap)(const void*);
227
228 int (*nSCT)(const void*);
229 int (*nSCTShared)(const void*);
230 int (*nSCTHoles)(const void*);
231 int (*nSi)(const void*);
232 int (*nSiHoles)(const void*);
233 int (*nTRT)(const void*);
234 int (*nTRTHi)(const void*);
235
237 void (*addChildren)(const void*, std::vector<CHILDTYPE>& );
238
239 const std::type_info* m_type;
240 };
241
242 template<typename T> static const VTable table;
243
244
245 template<typename T>
246 static const T& deref(const void* p) { return *static_cast<const T*>(p); }
247
248 template<typename T> static float pt_impl(const void* p) { return TrackTraits<T>::pt(deref<T>(p)); }
249 template<typename T> static float eta_impl(const void* p) { return TrackTraits<T>::eta(deref<T>(p)); }
250 template<typename T> static float theta_impl(const void* p) { return TrackTraits<T>::theta(deref<T>(p)); }
251 template<typename T> static float phi_impl(const void* p) { return TrackTraits<T>::phi(deref<T>(p)); }
252 template<typename T> static float z0_impl(const void* p) { return TrackTraits<T>::z0(deref<T>(p)); }
253 template<typename T> static float d0_impl(const void* p) { return TrackTraits<T>::d0(deref<T>(p)); }
254 template<typename T> static float m_impl(const void* p) { return TrackTraits<T>::m(deref<T>(p)); }
255 template<typename T> static float qOverP_impl(const void* p) { return TrackTraits<T>::qOverP(deref<T>(p)); }
256
257 template<typename T> static float p_impl(const void* p) { return TrackTraits<T>::p(deref<T>(p)); }
258 template<typename T> static float E_impl(const void* p) { return TrackTraits<T>::E(deref<T>(p)); }
259 template<typename T> static float ET_impl(const void* p) { return TrackTraits<T>::ET(deref<T>(p)); }
260 template<typename T> static float dphi_impl(const void* p) { return TrackTraits<T>::dphi(deref<T>(p)); }
261 template<typename T> static float dtheta_impl(const void* p) { return TrackTraits<T>::dtheta(deref<T>(p)); }
262 template<typename T> static float dqOverP_impl(const void* p) { return TrackTraits<T>::dqOverP(deref<T>(p)); }
263 template<typename T> static float deta_impl(const void* p) { return TrackTraits<T>::deta(deref<T>(p)); }
264 template<typename T> static float dz0_impl(const void* p) { return TrackTraits<T>::dz0(deref<T>(p)); }
265 template<typename T> static float dd0_impl(const void* p) { return TrackTraits<T>::dd0(deref<T>(p)); }
266 template<typename T> static float dpt_impl(const void* p) { return TrackTraits<T>::dpt(deref<T>(p)); }
267 template<typename T> static float covthetaOvP_impl(const void* p) { return TrackTraits<T>::covthetaOvP(deref<T>(p)); }
268 template<typename T> static unsigned author_impl(const void* p) { return TrackTraits<T>::author(deref<T>(p)); }
269 template<typename T> static float chi2_impl(const void* p) { return TrackTraits<T>::chi2(deref<T>(p)); }
270 template<typename T> static float ndof_impl(const void* p) { return TrackTraits<T>::ndof(deref<T>(p)); }
271 template<typename T> static uint8_t hasValidTime_impl(const void* p) { return TrackTraits<T>::hasValidTime(deref<T>(p)); }
272 template<typename T> static float time_impl(const void* p) { return TrackTraits<T>::time(deref<T>(p)); }
273 template<typename T> static int nPixels_impl(const void* p) { return TrackTraits<T>::nPixels(deref<T>(p)); }
274 template<typename T> static int nPixelsShared_impl(const void* p) { return TrackTraits<T>::nPixelsShared(deref<T>(p)); }
275 template<typename T> static int nPixelHoles_impl(const void* p) { return TrackTraits<T>::nPixelHoles(deref<T>(p)); }
276 template<typename T> static int nPixelsInner_impl(const void* p) { return TrackTraits<T>::nPixelsInner(deref<T>(p)); }
277 template<typename T> static int nPixelsInnerEndcap_impl(const void* p) { return TrackTraits<T>::nPixelsInnerEndcap(deref<T>(p)); }
278 template<typename T> static int nPixelsInnerShared_impl(const void* p) { return TrackTraits<T>::nPixelsInnerShared(deref<T>(p)); }
279 template<typename T> static int nPixelsInnerSharedEndcap_impl(const void* p) { return TrackTraits<T>::nPixelsInnerSharedEndcap(deref<T>(p)); }
280 template<typename T> static int nPixelsBlayer_impl(const void* p) { return TrackTraits<T>::nPixelsBlayer(deref<T>(p)); }
281 template<typename T> static int nPixelsBlayerEndcap_impl(const void* p) { return TrackTraits<T>::nPixelsBlayerEndcap(deref<T>(p)); }
282 template<typename T> static int nSCT_impl(const void* p) { return TrackTraits<T>::nSCT(deref<T>(p)); }
283 template<typename T> static int nSCTShared_impl(const void* p) { return TrackTraits<T>::nSCTShared(deref<T>(p)); }
284 template<typename T> static int nSCTHoles_impl(const void* p) { return TrackTraits<T>::nSCTHoles(deref<T>(p)); }
285 template<typename T> static int nSi_impl(const void* p) { return TrackTraits<T>::nSi(deref<T>(p)); }
286 template<typename T> static int nSiHoles_impl(const void* p) { return TrackTraits<T>::nSiHoles(deref<T>(p)); }
287 template<typename T> static int nTRT_impl(const void* p) { return TrackTraits<T>::nTRT(deref<T>(p)); }
288 template<typename T> static int nTRTHi_impl(const void* p) { return TrackTraits<T>::nTRTHi(deref<T>(p)); }
289 template<typename T> static void addChildren_impl(const void* p, std::vector<CHILDTYPE>& v ) { TrackTraits<T>::template addChildren<CHILDTYPE>(deref<T>(p), v ); }
290
291};
292
293template<typename T>
338
339
340inline std::ostream& operator<<( std::ostream& s, const TrackView& t ) {
341 s << " [ "
342 << "eta=" << t.eta()
343 << "\tphi=" << t.phi()
344 << "\tpt=" << t.pt()
345 << "\tz0=" << t.z0()
346 << "\td0=" << t.d0();
347 s << "\t : ptr=" << t.ptr() << " (" << &t << ")" << " ]";
348
349 if ( t.hasParent() ) s << "\t( parent: " << t.parent()->ptr() << " )";
350
351 if ( t.hasChildren() ) {
352 for ( size_t i=0 ; i<t.childCount() ; i++ ) s << "\n\t\t[" << *t.child(i) << "]";
353 }
354 return s;
355}
356
357
358
359#endif // TRIGIDR4MONITORING_TRACKVIEW_H
360
361
362
363
364
365
366
367
368
369
std::ostream & operator<<(std::ostream &s, const TrackView &t)
Definition TrackView.h:340
a TrackView that can have a parent to store the Electron, or Tau etc Z bosons etc
Definition ChildView.h:26
forward declaration required for function prototype
Definition TrackView.h:43
float pt() const
Definition TrackView.h:82
int nTRT() const
Definition TrackView.h:135
virtual bool hasParent() const
and doesn't have a parent ...
Definition TrackView.h:157
int nPixelsInnerShared() const
Definition TrackView.h:122
int nPixelHoles() const
Definition TrackView.h:117
const void * ptr() const
Definition TrackView.h:80
static float theta_impl(const void *p)
Definition TrackView.h:250
static float dtheta_impl(const void *p)
Definition TrackView.h:261
virtual const TrackView * child(size_t) const
Definition TrackView.h:153
static int nSi_impl(const void *p)
Definition TrackView.h:285
static int nPixelsInnerShared_impl(const void *p)
Definition TrackView.h:278
TrackView(const TrackView *)=delete
float dpt() const
Definition TrackView.h:103
static int nPixelsInnerEndcap_impl(const void *p)
Definition TrackView.h:277
int nPixelsInnerSharedEndcap() const
Definition TrackView.h:123
ChildView CHILDTYPE
so we can more easily change the type if required ...
Definition TrackView.h:183
const VTable * vtable() const
Definition TrackView.h:172
virtual float d0() const
Definition TrackView.h:88
virtual float z0() const
Definition TrackView.h:87
static int nPixelHoles_impl(const void *p)
Definition TrackView.h:275
static const T & deref(const void *p)
Definition TrackView.h:246
static float dphi_impl(const void *p)
Definition TrackView.h:260
static float deta_impl(const void *p)
Definition TrackView.h:263
float dqOverP() const
Definition TrackView.h:99
static uint8_t hasValidTime_impl(const void *p)
Definition TrackView.h:271
virtual bool hasDecorations() const
Definition TrackView.h:161
int nPixelsInnerEndcap() const
Definition TrackView.h:120
static float ET_impl(const void *p)
Definition TrackView.h:259
TrackView(TrackView *)=delete
float dz0() const
Definition TrackView.h:101
virtual bool isComposite() const
standard TrackView can't have any children
Definition TrackView.h:147
static int nTRTHi_impl(const void *p)
Definition TrackView.h:288
static float chi2_impl(const void *p)
Definition TrackView.h:269
int nPixelsBlayerEndcap() const
Definition TrackView.h:126
static int nPixelsInnerSharedEndcap_impl(const void *p)
Definition TrackView.h:279
int nSCTHoles() const
Definition TrackView.h:130
virtual bool hasChildren() const
Definition TrackView.h:149
static int nSiHoles_impl(const void *p)
Definition TrackView.h:286
float theta() const
Definition TrackView.h:84
static float z0_impl(const void *p)
Definition TrackView.h:252
static int nPixelsBlayer_impl(const void *p)
Definition TrackView.h:280
int nSiHoles() const
Definition TrackView.h:133
static float m_impl(const void *p)
Definition TrackView.h:254
TrackView(const T *pobj)
Definition TrackView.h:48
unsigned author() const
Definition TrackView.h:107
const std::type_info & type() const
Definition TrackView.h:138
static int nPixels_impl(const void *p)
Definition TrackView.h:273
int nSCT() const
Definition TrackView.h:128
static int nSCTShared_impl(const void *p)
Definition TrackView.h:283
static int nSCT_impl(const void *p)
Definition TrackView.h:282
bool is() const
Definition TrackView.h:140
static float dd0_impl(const void *p)
Definition TrackView.h:265
static float eta_impl(const void *p)
Definition TrackView.h:249
virtual const TrackView * parent() const
Definition TrackView.h:159
static float d0_impl(const void *p)
Definition TrackView.h:253
static float E_impl(const void *p)
Definition TrackView.h:258
const T * as() const
Definition TrackView.h:142
float ndof() const
Definition TrackView.h:110
static int nSCTHoles_impl(const void *p)
Definition TrackView.h:284
float deta() const
Definition TrackView.h:100
virtual ~TrackView()=default
float eta() const
Definition TrackView.h:83
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
int nPixelsShared() const
Definition TrackView.h:116
float m() const
Definition TrackView.h:90
float chi2() const
Definition TrackView.h:109
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
int nPixels() const
Definition TrackView.h:115
int nPixelsInner() const
Definition TrackView.h:119
virtual float phi() const
Definition TrackView.h:86
static float pt_impl(const void *p)
Definition TrackView.h:248
TrackView(const TrackView &t)=default
static float phi_impl(const void *p)
Definition TrackView.h:251
float covthetaOvP() const
Definition TrackView.h:105
const VTable * m_vtable
Definition TrackView.h:177
static float qOverP_impl(const void *p)
Definition TrackView.h:255
float p() const
Definition TrackView.h:94
float dtheta() const
Definition TrackView.h:98
float time() const
Definition TrackView.h:113
TrackView(const T &obj)
Definition TrackView.h:63
float dd0() const
Definition TrackView.h:102
float ET() const
Definition TrackView.h:96
const void * m_ptr
Definition TrackView.h:176
uint8_t hasValidTime() const
Definition TrackView.h:112
int nSi() const
Definition TrackView.h:132
static float covthetaOvP_impl(const void *p)
Definition TrackView.h:267
float E() const
Definition TrackView.h:95
int nSCTShared() const
Definition TrackView.h:129
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 const VTable table
Definition TrackView.h:294
float dphi() const
Definition TrackView.h:97
float qOverP() const
Definition TrackView.h:92
int nTRTHi() const
Definition TrackView.h:136
virtual size_t childCount() const
Definition TrackView.h:151
static int nTRT_impl(const void *p)
Definition TrackView.h:287
static int nPixelsBlayerEndcap_impl(const void *p)
Definition TrackView.h:281
int nPixelsBlayer() const
Definition TrackView.h:125
static int nPixelsShared(const T &)
Definition TrackTraits.h:90
static float ET(const T &)
Definition TrackTraits.h:62
static int nSi(const T &)
static uint8_t hasValidTime(const T &)
Definition TrackTraits.h:82
static int nSCTShared(const T &)
static float z0(const T &)
Definition TrackTraits.h:53
static int nPixels(const T &)
Definition TrackTraits.h:89
static float eta(const T &t)
Definition TrackTraits.h:50
static float deta(const T &)
Definition TrackTraits.h:68
static int nPixelHoles(const T &)
Definition TrackTraits.h:91
static int nPixelsInnerEndcap(const T &)
Definition TrackTraits.h:94
static float phi(const T &t)
Definition TrackTraits.h:52
static float d0(const T &)
Definition TrackTraits.h:54
static float m(const T &)
Definition TrackTraits.h:58
static float theta(const T &)
Definition TrackTraits.h:51
static int nSCT(const T &)
static float pt(const T &t)
Definition TrackTraits.h:49
static float time(const T &)
Definition TrackTraits.h:83
static int nPixelsBlayer(const T &)
Definition TrackTraits.h:99
static float chi2(const T &)
Definition TrackTraits.h:79
static float E(const T &)
Definition TrackTraits.h:61
static int nTRTHi(const T &)
static float dqOverP(const T &)
Definition TrackTraits.h:66
static int nSCTHoles(const T &)
static int nTRT(const T &)
static unsigned author(const T &)
Definition TrackTraits.h:77
static int nSiHoles(const T &)
static float p(const T &)
Definition TrackTraits.h:56
static float dphi(const T &)
Definition TrackTraits.h:64
static int nPixelsInner(const T &)
Definition TrackTraits.h:93
static int nPixelsInnerShared(const T &)
Definition TrackTraits.h:96
static int nPixelsBlayerEndcap(const T &)
static float dz0(const T &)
Definition TrackTraits.h:70
static float dpt(const T &)
Definition TrackTraits.h:73
static int nPixelsInnerSharedEndcap(const T &)
Definition TrackTraits.h:97
static float ndof(const T &)
Definition TrackTraits.h:80
static float dd0(const T &)
Definition TrackTraits.h:71
static float qOverP(const T &)
Definition TrackTraits.h:55
static float dtheta(const T &)
Definition TrackTraits.h:65
static float covthetaOvP(const T &)
Definition TrackTraits.h:75
int(* nPixelsInnerEndcap)(const void *)
Definition TrackView.h:220
float(* time)(const void *)
Definition TrackView.h:213
float(* d0)(const void *)
Definition TrackView.h:191
float(* chi2)(const void *)
Definition TrackView.h:209
int(* nTRTHi)(const void *)
Definition TrackView.h:234
float(* phi)(const void *)
Definition TrackView.h:189
float(* eta)(const void *)
Definition TrackView.h:187
int(* nPixelsBlayerEndcap)(const void *)
Definition TrackView.h:226
float(* E)(const void *)
Definition TrackView.h:195
float(* dtheta)(const void *)
Definition TrackView.h:198
float(* dz0)(const void *)
Definition TrackView.h:201
float(* dphi)(const void *)
Definition TrackView.h:197
float(* dd0)(const void *)
Definition TrackView.h:202
float(* dqOverP)(const void *)
Definition TrackView.h:199
float(* z0)(const void *)
Definition TrackView.h:190
int(* nSCT)(const void *)
Definition TrackView.h:228
float(* m)(const void *)
Definition TrackView.h:192
int(* nTRT)(const void *)
Definition TrackView.h:233
float(* qOverP)(const void *)
Definition TrackView.h:193
int(* nSCTShared)(const void *)
Definition TrackView.h:229
int(* nPixelsInnerSharedEndcap)(const void *)
Definition TrackView.h:223
int(* nSi)(const void *)
Definition TrackView.h:231
float(* dpt)(const void *)
Definition TrackView.h:203
float(* theta)(const void *)
Definition TrackView.h:188
int(* nPixelHoles)(const void *)
Definition TrackView.h:217
int(* nSCTHoles)(const void *)
Definition TrackView.h:230
int(* nSiHoles)(const void *)
Definition TrackView.h:232
int(* nPixelsBlayer)(const void *)
Definition TrackView.h:225
float(* p)(const void *)
Definition TrackView.h:194
unsigned(* author)(const void *)
Definition TrackView.h:207
float(* pt)(const void *)
Definition TrackView.h:186
uint8_t(* hasValidTime)(const void *)
Definition TrackView.h:212
const std::type_info * m_type
Definition TrackView.h:239
void(* addChildren)(const void *, std::vector< CHILDTYPE > &)
need this in the vtable, but we don't want it exposed in the TrackView
Definition TrackView.h:237
int(* nPixelsInnerShared)(const void *)
Definition TrackView.h:222
float(* deta)(const void *)
Definition TrackView.h:200
float(* covthetaOvP)(const void *)
Definition TrackView.h:205
int(* nPixelsShared)(const void *)
Definition TrackView.h:216
int(* nPixels)(const void *)
Definition TrackView.h:215
float(* ET)(const void *)
Definition TrackView.h:196
int(* nPixelsInner)(const void *)
Definition TrackView.h:219
float(* ndof)(const void *)
Definition TrackView.h:210