]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TEvtGen/EvtGenBase/EvtPto3PAmpFactory.hh
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenBase / EvtPto3PAmpFactory.hh
1 //-----------------------------------------------------------------------
2 // File and Version Information: 
3 //      $Id: EvtPto3PAmpFactory.hh,v 1.2 2009-03-16 16:42:03 robbep Exp $
4 // 
5 // Environment:
6 //      This software is part of the EvtGen package developed jointly
7 //      for the BaBar and CLEO collaborations. If you use all or part
8 //      of it, please give an appropriate acknowledgement.
9 //
10 // Copyright Information:
11 //      Copyright (C) 1998 Caltech, UCSB
12 //
13 // Module creator:
14 //      Alexei Dvoretskii, Caltech, 2001-2002.
15 //-----------------------------------------------------------------------
16
17 #ifndef EVT_PTO3P_AMP_FACTORY_HH
18 #define EVT_PTO3P_AMP_FACTORY_HH
19
20 #include <vector>
21 #include <string>
22 #include "EvtGenBase/EvtComplex.hh"
23 #include "EvtGenBase/EvtAmpFactory.hh"
24 #include "EvtGenBase/EvtDalitzPlot.hh"
25 #include "EvtGenBase/EvtDalitzPoint.hh"
26 #include "EvtGenBase/EvtCyclic3.hh"
27
28 class EvtPto3PAmpFactory : public EvtAmpFactory<EvtDalitzPoint> {
29   
30 public:
31   
32   EvtPto3PAmpFactory(const EvtDalitzPlot& dp) 
33     : EvtAmpFactory<EvtDalitzPoint>(), _dp(dp)
34   {}
35   EvtPto3PAmpFactory(const EvtPto3PAmpFactory& other) 
36     : EvtAmpFactory<EvtDalitzPoint>(other), _dp(other._dp)
37   {}
38   virtual ~EvtPto3PAmpFactory() 
39   {}
40   
41   virtual EvtAmpFactory<EvtDalitzPoint>* clone() const 
42   { 
43     return new EvtPto3PAmpFactory(*this); 
44   }
45   
46   virtual void processAmp(EvtComplex c, std::vector<std::string> vv, bool conj);
47  
48 private:
49
50   double matchIsobarCoef(EvtAmplitude<EvtDalitzPoint>* amp,
51                          EvtPdf<EvtDalitzPoint>* pdf, 
52                          EvtCyclic3::Pair i);
53
54
55   EvtDalitzPlot _dp;
56
57 };
58
59 #endif
60
61
62
63
64