CMS 3D CMS Logo

ConcurrentExternalDecayDriver.h
Go to the documentation of this file.
1 #ifndef gen_ConcurrentExternalDecayDriver_h
2 #define gen_ConcurrentExternalDecayDriver_h
3 
6 
7 #include <string>
8 #include <vector>
9 
10 namespace HepMC {
11  class GenEvent;
12 }
13 
14 namespace CLHEP {
15  class HepRandomEngine;
16 }
17 
18 namespace lhef {
19  class LHEEvent;
20 }
21 
22 namespace gen {
23 
24  class EvtGenInterfaceBase;
25  class TauolaInterfaceBase;
26  class PhotosInterfaceBase;
27 
29  public:
30  // ctor & dtor
33 
34  void init(const edm::EventSetup&);
35 
36  const std::vector<int>& operatesOnParticles() { return fPDGs; }
37  const std::vector<std::string>& specialSettings() { return fSpecialSettings; }
38 
41 
42  void statistics() const;
43 
44  void setRandomEngine(CLHEP::HepRandomEngine*);
45 
46  private:
48  //std::unique_ptr<TauolaInterfaceBase> fTauolaInterface;
49  //std::unique_ptr<EvtGenInterfaceBase> fEvtGenInterface;
50  //std::unique_ptr<PhotosInterfaceBase> fPhotosInterface;
51  std::vector<int> fPDGs;
52  std::vector<std::string> fSpecialSettings;
53  };
54 
55 } // namespace gen
56 
57 #endif
const std::vector< int > & operatesOnParticles()
ConcurrentExternalDecayDriver(const edm::ParameterSet &)
HepMC::GenEvent * decay(HepMC::GenEvent *evt)
void setRandomEngine(CLHEP::HepRandomEngine *)
const std::vector< std::string > & specialSettings()