CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_13_patch3/src/IOMC/EventVertexGenerators/interface/FlatEvtVtxGenerator.h

Go to the documentation of this file.
00001 #ifndef IOMC_FlatEvtVtxGenerator_H
00002 #define IOMC_FlatEvtVtxGenerator_H
00003 
00011 #include "IOMC/EventVertexGenerators/interface/BaseEvtVtxGenerator.h"
00012 
00013 namespace CLHEP {
00014    class RandFlat;
00015 }
00016 
00017 class FlatEvtVtxGenerator : public BaseEvtVtxGenerator 
00018 {
00019 public:
00020   FlatEvtVtxGenerator(const edm::ParameterSet & p);
00021   virtual ~FlatEvtVtxGenerator();
00022 
00024   //virtual CLHEP::Hep3Vector* newVertex();
00025   virtual HepMC::FourVector* newVertex() ;
00026 
00027   virtual TMatrixD* GetInvLorentzBoost() {
00028           return 0;
00029   }
00030 
00031     
00033   void minX(double m=0.0);
00035   void minY(double m=0.0);
00037   void minZ(double m=0.0);
00038 
00040   void maxX(double m=0);
00042   void maxY(double m=0);
00044   void maxZ(double m=0);
00045   
00046 private:
00048   FlatEvtVtxGenerator(const FlatEvtVtxGenerator &p);
00050   FlatEvtVtxGenerator&  operator = (const FlatEvtVtxGenerator & rhs );
00051 private:
00052   double fMinX, fMinY, fMinZ;
00053   double fMaxX, fMaxY, fMaxZ;
00054   CLHEP::RandFlat*  fRandom ;
00055   double fTimeOffset;
00056 };
00057 
00058 #endif