]> git.uio.no Git - u/mrichter/AliRoot.git/blob - AliGeant4/AliModuleConstructionMessenger.h
README updated (R.Barbera)
[u/mrichter/AliRoot.git] / AliGeant4 / AliModuleConstructionMessenger.h
1 // $Id$
2 // Category: geometry
3 //
4 // Messenger class that defines command directory for each
5 // AliModuleConstruction instance.
6
7 #ifndef ALI_MODULE_CONSTRUCTION_MESSENGER_H
8 #define ALI_MODULE_CONSTRUCTION_MESSENGER_H
9
10 #include <G4UImessenger.hh>
11 #include <globals.hh>
12
13 class AliModuleConstruction;
14
15 class G4UIdirectory;
16 class G4UIcmdWithABool;
17 class G4UIcmdWithAString;
18 class G4UIcmdWithoutParameter;
19 class G4LogicalVolume;
20
21 class AliModuleConstructionMessenger: public G4UImessenger
22 {
23   public:
24     AliModuleConstructionMessenger(
25        AliModuleConstruction* moduleConstruction, G4String moduleName);
26     // --> protected   
27     // AliModuleConstructionMessenger();
28     // AliModuleConstructionMessenger(
29     //       const AliModuleConstructionMessenger& right);
30     virtual ~AliModuleConstructionMessenger();
31
32     // methods
33     virtual void SetNewValue(G4UIcommand* command, G4String newValues);
34
35   protected:
36     AliModuleConstructionMessenger();
37     AliModuleConstructionMessenger(
38              const AliModuleConstructionMessenger& right);
39
40     // operators
41     AliModuleConstructionMessenger& operator=(
42              const AliModuleConstructionMessenger &right);
43              
44   private:
45     // data members
46     AliModuleConstruction*    fModuleConstruction;   //associated class
47     G4UIdirectory*            fModuleDirectory;      //command directory
48     G4UIcmdWithAString*       fSetFrameCmd;          //command: setFrame
49     G4UIcmdWithoutParameter*  fListCmd;              //command: list
50     G4UIcmdWithoutParameter*  fListLongCmd;          //command: listLong
51     G4UIcmdWithAString*       fListDaughtersCmd;     //command: listDaughters
52     G4UIcmdWithAString*       fListLongDaughtersCmd; //command: listLongDaughters  
53     
54 #ifdef ALICE_VISUALIZE
55     // commands data members
56     G4LogicalVolume*          fCurrentVolume;          //current logical volume
57     G4UIcmdWithAString*       fSetCurrentLVCmd;        //command: setVolume
58     G4UIcmdWithABool*         fSetDetVisibilityCmd;    //command: setDetVisibility
59     G4UIcmdWithABool*         fSetLVTreeVisibilityCmd; //command: setLVTreeVisibility   
60     G4UIcmdWithABool*         fSetVolVisibilityCmd;    //command: setVolVisibility
61     G4UIcmdWithAString*       fSetDetColourCmd;        //command: setDetColour
62     G4UIcmdWithAString*       fSetLVTreeColourCmd;     //command: setLVTreeColour  
63     G4UIcmdWithAString*       fSetVolColourCmd;        //command: setVolColour
64 #endif //ALICE_VISUALIZE
65 };
66
67 #endif //ALI_MODULE_CONSTRUCTION_MESSENGER_H
68