]> git.uio.no Git - u/mrichter/AliRoot.git/blame - AliGeant4/AliDetSwitchVector.h
changed THBTprocessor libs names
[u/mrichter/AliRoot.git] / AliGeant4 / AliDetSwitchVector.h
CommitLineData
2f310734 1// $Id$
2// Category: geometry
3//
4// Author: I. Hrivnacova
5//
6// Class AliDetSwitchVector
7// ---------------------------
8// The class contains a vector of detector switches
9// and provides methods for their interactive setting.
10
11#ifndef ALI_DET_SWITCH_VECTOR_H
12#define ALI_DET_SWITCH_VECTOR_H
13
14#include "AliDetSwitchVectorMessenger.h"
15
16#include <globals.hh>
17#include <g4std/vector>
18
19class AliDetSwitch;
20
21class AliDetSwitchVector
22{
23 typedef G4std::vector<AliDetSwitch*> DetSwitchVector;
24 typedef DetSwitchVector::iterator DetSwitchIterator;
25 typedef DetSwitchVector::const_iterator DetSwitchConstIterator;
26
27 public:
28 AliDetSwitchVector();
29 // --> protected
30 // AliDetSwitchVector(const AliDetSwitchVector& right);
31 virtual ~AliDetSwitchVector();
32
33 // methods
34 void Add(AliDetSwitch* detSwitch);
35 void SwitchDetOn(const G4String& moduleNameVer);
36 void SwitchDetOn(const G4String& moduleName, G4int version);
37 void SwitchDetOnDefault(const G4String& moduleName);
38 void SwitchDetOff(const G4String& moduleName);
39 void PrintSwitchedDets() const;
40 void PrintAvailableDets() const;
41
42 // get methods
43 G4int GetSize() const;
44 AliDetSwitch* GetDetSwitch(G4int i) const;
45 AliDetSwitch* GetDetSwitch(const G4String& moduleName) const;
46 G4String GetSwitchedDetsList() const;
47 G4String GetAvailableDetsList() const;
48 G4String GetAvailableDetsListWithCommas() const;
49 G4String GetDetNamesList() const;
50 G4String GetDetNamesListWithCommas() const;
51
52 protected:
53 AliDetSwitchVector(const AliDetSwitchVector& right);
54
55 // operators
56 AliDetSwitchVector& operator=(const AliDetSwitchVector& right);
57
58 private:
59 // data members
60 AliDetSwitchVectorMessenger fMessenger; //messenger
61 DetSwitchVector fDetSwitchVector; //vector of AliDetSwitch
62};
63
64// inline methods
65
66inline G4int AliDetSwitchVector::GetSize() const
67{ return fDetSwitchVector.size(); }
68
69inline AliDetSwitch* AliDetSwitchVector::GetDetSwitch(G4int i) const
70{ return fDetSwitchVector[i]; }
71
72#endif //ALI_DET_SWITCH_VECTOR_H
73