CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
GaussEvtVtxGenerator.h
Go to the documentation of this file.
1 #ifndef IOMC_GaussEvtVtxGenerator_H
2 #define IOMC_GaussEvtVtxGenerator_H
3 
12 
13 namespace CLHEP {
14  class RandGaussQ;
15 }
16 
18 {
19 public:
21  virtual ~GaussEvtVtxGenerator();
22 
24  //virtual CLHEP::Hep3Vector* newVertex();
25  virtual HepMC::FourVector* newVertex() ;
26 
27  virtual TMatrixD* GetInvLorentzBoost() {
28  return 0;
29  }
30 
31 
33  void sigmaX(double s=1.0);
35  void sigmaY(double s=1.0);
37  void sigmaZ(double s=1.0);
38 
40  void meanX(double m=0) { fMeanX=m; }
42  void meanY(double m=0) { fMeanY=m; }
44  void meanZ(double m=0) { fMeanZ=m; }
45 
46 private:
51 private:
53  double fMeanX, fMeanY, fMeanZ;
54  CLHEP::RandGaussQ* fRandom ;
55  double fTimeOffset;
56 };
57 
58 #endif
void sigmaY(double s=1.0)
set resolution in Y in cm
virtual TMatrixD * GetInvLorentzBoost()
void meanZ(double m=0)
set mean in Z in cm
void meanX(double m=0)
set mean in X in cm
void sigmaX(double s=1.0)
set resolution in X in cm
GaussEvtVtxGenerator & operator=(const GaussEvtVtxGenerator &rhs)
GaussEvtVtxGenerator(const edm::ParameterSet &p)
CLHEP::RandGaussQ * fRandom
void meanY(double m=0)
set mean in Y in cm
virtual HepMC::FourVector * newVertex()
return a new event vertex
void sigmaZ(double s=1.0)
set resolution in Z in cm