]> git.uio.no Git - u/mrichter/AliRoot.git/blob - AliGeant4/AliRunConfiguration.h
added static data member fgIsHoles and its setter/getter;
[u/mrichter/AliRoot.git] / AliGeant4 / AliRunConfiguration.h
1 // $Id$
2 // Category: run
3 //
4 // Author: I. Hrivnacova
5 //
6 // Class AliRunConfiguration
7 // -------------------------
8 // This class creates all Ali* specific action classes
9 // that will be initialized and managed by Geant4 kernel (G4RunManager).
10 // It creates also AliRunMessenger that implements commands for
11 // AliRun methods.
12
13 #ifndef ALI_RUN_CONFIGURATION_H
14 #define ALI_RUN_CONFIGURATION_H
15
16 #include "TG4VRunConfiguration.h"
17
18 #include <TString.h>
19
20 class AliRunMessenger;
21 class AliFiles;
22
23 class G4RunManager;
24
25 class AliRunConfiguration : public TG4VRunConfiguration
26 {
27   public:
28     AliRunConfiguration();
29     // --> protected
30     // AliRunConfiguration(const AliRunConfiguration& right);
31     virtual ~AliRunConfiguration();
32
33     // static methods
34     static void   SwitchHoles(Bool_t isHoles);
35     static Bool_t Holes();
36
37     void SetConfigName(const char* name);
38     void SetG3CallsName(const char* name);
39
40   protected:
41     AliRunConfiguration(const AliRunConfiguration& right);
42
43     // operators
44     AliRunConfiguration& operator=(const AliRunConfiguration& right);
45
46     // methods
47     virtual void CreateUserConfiguration();
48     
49   private:
50     // static data members
51     static Bool_t     fgIsHoles;      //option for geometry with/without holes
52
53     AliRunMessenger*  fRunMessenger;  //messenger 
54     AliFiles*         fFiles;         //file paths  
55     
56   ClassDef(AliRunConfiguration, 1) // Ali* specific action classes for Geant4  
57 };
58
59 // inline functions
60
61 inline void   AliRunConfiguration::SwitchHoles(Bool_t isHoles) 
62 { fgIsHoles = isHoles;}
63
64 inline Bool_t AliRunConfiguration::Holes()
65 { return fgIsHoles; }
66
67 #endif //ALI_RUN_CONFIGURATION_H
68