4 // See the class description in the header file.
6 #include "AliRunConfiguration.h"
7 #include "AliRunMessenger.h"
9 #include "AliDetConstruction.h"
10 #include "AliPrimaryGeneratorAction.h"
11 #include "AliRunAction.h"
12 #include "AliEventAction.h"
13 #include "AliTrackingAction.h"
14 #include "AliStackingAction.h"
15 #include "AliSteppingAction.h"
18 #ifdef ALICE_EMPTY_PHYSICS_LIST
19 #include "AliEmptyPhysicsList.h"
21 #include "TG4PhysicsList.h"
24 AliRunConfiguration::AliRunConfiguration(){
26 fRunMessenger = new AliRunMessenger();
27 fFiles = new AliFiles();
29 CreateUserConfiguration();
32 AliRunConfiguration::AliRunConfiguration(const AliRunConfiguration& right)
33 : TG4VRunConfiguration(right)
35 // TG4VRunConfiguration is protected from copying
38 AliRunConfiguration::~AliRunConfiguration() {
43 // all user action data members are deleted
44 // in G4RunManager::~G4RunManager()
50 AliRunConfiguration::operator=(const AliRunConfiguration& right)
52 // check assignement to self
53 if (this == &right) return *this;
55 // base class assignement
56 // TG4VRunConfiguration is protected from assigning
57 TG4VRunConfiguration::operator=(right);
64 void AliRunConfiguration::CreateUserConfiguration()
66 // Creates the mandatory Geant4 classes and
67 // the other user action classes.
70 // create mandatory Geant4 classes
71 fDetectorConstruction = new AliDetConstruction();
72 #ifndef ALICE_EMPTY_PHYSICS_LIST
73 fPhysicsList = new TG4PhysicsList();
75 fPhysicsList = new AliEmptyPhysicsList();
77 fPrimaryGenerator = new AliPrimaryGeneratorAction();
79 // create the other user action classes
80 fRunAction = new AliRunAction();
81 fEventAction = new AliEventAction();
82 fTrackingAction = new AliTrackingAction();
83 fSteppingAction = new AliSteppingAction();
85 fStackingAction = new AliStackingAction();
91 void AliRunConfiguration::SetConfigName(const char* name)
93 // Sets the configuration macro name
95 fFiles->SetMacroName(name);
98 void AliRunConfiguration::SetG3CallsName(const char* name)
100 // Sets the configuration macro name
102 fFiles->SetG3CallsName(name);