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
CexmcTrackPointsDigitizer.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file CexmcTrackPointsDigitizer.hh
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
/*
27
* =============================================================================
28
*
29
* Filename: CexmcTrackPointsDigitizer.hh
30
*
31
* Description: track points collector
32
*
33
* Version: 1.0
34
* Created: 24.11.2009 16:09:59
35
* Revision: none
36
* Compiler: gcc
37
*
38
* Author: Alexey Radkov (),
39
* Company: PNPI
40
*
41
* =============================================================================
42
*/
43
44
#ifndef CEXMC_TRACK_POINTS_DIGITIZER_HH
45
#define CEXMC_TRACK_POINTS_DIGITIZER_HH
46
47
#include <
G4VDigitizerModule.hh
>
48
#include "
CexmcTrackPointInfo.hh
"
49
#include "
CexmcSetup.hh
"
50
51
class
G4String
;
52
53
54
class
CexmcTrackPointsDigitizer
:
public
G4VDigitizerModule
55
{
56
public
:
57
explicit
CexmcTrackPointsDigitizer
(
const
G4String
&
name
);
58
59
public
:
60
void
Digitize
(
void
);
61
62
public
:
63
const
CexmcTrackPointInfo
&
GetMonitorTP
(
void
)
const
;
64
65
const
CexmcTrackPointInfo
&
GetTargetTPBeamParticle
(
void
)
const
;
66
67
const
CexmcTrackPointInfo
&
GetTargetTPOutputParticle
(
void
)
const
;
68
69
const
CexmcTrackPointInfo
&
GetTargetTPNucleusParticle
(
void
)
const
;
70
71
const
CexmcTrackPointInfo
&
72
GetTargetTPOutputParticleDecayProductParticle
(
73
G4int
index )
const
;
74
75
const
CexmcTrackPointInfo
&
GetVetoCounterTPLeft
(
void
)
const
;
76
77
const
CexmcTrackPointInfo
&
GetVetoCounterTPRight
(
void
)
const
;
78
79
const
CexmcTrackPointInfo
&
GetCalorimeterTPLeft
(
void
)
const
;
80
81
const
CexmcTrackPointInfo
&
GetCalorimeterTPRight
(
void
)
const
;
82
83
public
:
84
G4bool
HasTriggered
(
void
)
const
;
85
86
private
:
87
void
InitializeData
(
void
);
88
89
private
:
90
CexmcTrackPointInfo
monitorTP
;
91
92
CexmcTrackPointInfo
targetTPBeamParticle
;
93
94
CexmcTrackPointInfo
targetTPOutputParticle
;
95
96
CexmcTrackPointInfo
targetTPNucleusParticle
;
97
98
CexmcTrackPointInfo
targetTPOutputParticleDecayProductParticle
[ 2 ];
99
100
CexmcTrackPointInfo
vetoCounterTPLeft
;
101
102
CexmcTrackPointInfo
vetoCounterTPRight
;
103
104
CexmcTrackPointInfo
calorimeterTPLeft
;
105
106
CexmcTrackPointInfo
calorimeterTPRight
;
107
108
G4bool
hasTriggered
;
109
110
private
:
111
CexmcSetup::CalorimeterGeometryData
calorimeterGeometry
;
112
};
113
114
115
inline
const
CexmcTrackPointInfo
&
116
CexmcTrackPointsDigitizer::GetMonitorTP
(
void
)
const
117
{
118
return
monitorTP
;
119
}
120
121
122
inline
const
CexmcTrackPointInfo
&
123
CexmcTrackPointsDigitizer::GetTargetTPBeamParticle
(
void
)
const
124
{
125
return
targetTPBeamParticle
;
126
}
127
128
129
inline
const
CexmcTrackPointInfo
&
130
CexmcTrackPointsDigitizer::GetTargetTPOutputParticle
(
void
)
const
131
{
132
return
targetTPOutputParticle
;
133
}
134
135
136
inline
const
CexmcTrackPointInfo
&
137
CexmcTrackPointsDigitizer::GetTargetTPNucleusParticle
(
void
)
const
138
{
139
return
targetTPNucleusParticle
;
140
}
141
142
143
inline
const
CexmcTrackPointInfo
&
144
CexmcTrackPointsDigitizer::GetTargetTPOutputParticleDecayProductParticle
(
145
G4int
index )
const
146
{
147
if
( index == 1 )
148
return
targetTPOutputParticleDecayProductParticle
[ 1 ];
149
150
return
targetTPOutputParticleDecayProductParticle
[ 0 ];
151
}
152
153
154
inline
const
CexmcTrackPointInfo
&
155
CexmcTrackPointsDigitizer::GetVetoCounterTPLeft
(
void
)
const
156
{
157
return
vetoCounterTPLeft
;
158
}
159
160
161
inline
const
CexmcTrackPointInfo
&
162
CexmcTrackPointsDigitizer::GetVetoCounterTPRight
(
void
)
const
163
{
164
return
vetoCounterTPRight
;
165
}
166
167
168
inline
const
CexmcTrackPointInfo
&
169
CexmcTrackPointsDigitizer::GetCalorimeterTPLeft
(
void
)
const
170
{
171
return
calorimeterTPLeft
;
172
}
173
174
175
inline
const
CexmcTrackPointInfo
&
176
CexmcTrackPointsDigitizer::GetCalorimeterTPRight
(
void
)
const
177
{
178
return
calorimeterTPRight
;
179
}
180
181
182
inline
G4bool
CexmcTrackPointsDigitizer::HasTriggered
(
void
)
const
183
{
184
return
hasTriggered
;
185
}
186
187
188
#endif
189
geant4
tree
geant4-10.6-release
examples
advanced
ChargeExchangeMC
include
CexmcTrackPointsDigitizer.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:24:56
using
1.8.2 with
ECCE GitHub integration