CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ExternalDecayDriver.h
Go to the documentation of this file.
1 #ifndef gen_ExternalDecayDriver_h
2 #define gen_ExternalDecayDriver_h
3 
6 
7 #include <string>
8 #include <vector>
9 
10 namespace HepMC
11 {
12 class GenEvent;
13 }
14 
15 namespace CLHEP {
16  class HepRandomEngine;
17 }
18 
19 namespace gen {
20 
21  class EvtGenInterfaceBase;
22  class TauolaInterfaceBase;
23  class PhotosInterfaceBase;
24 
25 
27  public:
28 
29  // ctor & dtor
32 
33  void init( const edm::EventSetup& );
34 
35  const std::vector<int>& operatesOnParticles() { return fPDGs; }
36  const std::vector<std::string>& specialSettings() { return fSpecialSettings; }
37 
38  HepMC::GenEvent* decay( HepMC::GenEvent* );
39 
40  void statistics() const;
41 
42  void setRandomEngine(CLHEP::HepRandomEngine*);
43  std::vector<std::string> const& sharedResources() const { return exSharedResources; }
44 
45  private:
46 
51  std::vector<int> fPDGs;
52  std::vector<std::string> fSpecialSettings;
53 
54  std::vector<std::string> exSharedResources;
55  };
56 
57 }
58 
59 #endif
TauolaInterfaceBase * fTauolaInterface
PhotosInterfaceBase * fPhotosInterface
HepMC::GenEvent * decay(HepMC::GenEvent *)
void init(const edm::EventSetup &)
const std::vector< int > & operatesOnParticles()
const std::vector< std::string > & specialSettings()
std::vector< std::string > exSharedResources
std::vector< std::string > fSpecialSettings
EvtGenInterfaceBase * fEvtGenInterface
ExternalDecayDriver(const edm::ParameterSet &)
std::vector< std::string > const & sharedResources() const
void setRandomEngine(CLHEP::HepRandomEngine *)