ROOTPWA
partialWaveWeight.h
Go to the documentation of this file.
1 
5 #ifndef TPWWEIGHT_HH
6 #define TPWWEIGHT_HH
7 
8 #include <string>
9 #include <vector>
10 #include <map>
11 #include <complex>
12 #include <event.h>
13 #include <Tgamp.h>
14 #include "productionAmp.h"
15 
16 #include <integral.h>
17 
18 
24 namespace rpwa {
25 
27 
28  public:
29 
32 
40  void addWave(const std::string& keyfilename,
42  const std::complex<double>& branching,
43  unsigned int vectori=0);
44 
45 
50  void loadIntegrals(const std::string& filename, double mass);
51 
54  double weight(event& e);
55 
61  std::complex<double> prodAmp(unsigned int iv,
62  unsigned int iw,
63  event& e);
64 
65 
66  private:
67 
68  // Private Data Members ------------
69  std::vector<std::vector<std::string> > m_waves;
70 
71  // Production amplitudes
72  std::vector<std::vector<std::complex<double> > > m_branchings;
73  std::vector<std::vector<rpwa::productionAmp*> > m_amps;
74 
75  std::vector<Tgamp> m_gamp;
76  std::map<std::string,double> m_relphase;
77  std::map<double,integral> m_normInt;
78 
79  bool m_hasInt;
80 
81  // Private Methods -----------------
82 
83  };
84 
85 }
86 
87 #endif
88 /* @} **/
89