@@ -82,6 +82,7 @@ public:
82
82
virtual ~Generator () = default ;
83
83
84
84
virtual void GeneratePrimaryVertex (G4Event* event);
85
+ virtual ParticleVector GetLastEvent () const ;
85
86
virtual void SetNewValue (G4UIcommand* command,
86
87
G4String value);
87
88
virtual std::ostream& Print (std::ostream& os=std::cout) const ;
@@ -106,7 +107,9 @@ protected:
106
107
Command::DoubleArg* _ui_eta;
107
108
Command::DoubleUnitArg* _ui_phi;
108
109
Command::DoubleUnitArg* _ui_ke;
109
- Command::ThreeVectorArg* _ui_p;
110
+ Command::ThreeVectorUnitArg* _ui_p;
111
+ Command::ThreeVectorArg* _ui_p_unit;
112
+ Command::DoubleUnitArg* _ui_p_mag;
110
113
Command::DoubleUnitArg* _ui_t0;
111
114
Command::ThreeVectorUnitArg* _ui_vertex;
112
115
};
@@ -126,6 +129,7 @@ public:
126
129
virtual ~RangeGenerator () = default ;
127
130
128
131
virtual void GeneratePrimaryVertex (G4Event* event);
132
+ virtual ParticleVector GetLastEvent () const ;
129
133
virtual void SetNewValue (G4UIcommand* command,
130
134
G4String value);
131
135
virtual std::ostream& Print (std::ostream& os=std::cout) const ;
@@ -150,113 +154,6 @@ protected:
150
154
};
151
155
// ----------------------------------------------------------------------------------------------
152
156
153
-
154
- /*
155
- //__Default Range Particle Generator____________________________________________________________
156
- class RangeGenerator : public Generator {
157
- public:
158
- RangeGenerator(const std::string& name,
159
- const std::string& description,
160
- const int id,
161
- const double pT,
162
- const double eta,
163
- const double phi);
164
-
165
- RangeGenerator(const std::string& name,
166
- const std::string& description,
167
- const int id,
168
- const double pT_min,
169
- const double pT_max,
170
- const double eta_min,
171
- const double eta_max,
172
- const double phi_min,
173
- const double phi_max);
174
-
175
- RangeGenerator(const std::string& name,
176
- const std::string& description,
177
- const int id,
178
- const double pT,
179
- const double eta,
180
- const double phi,
181
- const G4ThreeVector& vertex);
182
-
183
- RangeGenerator(const std::string& name,
184
- const std::string& description,
185
- const int id,
186
- const double pT_min,
187
- const double pT_max,
188
- const double eta_min,
189
- const double eta_max,
190
- const double phi_min,
191
- const double phi_max,
192
- const G4ThreeVector& vertex);
193
-
194
- RangeGenerator(const std::string& name,
195
- const std::string& description,
196
- const int id,
197
- const double pT,
198
- const double eta,
199
- const double phi,
200
- const double t0,
201
- const G4ThreeVector& vertex);
202
-
203
- RangeGenerator(const std::string& name,
204
- const std::string& description,
205
- const int id,
206
- const double pT_min,
207
- const double pT_max,
208
- const double eta_min,
209
- const double eta_max,
210
- const double phi_min,
211
- const double phi_max,
212
- const double t0,
213
- const G4ThreeVector& vertex);
214
-
215
- virtual ~RangeGenerator() = default;
216
-
217
- virtual void GeneratePrimaryVertex(G4Event* event);
218
- virtual void SetNewValue(G4UIcommand* command,
219
- G4String value);
220
-
221
- double pT_min() const { return _pT_min; }
222
- double pT_max() const { return _pT_max; }
223
- double eta_min() const { return _eta_min; }
224
- double eta_max() const { return _eta_max; }
225
- double phi_min() const { return _phi_min; }
226
- double phi_max() const { return _phi_max; }
227
- double ke_min() const { return _ke_min; }
228
- double ke_max() const { return _ke_max; }
229
-
230
- virtual std::ostream& Print(std::ostream& os=std::cout) const;
231
- virtual const Analysis::SimSettingList GetSpecification() const;
232
-
233
- protected:
234
- double _pT_min;
235
- double _pT_max;
236
- double _eta_min;
237
- double _eta_max;
238
- double _phi_min;
239
- double _phi_max;
240
-
241
- double _ke_min;
242
- double _ke_max;
243
-
244
- bool _using_range_ke;
245
-
246
- virtual void GenerateCommands();
247
-
248
- Command::DoubleUnitArg* _ui_pT_min;
249
- Command::DoubleUnitArg* _ui_pT_max;
250
- Command::DoubleArg* _ui_eta_min;
251
- Command::DoubleArg* _ui_eta_max;
252
- Command::DoubleUnitArg* _ui_phi_min;
253
- Command::DoubleUnitArg* _ui_phi_max;
254
- Command::DoubleUnitArg* _ui_ke_min;
255
- Command::DoubleUnitArg* _ui_ke_max;
256
- };
257
- //----------------------------------------------------------------------------------------------
258
- */
259
-
260
157
// __Stream Operator for Generators______________________________________________________________
261
158
inline std::ostream& operator <<(std::ostream& os,
262
159
const Generator& generator) {
0 commit comments