]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TGeant4/TG4G3Defaults.h
New TTask based method to do Digits To clusters. Works with files of multiple
[u/mrichter/AliRoot.git] / TGeant4 / TG4G3Defaults.h
1 // $Id$
2 // Category: global
3 //
4 // Author: I. Hrivnacova
5 //
6 // Class TG4G3Defaults
7 // -------------------
8 // Class stores the default G3 values of the kinetic energy cuts
9 // for particles and the control process parameters.
10
11 #ifndef TG4_G3_DEFAULTS_H
12 #define TG4_G3_DEFAULTS_H
13
14 #include "TG4G3CutVector.h"
15 #include "TG4G3ControlVector.h"
16 #include "TG4G3Control.h"
17 #include "TG4G3Cut.h"
18
19 #include <globals.hh>
20
21 class TG4G3Defaults
22 {
23   public:
24     TG4G3Defaults();      
25     // --> protected
26     // TG4G3Defaults(const TG4G3Defaults& right);
27     virtual ~TG4G3Defaults();
28
29     // static access methods
30     static TG4G3Defaults* Instance();
31
32     // methods
33     G4bool IsDefaultCut(TG4G3Cut cut, G4double value) const; 
34     G4bool IsDefaultControl(TG4G3Control control, TG4G3ControlValue value) const; 
35
36     // get methods
37     G4double CutValue(G4int cut) const;   
38     TG4G3ControlValue ControlValue(G4int control) const; 
39       
40   protected:
41     TG4G3Defaults(const TG4G3Defaults& right);      
42
43     // operators
44     TG4G3Defaults& operator=(const TG4G3Defaults& right);
45
46   private:
47     // static data members  
48     static TG4G3Defaults*  fgInstance;      //this instance
49     
50     // data members
51     TG4G3CutVector     fCutVector;    // vector of default cut values       
52     TG4G3ControlVector fControlVector;// vector of default control values       
53 };     
54
55 // inline methods
56
57 inline TG4G3Defaults* TG4G3Defaults::Instance() 
58 { return fgInstance; }
59
60 #endif //ALI_G3_DEFAULTS_H