/scratch0/jsnuveri/BDSIM/BDSIMgit/bdsim/include/BDSBunchRing.hh

00001 #ifndef BDSBunchRing_h
00002 #define BDSBunchRing_h 
00003 
00004 #include "BDSBunchInterface.hh"
00005 #include "Randomize.hh"
00006 
00007 namespace CLHEP {
00008   class RandFlat;
00009 }
00010 
00011 class BDSBunchRing : public BDSBunchInterface { 
00012 protected : 
00013   G4double rMin;
00014   G4double rMax;
00015   CLHEP::RandFlat  *FlatGen;    
00016 
00017 public: 
00018   BDSBunchRing(); 
00019   BDSBunchRing(G4double rMin, G4double rMax,
00020                G4double X0,     G4double Y0,    G4double Z0,   G4double T0, 
00021                G4double Xp0,    G4double Yp0,   G4double Zp0,
00022                G4double sigmaT, G4double sigmaE);
00023   ~BDSBunchRing(); 
00024   void SetOptions(struct Options& opt);
00025   void GetNextParticle(G4double& x0, G4double& y0, G4double& z0, 
00026                        G4double& xp, G4double& yp, G4double& zp,
00027                        G4double& t , G4double&  E, G4double& weight);
00028 
00029   G4double GetRMin() {return rMin;}
00030   G4double GetRMax() {return rMax;}
00031 protected:
00032   void SetRMin(G4double rMinIn) { rMin = rMinIn;}
00033   void SetRMax(G4double rMaxIn) { rMax = rMaxIn;}
00034   
00035 };
00036 
00037 #endif

Generated on 28 Jun 2015 for BDSIM by  doxygen 1.4.7