CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
BaseEvtVtxGenerator.h
Go to the documentation of this file.
1 #ifndef IOMC_BaseEvtVtxGenerator_H
2 #define IOMC_BaseEvtVtxGenerator_H
3 /*
4 */
5 
8 
9 #include "TMatrixD.h"
10 
11 /*
12 namespace HepMC {
13  class GenEvent;
14 }
15 */
16 
17 namespace HepMC {
18  class FourVector ;
19 }
20 
21 namespace CLHEP {
22  //class Hep3Vector;
23  class HepRandomEngine;
24 }
25 
27 {
28  public:
29 
30  // ctor & dtor
31  explicit BaseEvtVtxGenerator( const edm::ParameterSet& );
32  virtual ~BaseEvtVtxGenerator();
33 
34  virtual void produce( edm::Event&, const edm::EventSetup&) override;
35 
36  //virtual CLHEP::Hep3Vector* newVertex() = 0;
37  virtual HepMC::FourVector* newVertex(CLHEP::HepRandomEngine*) = 0 ;
41  //virtual CLHEP::Hep3Vector* lastVertex() { return fVertex; }
42  virtual HepMC::FourVector* lastVertex() { return fVertex; }
43 
44  virtual TMatrixD* GetInvLorentzBoost() = 0;
45 
46  protected:
47 
48  //CLHEP::Hep3Vector* fVertex;
49  HepMC::FourVector* fVertex ;
50  TMatrixD *boost_;
51  double fTimeOffset;
52 
53  private :
54 
56 
57 };
58 
59 #endif
HepMC::FourVector * fVertex
virtual void produce(edm::Event &, const edm::EventSetup &) override
virtual HepMC::FourVector * lastVertex()
virtual HepMC::FourVector * newVertex(CLHEP::HepRandomEngine *)=0
BaseEvtVtxGenerator(const edm::ParameterSet &)
virtual TMatrixD * GetInvLorentzBoost()=0