CMS 3D CMS Logo

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 namespace HepMC {
12  class FourVector;
13 }
14 
15 namespace CLHEP {
16  class HepRandomEngine;
17 }
18 
19 namespace edm {
20  class HepMCProduct;
21 }
22 
24 public:
25  // ctor & dtor
26  explicit BaseEvtVtxGenerator(const edm::ParameterSet&);
27  ~BaseEvtVtxGenerator() override;
28 
29  void produce(edm::Event&, const edm::EventSetup&) override;
30 
31  virtual HepMC::FourVector newVertex(CLHEP::HepRandomEngine*) const = 0;
35  //virtual CLHEP::Hep3Vector* lastVertex() { return fVertex; }
36  //virtual HepMC::FourVector* lastVertex() { return fVertex; }
37 
38  virtual TMatrixD const* GetInvLorentzBoost() const = 0;
39 
40 private:
42 };
43 
44 #endif
edm::EDGetTokenT< edm::HepMCProduct >
edm
HLT enums.
Definition: AlignableModifier.h:19
EDProducer.h
BaseEvtVtxGenerator::~BaseEvtVtxGenerator
~BaseEvtVtxGenerator() override
Definition: BaseEvtVtxGenerator.cc:42
BaseEvtVtxGenerator::newVertex
virtual HepMC::FourVector newVertex(CLHEP::HepRandomEngine *) const =0
BaseEvtVtxGenerator::produce
void produce(edm::Event &, const edm::EventSetup &) override
Definition: BaseEvtVtxGenerator.cc:44
EDGetToken.h
CLHEP
Definition: CocoaGlobals.h:27
BaseEvtVtxGenerator::BaseEvtVtxGenerator
BaseEvtVtxGenerator(const edm::ParameterSet &)
Definition: BaseEvtVtxGenerator.cc:29
edm::ParameterSet
Definition: ParameterSet.h:36
BaseEvtVtxGenerator::sourceToken
edm::EDGetTokenT< edm::HepMCProduct > sourceToken
Definition: BaseEvtVtxGenerator.h:41
edm::stream::EDProducer
Definition: EDProducer.h:38
edm::EventSetup
Definition: EventSetup.h:57
BaseEvtVtxGenerator::GetInvLorentzBoost
virtual TMatrixD const * GetInvLorentzBoost() const =0
HepMC
Definition: GenParticle.h:15
HepMCProduct
edm::Event
Definition: Event.h:73
BaseEvtVtxGenerator
Definition: BaseEvtVtxGenerator.h:23