ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
SvtxTrack_FastSim_v2.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file SvtxTrack_FastSim_v2.h
1
/*
2
* SvtxTrack_FastSim_v2.h
3
*/
4
5
#ifndef TRACKBASEHISTORIC_SVTXTRACKFASTSIMV2_H
6
#define TRACKBASEHISTORIC_SVTXTRACKFASTSIMV2_H
7
8
#include "
SvtxTrack_v2.h
"
9
10
// SvtxTrack_FastSim with recording of associated G4hits
11
class
SvtxTrack_FastSim_v2
final:
public
SvtxTrack_v2
12
{
13
public
:
14
15
//* constructor
16
SvtxTrack_FastSim_v2
() =
default
;
17
18
//* base class copy constructor
19
SvtxTrack_FastSim_v2
(
const
SvtxTrack
& );
20
21
//* destructor
22
~SvtxTrack_FastSim_v2
()
override
=
default
;
23
24
// copy content from base class
25
void
CopyFrom
(
const
SvtxTrack
& )
override
;
26
void
CopyFrom
(
SvtxTrack
* source )
override
27
{
CopyFrom
( *source ); }
28
29
// The "standard PHObject response" functions...
30
void
identify
(std::ostream& os = std::cout)
const override
;
31
void
Reset
()
override
{ *
this
=
SvtxTrack_FastSim_v2
(); }
32
int
isValid
()
const override
;
33
34
PHObject
*
CloneMe
()
const override
35
{
return
new
SvtxTrack_FastSim_v2
(*
this
); }
36
38
39
40
unsigned
int
get_truth_track_id
()
const override
41
{
return
_truth_track_id
; }
42
43
unsigned
int
get_num_measurements
()
const override
44
{
return
_nmeas
; }
45
46
const
HitIdMap
&
g4hit_ids
()
const override
47
{
return
_g4hit_ids
; }
48
49
bool
empty_g4hit_id
()
const override
50
{
return
_g4hit_ids
.empty(); }
51
52
size_t
size_g4hit_id
()
const override
53
{
return
_g4hit_ids
.size(); }
54
55
SvtxTrack::HitIdConstIter
begin_g4hit_id
()
const override
56
{
return
_g4hit_ids
.begin(); }
57
58
SvtxTrack::HitIdConstIter
end_g4hit_id
()
const override
59
{
return
_g4hit_ids
.end(); }
60
61
SvtxTrack::HitIdConstIter
find_g4hit_id
(
int
volume
)
const override
62
{
return
_g4hit_ids
.find(volume); }
63
65
66
68
69
70
void
set_truth_track_id
(
unsigned
int
truthTrackId)
override
71
{
_truth_track_id
= truthTrackId; }
72
73
void
set_num_measurements
(
int
nmeas)
override
74
{
_nmeas
= nmeas; }
75
76
void
add_g4hit_id
(
int
volume
,
PHG4HitDefs::keytype
id
)
override
77
{
_g4hit_ids
[
volume
].insert(
id
); }
78
79
size_t
remove_g4hit_id
(
int
volume
,
PHG4HitDefs::keytype
id
)
override
80
{
return
_g4hit_ids
[
volume
].erase(
id
); }
81
82
size_t
remove_g4hit_volume
(
int
volume
)
override
83
{
return
_g4hit_ids
.erase(volume); }
84
85
SvtxTrack::HitIdIter
begin_g4hit_id
()
override
86
{
return
_g4hit_ids
.begin(); }
87
88
SvtxTrack::HitIdIter
end_g4hit_id
()
override
89
{
return
_g4hit_ids
.end(); }
90
91
SvtxTrack::HitIdIter
find_g4hit_id
(
int
volume
)
override
92
{
return
_g4hit_ids
.find(volume); }
93
94
void
clear_g4hit_id
()
override
95
{
return
_g4hit_ids
.clear(); }
96
98
99
private
:
100
101
unsigned
int
_truth_track_id
= UINT_MAX;
102
unsigned
int
_nmeas
= 0;
103
104
HitIdMap
_g4hit_ids
;
105
106
ClassDefOverride
(
SvtxTrack_FastSim_v2
, 1)
107
};
108
109
#endif
/* __SVTXTRACK_FAST_SIMV1_H__ */
coresoftware
blob
master
offline
packages
trackbase_historic
SvtxTrack_FastSim_v2.h
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:24:37
using
1.8.2 with
ECCE GitHub integration