Line data Source code
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 0 : : EvtAmpFactory<EvtDalitzPoint>(), _dp(dp)
34 0 : {}
35 : EvtPto3PAmpFactory(const EvtPto3PAmpFactory& other)
36 0 : : EvtAmpFactory<EvtDalitzPoint>(other), _dp(other._dp)
37 0 : {}
38 : virtual ~EvtPto3PAmpFactory()
39 0 : {}
40 :
41 : virtual EvtAmpFactory<EvtDalitzPoint>* clone() const
42 : {
43 0 : return new EvtPto3PAmpFactory(*this);
44 0 : }
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 :
|