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
CexmcCommon.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file CexmcCommon.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: CexmcCommon.hh
30
*
31
* Description: common declarations
32
*
33
* Version: 1.0
34
* Created: 01.11.2009 00:09:04
35
* Revision: none
36
* Compiler: gcc
37
*
38
* Author: Alexey Radkov (),
39
* Company: PNPI
40
*
41
* =============================================================================
42
*/
43
44
#ifndef CEXMC_COMMON_HH
45
#define CEXMC_COMMON_HH
46
47
#include <vector>
48
#include <limits>
49
#include <G4String.hh>
50
#include <
G4Types.hh
>
51
52
#define CEXMC_LINE_START "--- Cexmc --- "
53
54
55
typedef
std::vector< G4double >
CexmcEnergyDepositCrystalRowCollection
;
56
57
typedef
std::vector< CexmcEnergyDepositCrystalRowCollection >
58
CexmcEnergyDepositCalorimeterCollection
;
59
60
61
const
G4double
CexmcDblMax
(
std::numeric_limits< double >::max
() );
62
63
const
G4String
CexmcStudiedProcessFirstName
(
"studiedProcess_"
);
64
const
G4String
CexmcStudiedProcessLastName
(
"Cexmc"
);
65
const
G4String
CexmcStudiedProcessFullName
(
CexmcStudiedProcessFirstName
+
66
CexmcStudiedProcessLastName
);
67
const
G4String
CexmcChargeExchangeProductionModelName
(
"ChargeExchange"
);
68
const
G4String
CexmcChargeExchangeInteractionName
(
"Cexmc"
+
69
CexmcChargeExchangeProductionModelName
);
70
71
const
G4String
CexmcEDDigitizerName
(
"EDDig"
);
72
const
G4String
CexmcTPDigitizerName
(
"TPDig"
);
73
74
const
G4String
CexmcScenePrimitivesDescription
(
"CexmcScenePrimitives"
);
75
76
const
G4double
CexmcFwhmToStddev
( 0.42466 );
77
const
G4double
CexmcInvalidCosTheta
( 2.0 );
78
79
const
G4int
CexmcInvalidTrackId
( -1 );
80
81
82
enum
CexmcBasePhysicsUsed
83
{
84
CexmcNoBasePhysics
,
85
Cexmc_QGSP_BERT
,
86
Cexmc_QGSP_BIC_EMY
,
87
Cexmc_FTFP_BERT
88
};
89
90
91
enum
CexmcProductionModelType
92
{
93
CexmcUnknownProductionModel
,
94
CexmcPionZeroProduction
,
95
CexmcEtaProduction
96
};
97
98
99
enum
CexmcTriggerType
100
{
101
CexmcTPT
,
102
CexmcEDT
,
103
CexmcRT
104
};
105
106
107
enum
CexmcEventCountPolicy
108
{
109
CexmcCountAllEvents
,
110
CexmcCountEventsWithInteraction
,
111
CexmcCountEventsWithTrigger
112
};
113
114
115
enum
CexmcTrackType
116
{
117
CexmcInsipidTrack
,
118
CexmcBeamParticleTrack
,
119
CexmcOutputParticleTrack
,
120
CexmcNucleusParticleTrack
,
121
CexmcOutputParticleDecayProductTrack
122
};
123
124
125
enum
CexmcTrackTypeInfo
126
{
127
CexmcBasicTrackType
,
128
CexmcIncidentParticleTrackType
129
};
130
131
132
enum
CexmcSide
133
{
134
CexmcLeft
,
135
CexmcRight
136
};
137
138
139
enum
CexmcOuterCrystalsVetoAlgorithm
140
{
141
CexmcNoOuterCrystalsVeto
,
142
CexmcMaximumEDInASingleOuterCrystalVeto
,
143
CexmcFractionOfEDInOuterCrystalsVeto
144
};
145
146
147
enum
CexmcCalorimeterTriggerAlgorithm
148
{
149
CexmcAllCrystalsMakeEDTriggerThreshold
,
150
CexmcInnerCrystalsMakeEDTriggerThreshold
151
};
152
153
154
enum
CexmcCalorimeterEntryPointDefinitionAlgorithm
155
{
156
CexmcEntryPointInTheCenter
,
157
CexmcEntryPointInTheCenterOfCrystalWithMaxED
,
158
CexmcEntryPointByLinearEDWeights
,
159
CexmcEntryPointBySqrtEDWeights
160
};
161
162
163
enum
CexmcCalorimeterEntryPointDepthDefinitionAlgorithm
164
{
165
CexmcEntryPointDepthPlain
,
166
CexmcEntryPointDepthSphere
167
};
168
169
170
enum
CexmcCrystalSelectionAlgorithm
171
{
172
CexmcSelectAllCrystals
,
173
CexmcSelectAdjacentCrystals
174
};
175
176
177
enum
CexmcEDCollectionAlgoritm
178
{
179
CexmcCollectEDInAllCrystals
,
180
CexmcCollectEDInAdjacentCrystals
181
};
182
183
184
enum
CexmcEventDataVerboseLevel
185
{
186
CexmcWriteNoEventData
,
187
CexmcWriteEventDataOnEveryEDT
,
188
CexmcWriteEventDataOnEveryTPT
189
};
190
191
192
enum
CexmcOutputDataType
193
{
194
CexmcOutputRun
,
195
CexmcOutputGeometry
,
196
CexmcOutputEvents
197
};
198
199
200
#endif
201
geant4
tree
geant4-10.6-release
examples
advanced
ChargeExchangeMC
include
CexmcCommon.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:24:55
using
1.8.2 with
ECCE GitHub integration