]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TGeant4/TG4Messenger.h
updated for command renaming (/g4mc -> /tg4Control, /tg4Physics)
[u/mrichter/AliRoot.git] / TGeant4 / TG4Messenger.h
1 // $Id$
2 // Category: run
3 //
4 // Author: I. Hrivnacova
5 //
6 // Class TG4Messenger
7 // ------------------
8 // Messenger class that defines commands for 
9 // geometry, physics and step managers.
10
11 #ifndef TG4_MESSENGER_H
12 #define TG4_MESSENGER_H 
13
14 #include <G4UImessenger.hh>
15 #include <globals.hh>
16
17 class TG4GeometryManager;
18 class TG4PhysicsManager;
19 class TG4StepManager;
20
21 class G4UIcmdWithoutParameter;
22 class G4UIcmdWithABool;
23 class G4UIcmdWithAString;
24
25 class TG4Messenger: public G4UImessenger
26 {
27   public:
28     TG4Messenger(TG4GeometryManager* geometryManager, 
29                  TG4PhysicsManager* physicsManager, 
30                  TG4StepManager* stepManager);
31     // --> protected   
32     // TG4Messenger();
33     // TG4Messenger(const TG4Messenger& right);
34     virtual ~TG4Messenger();
35    
36     // methods 
37     virtual void SetNewValue(G4UIcommand* command, G4String string);
38     
39   protected:
40     TG4Messenger();  
41     TG4Messenger(const TG4Messenger& right);
42
43     // operators
44     TG4Messenger& operator=(const TG4Messenger& right);
45
46   private:
47     // data members
48     TG4GeometryManager*       fGeometryManager; //geometry manager
49     TG4PhysicsManager*        fPhysicsManager;  //physics manager
50     TG4StepManager*           fStepManager;     //step manager
51     
52     G4UIcmdWithABool*  fSetEMCmd;             //setEM command   
53     G4UIcmdWithABool*  fSetMuonCmd;           //setMuon command   
54     G4UIcmdWithABool*  fSetHadronCmd;         //setHadron command   
55     G4UIcmdWithABool*  fSetOpticalCmd;        //setOptical command   
56     G4UIcmdWithABool*  fSetSpecialCutsCmd;    //setSpecialCuts command   
57     G4UIcmdWithABool*  fSetSpecialControlsCmd;//setSpecialControls command   
58     G4UIcmdWithoutParameter*  fProcessActivationCmd; //.
59                                               //setProcessActivation command    
60     G4UIcmdWithoutParameter*  fPrintProcessMCMapCmd; //.
61                                               //printProcessMCMap command
62     G4UIcmdWithoutParameter*  fPrintProcessControlMapCmd; //.
63                                               //printProcessControlsMap command
64     G4UIcmdWithAString*       fPrintVolumeLimitsCmd; //.
65                                               //printVolumeLimits command
66     G4UIcmdWithoutParameter*  fPrintGeneralCutsCmd; //.
67                                               //printGeneralCuts command
68     G4UIcmdWithoutParameter*  fPrintGeneralControlsCmd; //.
69                                               //printGeneralControls command
70 };
71
72 #endif //TG4_MESSENGER_H