MINT2
IEvtGen.h
Go to the documentation of this file.
1 #ifndef IEVTGEN_HH
2 #define IEVTGEN_HH
3 
4 #include <string>
5 #include <vector>
6 
7 #include "TRandom.h"
8 
9 #include "Mint/IDalitzEvent.h"
10 #include "Mint/SignalGenerator.h"
11 
12 namespace MINT
13 {
14  class IEvtGen
15  {
16  public:
25  IEvtGen( const std::string& inputFileName,
26  const std::vector<int>& pattern,
27  TRandom* rand, const double& unitConversion );
28 
29  virtual ~IEvtGen()
30  { delete m_sg; }
31 
35  void GenerateEvent( std::vector<std::vector<double>>& daughters,
36  double& weight_gen );
37 
41  std::vector<double> GetDaughter( const IDalitzEvent* const event,
42  const unsigned int& daughter_id );
43 
44  private:
45  const double m_unitConversion;
46 
48  };
49 } //namespace MINT
50 
51 #endif //IEVTGEN_HH
virtual ~IEvtGen()
Definition: IEvtGen.h:29
IEvtGen(const std::string &inputFileName, const std::vector< int > &pattern, TRandom *rand, const double &unitConversion)
Definition: IEvtGen.cpp:5
void GenerateEvent(std::vector< std::vector< double >> &daughters, double &weight_gen)
Definition: IEvtGen.cpp:22
SignalGenerator * m_sg
Definition: IEvtGen.h:47
const double m_unitConversion
Definition: IEvtGen.h:45
std::vector< double > GetDaughter(const IDalitzEvent *const event, const unsigned int &daughter_id)
Definition: IEvtGen.cpp:40