]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TGeant4/TG4FlagVector.h
added typedef TG3FlagVector (moved from TG4Globals)
[u/mrichter/AliRoot.git] / TGeant4 / TG4FlagVector.h
1 // $Id$
2 // Category: physics
3 //
4 // Vector of control process flag values
5 // with convenient set/get methods
6
7 #ifndef TG4_FLAG_VECTOR_H
8 #define TG4_FLAG_VECTOR_H
9
10 #include "TG4Globals.h"
11 #include "TG3Flag.h"
12
13 #include <g4rw/tvordvec.h>
14
15 class G4VProcess;
16
17 class TG4FlagVector
18 {
19   typedef G4RWTValOrderedVector<TG3FlagValue> TG3FlagVector;
20
21   public:
22     TG4FlagVector();
23     TG4FlagVector(const TG4FlagVector& right);
24     virtual ~TG4FlagVector();
25     
26     // operators
27     TG4FlagVector& operator=(const TG4FlagVector& right);
28     G4double operator[](G4int index) const;
29
30     // set methods
31     void SetG3Flag(TG3Flag g3Flag, G4double flagValue);
32     void SetG3Defaults();
33     
34     // get methods
35     G4int GetFlag(G4VProcess* process) const; 
36
37   private:
38     // data members
39     TG3FlagVector*  fFlagVector; //vector of control process flag values
40 };
41
42 #endif //TG4_FLAG_VECTOR_H
43
44
45