00001 
00002 
00003 
00004 
00005 
00006 
00007 #ifndef BDSTerminatorUserLimits_h
00008 #define BDSTerminatorUserLimits_h
00009 
00010 #include "G4UserLimits.hh"
00011 #include "globals.hh"  
00012 
00013 
00014 class BDSTerminatorUserLimits : public G4UserLimits
00015 {
00016 public:
00017   BDSTerminatorUserLimits(G4double ustepMax = DBL_MAX,
00018                           G4double utrakMax = DBL_MAX,
00019                           G4double utimeMax = DBL_MAX,
00020                           G4double uekinMin = 0.,     
00021                           G4double urangMin = 0.);    
00022   
00023   BDSTerminatorUserLimits(const G4String& type,
00024                           G4double ustepMax = DBL_MAX,
00025                           G4double utrakMax = DBL_MAX,
00026                           G4double utimeMax = DBL_MAX,
00027                           G4double uekinMin = 0.,
00028                           G4double urangMin = 0.);
00029   
00030   virtual ~BDSTerminatorUserLimits(){};
00031   
00032 
00033 public:
00034   
00035   
00036   
00037   virtual G4double GetUserMinEkine(const G4Track&);
00038   G4bool verbose;
00039 
00040 protected:
00041   G4double keeprunningEK; 
00042   G4double stoprunningEK; 
00043 };
00044 
00045 #endif