VMC Examples Version 6.6
Loading...
Searching...
No Matches
Ex03bMCApplication Class Reference

Implementation of the TVirtualMCApplication. More...

#include <Ex03bMCApplication.h>

Inheritance diagram for Ex03bMCApplication:

Public Member Functions

 Ex03bMCApplication (const char *name, const char *title)
 
 Ex03bMCApplication ()
 
virtual ~Ex03bMCApplication ()
 
void InitMC (const char *setup)
 
void RunMC (Int_t nofEvents)
 
void FinishRun ()
 
void ReadEvent (Int_t i)
 
virtual TVirtualMCApplicationCloneForWorker () const
 
virtual void InitOnWorker ()
 
virtual void FinishRunOnWorker ()
 
virtual void ConstructGeometry ()
 
virtual void ConstructSensitiveDetectors ()
 
virtual void InitGeometry ()
 
virtual void AddParticles ()
 
virtual void AddIons ()
 
virtual void GeneratePrimaries ()
 
virtual void BeginEvent ()
 
virtual void BeginPrimary ()
 
virtual void PreTrack ()
 
virtual void Stepping ()
 
virtual void PostTrack ()
 
virtual void FinishPrimary ()
 
virtual void EndOfEvent ()
 
virtual void FinishEvent ()
 
void SetPrintModulo (Int_t value)
 
void SetVerboseLevel (Int_t verboseLevel)
 
void SetControls (Bool_t isConstrols)
 
void SetField (Double_t bz)
 
Ex03DetectorConstructionGetDetectorConstruction () const
 
Ex03bCalorimeterSDGetCalorimeterSD () const
 
Ex03PrimaryGeneratorGetPrimaryGenerator () const
 
void SetOldGeometry (Bool_t oldGeometry=kTRUE)
 

Private Member Functions

 Ex03bMCApplication (const Ex03bMCApplication &origin)
 
void RegisterStack () const
 

Private Attributes

TMCRootManager * fRootManager
 Root manager.
 
Int_t fPrintModulo
 The event modulus number to be printed.
 
Int_t fEventNo
 Event counter.
 
TMCVerbose fVerbose
 VMC verbose helper.
 
Ex03MCStackfStack
 VMC stack.
 
Ex03DetectorConstructionfDetConstruction
 Dector construction.
 
Ex03bCalorimeterSDfCalorimeterSD
 Calorimeter SD.
 
Ex03PrimaryGeneratorfPrimaryGenerator
 Primary generator.
 
TGeoUniformMagField * fMagField
 Magnetic field.
 
Bool_t fOldGeometry
 Option for geometry definition.
 
Bool_t fIsControls
 Option to activate special controls.
 
Bool_t fIsMaster
 If is on master thread.
 

Detailed Description

Implementation of the TVirtualMCApplication.

A variant of the Ex03MCApplication class: the MC application using a sensitive detcetor derived from the new TVirtualMCSensitiveDetector interface.

Author
I. Hrivnacova; IPN, Orsay

Definition at line 42 of file Ex03bMCApplication.h.

Constructor & Destructor Documentation

◆ Ex03bMCApplication() [1/3]

Ex03bMCApplication::Ex03bMCApplication ( const char * name,
const char * title )

Standard constructor

Parameters
nameThe MC application name
titleThe MC application description

Definition at line 44 of file Ex03bMCApplication.cxx.

45 : TVirtualMCApplication(name, title),
46 fRootManager(0),
47 fPrintModulo(1),
48 fEventNo(0),
49 fVerbose(0),
50 fStack(0),
54 fMagField(0),
55 fOldGeometry(kFALSE),
56 fIsControls(kFALSE),
57 fIsMaster(kTRUE)
58{
59 /// Standard constructor
60 /// \param name The MC application name
61 /// \param title The MC application description
62
63 cout << "--------------------------------------------------------------"
64 << endl;
65 cout << " VMC Example E03b: new version with sensitive detectors" << endl;
66 cout << "--------------------------------------------------------------"
67 << endl;
68
69 // Create a user stack
70 fStack = new Ex03MCStack(1000);
71
72 // Create detector construction
74
75 // Create a calorimeter SD
76 // fCalorimeterSD = new Ex03bCalorimeterSD("Calorimeter", fDetConstruction);
77
78 // Create a primary generator
80
81 // Constant magnetic field (in kiloGauss)
82 fMagField = new TGeoUniformMagField();
83}
The detector construction (via TGeo )
Implementation of the TVirtualMCStack interface.
Definition Ex03MCStack.h:36
The primary generator.
Ex03PrimaryGenerator * fPrimaryGenerator
Primary generator.
Bool_t fIsControls
Option to activate special controls.
Ex03bCalorimeterSD * fCalorimeterSD
Calorimeter SD.
TGeoUniformMagField * fMagField
Magnetic field.
Int_t fPrintModulo
The event modulus number to be printed.
Int_t fEventNo
Event counter.
Bool_t fIsMaster
If is on master thread.
TMCRootManager * fRootManager
Root manager.
Ex03DetectorConstruction * fDetConstruction
Dector construction.
Bool_t fOldGeometry
Option for geometry definition.
TMCVerbose fVerbose
VMC verbose helper.
Ex03MCStack * fStack
VMC stack.

◆ Ex03bMCApplication() [2/3]

Ex03bMCApplication::Ex03bMCApplication ( )

Default constructor

Definition at line 120 of file Ex03bMCApplication.cxx.

122 fRootManager(0),
123 fPrintModulo(1),
124 fEventNo(0),
125 fStack(0),
129 fMagField(0),
130 fOldGeometry(kFALSE),
131 fIsControls(kFALSE),
132 fIsMaster(kTRUE)
133{
134 /// Default constructor
135}

◆ ~Ex03bMCApplication()

Ex03bMCApplication::~Ex03bMCApplication ( )
virtual

Destructor

Definition at line 138 of file Ex03bMCApplication.cxx.

139{
140 /// Destructor
141
142 // cout << "Ex03bMCApplication::~Ex03bMCApplication " << this << endl;
143
144 delete fRootManager;
145 delete fStack;
146 if (fIsMaster) delete fDetConstruction;
147 delete fCalorimeterSD;
148 delete fPrimaryGenerator;
149 delete fMagField;
150 delete gMC;
151
152 // cout << "Done Ex03bMCApplication::~Ex03bMCApplication " << this << endl;
153}

◆ Ex03bMCApplication() [3/3]

Ex03bMCApplication::Ex03bMCApplication ( const Ex03bMCApplication & origin)
private

Copy constructor for cloning application on workers (in multithreading mode)

Parameters
originThe source MC application

Definition at line 86 of file Ex03bMCApplication.cxx.

87 : TVirtualMCApplication(origin.GetName(), origin.GetTitle()),
88 fRootManager(0),
90 fEventNo(0),
91 fVerbose(origin.fVerbose),
92 fStack(0),
96 fMagField(0),
98 fIsMaster(kFALSE)
99{
100 /// Copy constructor for cloning application on workers (in multithreading
101 /// mode) \param origin The source MC application
102
103 // Create new user stack
104 fStack = new Ex03MCStack(1000);
105
106 // Create a calorimeter SD
107 // fCalorimeterSD
108 // = new Ex03bCalorimeterSD(*(origin.fCalorimeterSD), fDetConstruction);
109
110 // Create a primary generator
113
114 // Constant magnetic field (in kiloGauss)
115 fMagField = new TGeoUniformMagField(origin.fMagField->GetFieldValue()[0],
116 origin.fMagField->GetFieldValue()[1], origin.fMagField->GetFieldValue()[2]);
117}

Member Function Documentation

◆ InitMC()

void Ex03bMCApplication::InitMC ( const char * setup)

Initialize MC. The selection of the concrete MC is done in the macro.

Parameters
setupThe name of the configuration macro

Definition at line 175 of file Ex03bMCApplication.cxx.

176{
177 /// Initialize MC.
178 /// The selection of the concrete MC is done in the macro.
179 /// \param setup The name of the configuration macro
180
181 fVerbose.InitMC();
182
183 if (TString(setup) != "") {
184 gROOT->LoadMacro(setup);
185 gInterpreter->ProcessLine("Config()");
186 if (!gMC) {
187 Fatal(
188 "InitMC", "Processing Config() has failed. (No MC is instantiated.)");
189 }
190 }
191
192// MT support available from root v 5.34/18
193#if ROOT_VERSION_CODE >= 336402
194 // Create Root manager
195 if (!gMC->IsMT()) {
196 fRootManager = new TMCRootManager(GetName(), TMCRootManager::kWrite);
197 // fRootManager->SetDebug(true);
198 }
199#else
200 // Create Root manager
201 fRootManager = new TMCRootManager(GetName(), TMCRootManager::kWrite);
202 // fRootManager->SetDebug(true);
203#endif
204
205 gMC->SetStack(fStack);
206 gMC->SetMagField(fMagField);
207 gMC->Init();
208 gMC->BuildPhysics();
209
211}

◆ RunMC()

void Ex03bMCApplication::RunMC ( Int_t nofEvents)

Run MC.

Parameters
nofEventsNumber of events to be processed

Definition at line 214 of file Ex03bMCApplication.cxx.

215{
216 /// Run MC.
217 /// \param nofEvents Number of events to be processed
218
219 fVerbose.RunMC(nofEvents);
220
221 gMC->ProcessRun(nofEvents);
222 FinishRun();
223}

◆ FinishRun()

void Ex03bMCApplication::FinishRun ( )

Finish MC run.

Definition at line 226 of file Ex03bMCApplication.cxx.

227{
228 /// Finish MC run.
229
230 fVerbose.FinishRun();
231 // cout << "Ex03bMCApplication::FinishRun: " << endl;
232 if (fRootManager) {
233 fRootManager->WriteAll();
234 fRootManager->Close();
235 }
236}

◆ ReadEvent()

void Ex03bMCApplication::ReadEvent ( Int_t i)

Read i -th event and prints hits.

Parameters
iThe number of event to be read

Definition at line 271 of file Ex03bMCApplication.cxx.

272{
273 /// Read \em i -th event and prints hits.
274 /// \param i The number of event to be read
275
278 fRootManager->ReadEvent(i);
279}

◆ CloneForWorker()

TVirtualMCApplication * Ex03bMCApplication::CloneForWorker ( ) const
virtual

Definition at line 239 of file Ex03bMCApplication.cxx.

240{
241 return new Ex03bMCApplication(*this);
242}

◆ InitOnWorker()

void Ex03bMCApplication::InitOnWorker ( )
virtual

Definition at line 245 of file Ex03bMCApplication.cxx.

246{
247 // cout << "Ex03bMCApplication::InitForWorker " << this << endl;
248
249 // Create Root manager
250 fRootManager = new TMCRootManager(GetName(), TMCRootManager::kWrite);
251 // fRootManager->SetDebug(true);
252
253 // Set data to MC
254 gMC->SetStack(fStack);
255 gMC->SetMagField(fMagField);
256
258}

◆ FinishRunOnWorker()

void Ex03bMCApplication::FinishRunOnWorker ( )
virtual

Definition at line 261 of file Ex03bMCApplication.cxx.

262{
263 // cout << "Ex03bMCApplication::FinishWorkerRun: " << endl;
264 if (fRootManager) {
265 fRootManager->WriteAll();
266 fRootManager->Close();
267 }
268}

◆ ConstructGeometry()

void Ex03bMCApplication::ConstructGeometry ( )
virtual

Construct geometry using detector contruction class. The detector contruction class is using TGeo functions or TVirtualMC functions (if oldGeometry is selected)

Definition at line 282 of file Ex03bMCApplication.cxx.

283{
284 /// Construct geometry using detector contruction class.
285 /// The detector contruction class is using TGeo functions or
286 /// TVirtualMC functions (if oldGeometry is selected)
287
288 fVerbose.ConstructGeometry();
289
290 if (!fOldGeometry) {
293 // TGeoManager::Import("geometry.root");
294 // gMC->SetRootGeometry();
295 }
296 else {
297 Ex03DetectorConstructionOld detConstructionOld;
298 detConstructionOld.ConstructMaterials();
299 detConstructionOld.ConstructGeometry();
300 }
301}
The old detector construction (via VMC functions)

◆ ConstructSensitiveDetectors()

void Ex03bMCApplication::ConstructSensitiveDetectors ( )
virtual

Create sensitive detectors and attach them to sensitive volumes

Definition at line 304 of file Ex03bMCApplication.cxx.

305{
306 /// Create sensitive detectors and attach them to sensitive volumes
307
308 // fVerbose.ConstructSensitiveDetectors();
309 if (fVerbose.GetLevel() > 0) {
310 std::cout << "--- Construct sensitive detectors" << std::endl;
311 }
312
313 Ex03bCalorimeterSD* calorimeterSD =
314 new Ex03bCalorimeterSD("Calorimeter", fDetConstruction);
315 calorimeterSD->SetPrintModulo(fPrintModulo);
316
317 // Set SD to ABSO, GAPX
318 gMC->SetSensitiveDetector("ABSO", calorimeterSD);
319 gMC->SetSensitiveDetector("GAPX", calorimeterSD);
320}
The calorimeter sensitive detector.
void SetPrintModulo(Int_t value)

◆ InitGeometry()

void Ex03bMCApplication::InitGeometry ( )
virtual

Initialize geometry

Definition at line 323 of file Ex03bMCApplication.cxx.

324{
325 /// Initialize geometry
326
327 fVerbose.InitGeometry();
328
330
332
333 // fCalorimeterSD->Initialize();
334}

◆ AddParticles()

void Ex03bMCApplication::AddParticles ( )
virtual

Example of user defined particle with user defined decay mode

Definition at line 337 of file Ex03bMCApplication.cxx.

338{
339 /// Example of user defined particle with user defined decay mode
340
341 fVerbose.AddParticles();
342
343 // Define particle
344 gMC->DefineParticle(1000020050, "He5", kPTHadron, 5.03427, 2.0, 0.002, "Ion",
345 0.0, 0, 1, 0, 0, 0, 0, 0, 5, kFALSE);
346
347 // Define the 2 body phase space decay for He5
348 Int_t mode[6][3];
349 Float_t bratio[6];
350
351 for (Int_t kz = 0; kz < 6; kz++) {
352 bratio[kz] = 0.;
353 mode[kz][0] = 0;
354 mode[kz][1] = 0;
355 mode[kz][2] = 0;
356 }
357 bratio[0] = 100.;
358 mode[0][0] = kNeutron; // neutron (2112)
359 mode[0][1] = 1000020040; // alpha
360
361 gMC->SetDecayMode(1000020050, bratio, mode);
362
363 // Overwrite a decay mode already defined in MCs
364 // Kaon Short: 310 normally decays in two modes
365 // pi+, pi- 68.61 %
366 // pi0, pi0 31.39 %
367 // and we force only the mode pi0, pi0
368
369 Int_t mode2[6][3];
370 Float_t bratio2[6];
371
372 for (Int_t kz = 0; kz < 6; kz++) {
373 bratio2[kz] = 0.;
374 mode2[kz][0] = 0;
375 mode2[kz][1] = 0;
376 mode2[kz][2] = 0;
377 }
378 bratio2[0] = 100.;
379 mode2[0][0] = kPi0; // pi0 (111)
380 mode2[0][1] = kPi0; // pi0 (111)
381
382 gMC->SetDecayMode(kK0Short, bratio2, mode2);
383}

◆ AddIons()

void Ex03bMCApplication::AddIons ( )
virtual

Example of user defined ion

Definition at line 386 of file Ex03bMCApplication.cxx.

387{
388 /// Example of user defined ion
389
390 fVerbose.AddIons();
391
392 gMC->DefineIon("MyIon", 34, 70, 12, 0.);
393}

◆ GeneratePrimaries()

void Ex03bMCApplication::GeneratePrimaries ( )
virtual

Fill the user stack (derived from TVirtualMCStack) with primary particles.

Definition at line 396 of file Ex03bMCApplication.cxx.

397{
398 /// Fill the user stack (derived from TVirtualMCStack) with primary particles.
399
400 fVerbose.GeneratePrimaries();
401
402 TVector3 origin(fDetConstruction->GetWorldSizeX(),
404
406}
virtual void GeneratePrimaries(const TVector3 &worldSize)

◆ BeginEvent()

void Ex03bMCApplication::BeginEvent ( )
virtual

User actions at beginning of event

Definition at line 409 of file Ex03bMCApplication.cxx.

410{
411 /// User actions at beginning of event
412
413 fVerbose.BeginEvent();
414
415 // Clear TGeo tracks (if filled)
416 if (TString(gMC->GetName()) == "TGeant3TGeo" &&
417 gGeoManager->GetListOfTracks() && gGeoManager->GetTrack(0) &&
418 ((TVirtualGeoTrack*)gGeoManager->GetTrack(0))->HasPoints()) {
419
420 gGeoManager->ClearTracks();
421 // if (gPad) gPad->Clear();
422 }
423
424 fEventNo++;
425 if (fEventNo % fPrintModulo == 0) {
426 cout << "\n---> Begin of event: " << fEventNo << endl;
427 // ??? How to do this in VMC
428 // HepRandom::showEngineStatus();
429 }
430}

◆ BeginPrimary()

void Ex03bMCApplication::BeginPrimary ( )
virtual

User actions at beginning of a primary track. If test for user defined decay is activated, the primary track ID is printed on the screen.

Definition at line 433 of file Ex03bMCApplication.cxx.

434{
435 /// User actions at beginning of a primary track.
436 /// If test for user defined decay is activated,
437 /// the primary track ID is printed on the screen.
438
439 fVerbose.BeginPrimary();
440
442 cout << " Primary track ID = " << fStack->GetCurrentTrackNumber() << endl;
443 }
444}
virtual Int_t GetCurrentTrackNumber() const
Bool_t GetUserDecay() const
Return true if particle with user decay is activated.

◆ PreTrack()

void Ex03bMCApplication::PreTrack ( )
virtual

User actions at beginning of each track If test for user defined decay is activated, the decay products of the primary track (K0Short) are printed on the screen.

Definition at line 447 of file Ex03bMCApplication.cxx.

448{
449 /// User actions at beginning of each track
450 /// If test for user defined decay is activated,
451 /// the decay products of the primary track (K0Short)
452 /// are printed on the screen.
453
454 fVerbose.PreTrack();
455
456 // print info about K0Short decay products
458 Int_t parentID = fStack->GetCurrentParentTrackNumber();
459
460 if (parentID >= 0 &&
461 fStack->GetParticle(parentID)->GetPdgCode() == kK0Short &&
462 fStack->GetCurrentTrack()->GetUniqueID() == kPDecay) {
463 // The production process is saved as TParticle unique ID
464 // via Ex03MCStack
465
466 cout << " Current track " << fStack->GetCurrentTrack()->GetName()
467 << " is a decay product of Parent ID = "
469 }
470 }
471}
virtual TParticle * GetCurrentTrack() const
virtual Int_t GetCurrentParentTrackNumber() const
TParticle * GetParticle(Int_t id) const

◆ Stepping()

void Ex03bMCApplication::Stepping ( )
virtual

User actions at each step

Definition at line 474 of file Ex03bMCApplication.cxx.

475{
476 /// User actions at each step
477
478 // Work around for Fluka VMC, which does not call
479 // MCApplication::PreTrack()
480 //
481 // cout << "Ex03bMCApplication::Stepping" << this << endl;
482 static Int_t trackId = 0;
483 if (TString(gMC->GetName()) == "TFluka" &&
484 gMC->GetStack()->GetCurrentTrackNumber() != trackId) {
485 fVerbose.PreTrack();
486 trackId = gMC->GetStack()->GetCurrentTrackNumber();
487 }
488
489 fVerbose.Stepping();
490
491 // fCalorimeterSD->ProcessHits();
492}

◆ PostTrack()

void Ex03bMCApplication::PostTrack ( )
virtual

User actions after finishing of each track

Definition at line 495 of file Ex03bMCApplication.cxx.

496{
497 /// User actions after finishing of each track
498
499 fVerbose.PostTrack();
500}

◆ FinishPrimary()

void Ex03bMCApplication::FinishPrimary ( )
virtual

User actions after finishing of a primary track

Definition at line 503 of file Ex03bMCApplication.cxx.

504{
505 /// User actions after finishing of a primary track
506
507 fVerbose.FinishPrimary();
508
510 cout << endl;
511 }
512}

◆ EndOfEvent()

void Ex03bMCApplication::EndOfEvent ( )
virtual

User actions et the end of event before SD's end of event

Definition at line 515 of file Ex03bMCApplication.cxx.

516{
517 /// User actions et the end of event before SD's end of event
518
519 fVerbose.EndOfEvent();
520
521 fRootManager->Fill();
522}

◆ FinishEvent()

void Ex03bMCApplication::FinishEvent ( )
virtual

User actions after finishing of an event

Definition at line 525 of file Ex03bMCApplication.cxx.

526{
527 /// User actions after finishing of an event
528
529 fVerbose.FinishEvent();
530
531 // Geant3 + TGeo
532 // (use TGeo functions for visualization)
533 if (TString(gMC->GetName()) == "TGeant3TGeo") {
534
535 // Draw volume
536 gGeoManager->SetVisOption(0);
537 gGeoManager->SetTopVisible();
538 gGeoManager->GetTopVolume()->Draw();
539
540 // Draw tracks (if filled)
541 // Available when this feature is activated via
542 // gMC->SetCollectTracks(kTRUE);
543 if (gGeoManager->GetListOfTracks() && gGeoManager->GetTrack(0) &&
544 ((TVirtualGeoTrack*)gGeoManager->GetTrack(0))->HasPoints()) {
545
546 gGeoManager->DrawTracks("/*"); // this means all tracks
547 }
548 }
549
550 // if (fEventNo % fPrintModulo == 0)
551 // fCalorimeterSD->PrintTotal();
552
553 // fCalorimeterSD->EndOfEvent();
554
555 fStack->Reset();
556}

◆ SetPrintModulo()

void Ex03bMCApplication::SetPrintModulo ( Int_t value)
inline

Set the event modulus number to be printed

Parameters
valueThe new event modulus number value

Definition at line 117 of file Ex03bMCApplication.h.

118{
119 fPrintModulo = value;
120}

◆ SetVerboseLevel()

void Ex03bMCApplication::SetVerboseLevel ( Int_t verboseLevel)
inline

Set verbosity

Parameters
verboseLevelThe new verbose level value

Definition at line 124 of file Ex03bMCApplication.h.

125{
126 fVerbose.SetLevel(verboseLevel);
127}

◆ SetControls()

void Ex03bMCApplication::SetControls ( Bool_t isControls)
inline

Switch on/off special process controls

Parameters
isControlsIf true, special process controls setting is activated

Definition at line 164 of file Ex03bMCApplication.h.

165{
166 fIsControls = isControls;
167}

◆ SetField()

void Ex03bMCApplication::SetField ( Double_t bz)
inline

Definition at line 131 of file Ex03bMCApplication.h.

132{
133 fMagField->SetFieldValue(0., 0., bz);
134}

◆ GetDetectorConstruction()

Ex03DetectorConstruction * Ex03bMCApplication::GetDetectorConstruction ( ) const
inline
Returns
The detector construction

Definition at line 138 of file Ex03bMCApplication.h.

139{
140 return fDetConstruction;
141}

◆ GetCalorimeterSD()

Ex03bCalorimeterSD * Ex03bMCApplication::GetCalorimeterSD ( ) const
inline
Returns
The calorimeter sensitive detector

Definition at line 144 of file Ex03bMCApplication.h.

145{
146 return fCalorimeterSD;
147}

◆ GetPrimaryGenerator()

Ex03PrimaryGenerator * Ex03bMCApplication::GetPrimaryGenerator ( ) const
inline
Returns
The primary generator

Definition at line 150 of file Ex03bMCApplication.h.

151{
152 return fPrimaryGenerator;
153}

◆ SetOldGeometry()

void Ex03bMCApplication::SetOldGeometry ( Bool_t oldGeometry = kTRUE)
inline

Switch on/off the old geometry definition (via VMC functions)

Parameters
oldGeometryIf true, geometry definition via VMC functions

Definition at line 157 of file Ex03bMCApplication.h.

158{
159 fOldGeometry = oldGeometry;
160}

◆ RegisterStack()

void Ex03bMCApplication::RegisterStack ( ) const
private

Register stack in the Root manager.

Definition at line 160 of file Ex03bMCApplication.cxx.

161{
162 /// Register stack in the Root manager.
163
164 if (fRootManager) {
165 // cout << "Ex03bMCApplication::RegisterStack: " << endl;
166 fRootManager->Register("stack", "Ex03MCStack", &fStack);
167 }
168}

Member Data Documentation

◆ fRootManager

TMCRootManager* Ex03bMCApplication::fRootManager
mutableprivate

Root manager.

Definition at line 94 of file Ex03bMCApplication.h.

◆ fPrintModulo

Int_t Ex03bMCApplication::fPrintModulo
private

The event modulus number to be printed.

Definition at line 95 of file Ex03bMCApplication.h.

◆ fEventNo

Int_t Ex03bMCApplication::fEventNo
private

Event counter.

Definition at line 96 of file Ex03bMCApplication.h.

◆ fVerbose

TMCVerbose Ex03bMCApplication::fVerbose
private

VMC verbose helper.

Definition at line 97 of file Ex03bMCApplication.h.

◆ fStack

Ex03MCStack* Ex03bMCApplication::fStack
private

VMC stack.

Definition at line 98 of file Ex03bMCApplication.h.

◆ fDetConstruction

Ex03DetectorConstruction* Ex03bMCApplication::fDetConstruction
private

Dector construction.

Definition at line 99 of file Ex03bMCApplication.h.

◆ fCalorimeterSD

Ex03bCalorimeterSD* Ex03bMCApplication::fCalorimeterSD
private

Calorimeter SD.

Definition at line 100 of file Ex03bMCApplication.h.

◆ fPrimaryGenerator

Ex03PrimaryGenerator* Ex03bMCApplication::fPrimaryGenerator
private

Primary generator.

Definition at line 101 of file Ex03bMCApplication.h.

◆ fMagField

TGeoUniformMagField* Ex03bMCApplication::fMagField
private

Magnetic field.

Definition at line 102 of file Ex03bMCApplication.h.

◆ fOldGeometry

Bool_t Ex03bMCApplication::fOldGeometry
private

Option for geometry definition.

Definition at line 103 of file Ex03bMCApplication.h.

◆ fIsControls

Bool_t Ex03bMCApplication::fIsControls
private

Option to activate special controls.

Definition at line 104 of file Ex03bMCApplication.h.

◆ fIsMaster

Bool_t Ex03bMCApplication::fIsMaster
private

If is on master thread.

Definition at line 105 of file Ex03bMCApplication.h.


The documentation for this class was generated from the following files: