CMS 3D CMS Logo

PhotosInterfaceBase.h
Go to the documentation of this file.
1 #ifndef gen_PhotosInterface_PhotosInterfaceBase_h
2 #define gen_PhotosInterface_PhotosInterfaceBase_h
3 
6 #include "HepMC/GenEvent.h"
7 #include <vector>
8 #include "CLHEP/Random/RandomEngine.h"
9 #include "HepMC/SimpleVector.h"
10 #include <string>
11 #include "CLHEP/Random/RandomEngine.h"
12 
13 namespace gen {
15  public:
18  virtual ~PhotosInterfaceBase() {}
19 
20  virtual void SetDecayRandomEngine(CLHEP::HepRandomEngine* decayRandomEngine) {}
21  virtual void init() = 0;
22  virtual const std::vector<std::string>& specialSettings() { return fSpecialSettings; }
23  virtual HepMC::GenEvent* apply(HepMC::GenEvent* evt) { return evt; }
24  virtual void avoidTauLeptonicDecays() = 0;
25  ;
26  virtual void configureOnlyFor(int) = 0;
27  virtual void setRandomEngine(CLHEP::HepRandomEngine* decayRandomEngine) = 0;
28  virtual void statistics() {}
29 
30  protected:
31  std::vector<std::string> fSpecialSettings;
32  };
33 } // namespace gen
34 
35 #endif
virtual void init()=0
virtual void configureOnlyFor(int)=0
virtual void SetDecayRandomEngine(CLHEP::HepRandomEngine *decayRandomEngine)
virtual void setRandomEngine(CLHEP::HepRandomEngine *decayRandomEngine)=0
virtual HepMC::GenEvent * apply(HepMC::GenEvent *evt)
PhotosInterfaceBase(const edm::ParameterSet &)
virtual const std::vector< std::string > & specialSettings()
std::vector< std::string > fSpecialSettings
virtual void avoidTauLeptonicDecays()=0