]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TGeant4/TG4G3Defaults.h
Enable creation of fast rec points for ITS, when input argument for ITS = 2.
[u/mrichter/AliRoot.git] / TGeant4 / TG4G3Defaults.h
index f446bb4e4105b660a54fc4bbc6bbd5d5f3a18438..313920d42aaffd9a8294d0881e959d4fe6b033f3 100644 (file)
@@ -1,71 +1,60 @@
 // $Id$
-// Category: physics
+// Category: global
 //
+// Author: I. Hrivnacova
+//
+// Class TG4G3Defaults
+// -------------------
 // Class stores the default G3 values of the kinetic energy cuts
-// for particles and the control process flags parameters
+// for particles and the control process parameters.
 
-#ifndef TG4_G3DEFAULTS_H
-#define TG4_G3DEFAULTS_H
+#ifndef TG4_G3_DEFAULTS_H
+#define TG4_G3_DEFAULTS_H
 
-#include "TG3Cut.h"
-#include "TG3Flag.h"
+#include "TG4G3CutVector.h"
+#include "TG4G3ControlVector.h"
+#include "TG4G3Control.h"
+#include "TG4G3Cut.h"
 
 #include <globals.hh>
 
 class TG4G3Defaults
 {
   public:
+    TG4G3Defaults();      
     // --> protected
-    // TG4G3Defaults();
+    // TG4G3Defaults(const TG4G3Defaults& right);
     virtual ~TG4G3Defaults();
 
-    // static methods
-    static G4bool IsDefaultCut(TG3Cut g3Cut, G4double value); 
-    static G4bool IsDefaultFlag(TG3Flag g3Flag, G4double value); 
+    // static access methods
+    static TG4G3Defaults* Instance();
+
+    // methods
+    G4bool IsDefaultCut(TG4G3Cut cut, G4double value) const; 
+    G4bool IsDefaultControl(TG4G3Control control, TG4G3ControlValue value) const; 
 
-    // static get methods
-       // precision tolerance
-    static G4double CutTolerance();
-    static G4double CutValue(G4int g3Cut);   
-    static TG3FlagValue FlagValue(G4int g3Flag); 
+    // get methods
+    G4double CutValue(G4int cut) const;   
+    TG4G3ControlValue ControlValue(G4int control) const; 
       
   protected:
-    TG4G3Defaults();      
-      // only static data members and methods
+    TG4G3Defaults(const TG4G3Defaults& right);      
+
+    // operators
+    TG4G3Defaults& operator=(const TG4G3Defaults& right);
 
   private:
     // static data members  
-      // precision tolerance
-    static const G4double fgkCutTolerance; //tolerance for checking
-                                          //cut values with default
-       // kinetic energy cuts
-    static const G4double fgkCUTGAM;   //CUTGAM default value 
-    static const G4double fgkCUTELE;   //CUTELE default value
-    static const G4double fgkCUTNEU;   //CUTNEU default value
-    static const G4double fgkCUTHAD;   //CUTHAD default value
-    static const G4double fgkCUTMUO;   //CUTMUO default value
-    static const G4double fgkBCUTE;    //BCUTE default value
-    static const G4double fgkBCUTM;    //BCUTM default value
-    static const G4double fgkDCUTE;    //DCUTE default value
-    static const G4double fgkDCUTM;    //DCUTM default value
-    static const G4double fgkPPCUTM;   //PPCUTM default value
-       // physics processes flags
-    static const TG3FlagValue fgkPAIR; //PAIR default value   
-    static const TG3FlagValue fgkCOMP; //COMP default value   
-    static const TG3FlagValue fgkPHOT; //PHOT default value   
-    static const TG3FlagValue fgkPFIS; //PFIS default value   
-    static const TG3FlagValue fgkDRAY; //DRAY default value  
-    static const TG3FlagValue fgkANNI; //ANNI default value   
-    static const TG3FlagValue fgkBREM; //BREM default value  
-    static const TG3FlagValue fgkHADR; //HADR default value   
-    static const TG3FlagValue fgkMUNU; //MUNU default value   
-    static const TG3FlagValue fgkDCAY; //DCAY default value  
-    static const TG3FlagValue fgkLOSS; //LOSS default value  
-    static const TG3FlagValue fgkMULS; //MULS default value  
+    static TG4G3Defaults*  fgInstance;      //this instance
+    
+    // data members
+    TG4G3CutVector     fCutVector;    // vector of default cut values       
+    TG4G3ControlVector fControlVector;// vector of default control values       
 };     
 
 // inline methods
 
-inline G4double TG4G3Defaults::CutTolerance() { return fgkCutTolerance; }
+inline TG4G3Defaults* TG4G3Defaults::Instance() 
+{ return fgInstance; }
 
-#endif //ALI_G3DEFAULTS_H
+#endif //ALI_G3_DEFAULTS_H