CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
GaussEvtVtxGenerator.h
Go to the documentation of this file.
1 #ifndef IOMC_GaussEvtVtxGenerator_H
2 #define IOMC_GaussEvtVtxGenerator_H
3 
11 
12 namespace CLHEP {
13  class HepRandomEngine;
14 }
15 
17 public:
20  GaussEvtVtxGenerator(const GaussEvtVtxGenerator& p) = delete;
23  ~GaussEvtVtxGenerator() override;
24 
26  //virtual CLHEP::Hep3Vector* newVertex();
27  HepMC::FourVector newVertex(CLHEP::HepRandomEngine*) const override;
28 
29  TMatrixD const* GetInvLorentzBoost() const override { return nullptr; }
30 
32  void sigmaX(double s = 1.0);
34  void sigmaY(double s = 1.0);
36  void sigmaZ(double s = 1.0);
37 
39  void meanX(double m = 0) { fMeanX = m; }
41  void meanY(double m = 0) { fMeanY = m; }
43  void meanZ(double m = 0) { fMeanZ = m; }
44 
45 private:
47  double fMeanX, fMeanY, fMeanZ;
48  double fTimeOffset;
49 };
50 
51 #endif
void sigmaY(double s=1.0)
set resolution in Y in cm
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)=delete
GaussEvtVtxGenerator(const edm::ParameterSet &p)
HepMC::FourVector newVertex(CLHEP::HepRandomEngine *) const override
return a new event vertex
void meanY(double m=0)
set mean in Y in cm
TMatrixD const * GetInvLorentzBoost() const override
void sigmaZ(double s=1.0)
set resolution in Z in cm