]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TEvtGen/EvtGenModels/EvtModelReg.cxx
AliDecayer realisation for the EvtGen code and EvtGen itself.
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenModels / EvtModelReg.cxx
1 //--------------------------------------------------------------------------
2 //
3 // Environment:
4 //      This software is part of the EvtGen package developed jointly
5 //      for the BaBar and CLEO collaborations.  If you use all or part
6 //      of it, please give an appropriate acknowledgement.
7 //
8 // Copyright Information: See EvtGen/COPYRIGHT
9 //      Copyright (C) 1998      Caltech, UCSB
10 //
11 // Module: EvtModel.cc
12 //
13 // Description:
14 //
15 // Modification history:
16 //
17 //    RYD     September 25, 1996         Module created
18 //
19 //------------------------------------------------------------------------
20 // 
21 #include "EvtGenBase/EvtPatches.hh"
22 #include <iostream>
23 #include <iomanip>
24 #include <fstream>
25 #include <ctype.h>
26 #include <stdlib.h>
27 #include <assert.h>
28 #include "EvtGenBase/EvtModel.hh"
29
30 #include "EvtGenModels/EvtTauVectornu.hh"
31 #include "EvtGenModels/EvtVVP.hh"
32 #include "EvtGenModels/EvtSLN.hh"
33 #include "EvtGenModels/EvtISGW2.hh"
34 #include "EvtGenModels/EvtMelikhov.hh"
35 #include "EvtGenModels/EvtSLPole.hh"
36 #include "EvtGenModels/EvtPropSLPole.hh"
37 #include "EvtGenModels/EvtSLBKPole.hh"
38 #include "EvtGenModels/EvtISGW.hh"
39 #include "EvtGenModels/EvtBHadronic.hh"
40 #include "EvtGenModels/EvtVSS.hh"
41 #include "EvtGenModels/EvtVSSMix.hh"
42 #include "EvtGenModels/EvtVSSBMixCPT.hh"
43 #include "EvtGenModels/EvtVSPPwave.hh"
44 #include "EvtGenModels/EvtGoityRoberts.hh"
45 #include "EvtGenModels/EvtSVS.hh"
46 #include "EvtGenModels/EvtTSS.hh"
47 #include "EvtGenModels/EvtTVSPwave.hh"
48 #include "EvtGenModels/EvtSVVHelAmp.hh"
49 #include "EvtGenModels/EvtSVPHelAmp.hh"
50 #include "EvtGenModels/EvtSVPCP.hh"
51 #include "EvtGenModels/EvtVVSPwave.hh"
52 #include "EvtGenModels/EvtDDalitz.hh"
53 #include "EvtGenModels/EvtOmegaDalitz.hh"
54 #include "EvtGenModels/EvtPi0Dalitz.hh"
55 #include "EvtGenModels/EvtEtaDalitz.hh"
56 #include "EvtGenModels/EvtPhsp.hh"
57 #include "EvtGenModels/EvtBtoXsgamma.hh"
58 #include "EvtGenModels/EvtBtoXsll.hh"
59 #include "EvtGenModels/EvtBtoXsEtap.hh"
60 #include "EvtGenModels/EvtSSSCP.hh"
61 #include "EvtGenModels/EvtSSSCPpng.hh"
62 #include "EvtGenModels/EvtSTSCP.hh"
63 #include "EvtGenModels/EvtSTS.hh"
64 #include "EvtGenModels/EvtSSSCPT.hh"
65 #include "EvtGenModels/EvtSVSCP.hh"
66 #include "EvtGenModels/EvtSSDCP.hh"
67 #include "EvtGenModels/EvtSVSNONCPEIGEN.hh"
68 #include "EvtGenModels/EvtSVVNONCPEIGEN.hh"
69 #include "EvtGenModels/EvtSVVCP.hh"
70 #include "EvtGenModels/EvtSVVCPLH.hh"
71 #include "EvtGenModels/EvtSVSCPLH.hh"
72 #include "EvtGenModels/EvtSll.hh"
73 #include "EvtGenModels/EvtVll.hh"
74 #include "EvtGenModels/EvtTaulnunu.hh"
75 #include "EvtGenModels/EvtTauHadnu.hh"
76 #include "EvtGenModels/EvtTauScalarnu.hh"
77 #include "EvtGenModels/EvtKstarnunu.hh"
78 #include "EvtGenModels/EvtbTosllBall.hh"
79 #include "EvtGenModels/EvtSingleParticle.hh"
80 #include "EvtGenModels/EvtVectorIsr.hh"
81 #include "EvtGenModels/EvtBToPlnuBK.hh"
82 #include "EvtGenModels/EvtBToVlnuBall.hh"
83
84 #include "EvtGenModels/EvtSVVHelCPMix.hh"
85 #include "EvtGenModels/EvtLb2Lll.hh"
86 #include "EvtGenModels/EvtHypNonLepton.hh"
87
88 #include "EvtGenModels/EvtbTosllAli.hh"
89 //#include "EvtGenModels/EvtBToDDalitzCPK.hh"
90 //#include "EvtGenModels/EvtPVVCPLH.hh"
91 //#include "EvtGenModels/EvtLambdaB2LambdaV.hh"
92 //#include "EvtGenModels/EvtSSD_DirectCP.hh"
93
94 #include "EvtGenModels/EvtHQET.hh"
95 #include "EvtGenModels/EvtHQET2.hh"
96 #include "EvtGenBase/EvtParticle.hh"
97 #include "EvtGenBase/EvtPDL.hh"
98 #include "EvtGenModels/EvtHelAmp.hh"
99 #include "EvtGenModels/EvtPartWave.hh"
100
101 #include "EvtGenModels/EvtBto2piCPiso.hh"
102 #include "EvtGenModels/EvtBtoKpiCPiso.hh"
103 #include "EvtGenModels/EvtSVSCPiso.hh"
104 #include "EvtGenModels/EvtVVpipi.hh"
105 #include "EvtGenModels/EvtY3SToY1SpipiMoxhay.hh"
106 #include "EvtGenModels/EvtYmSToYnSpipiCLEO.hh"
107 #include "EvtGenModels/EvtVVPIPI_WEIGHTED.hh"
108 #include "EvtGenModels/EvtVPHOtoVISRHi.hh"
109
110 #include "EvtGenModels/EvtBTo4piCP.hh"
111 #include "EvtGenModels/EvtBTo3piCP.hh"
112 #include "EvtGenModels/EvtCBTo3piP00.hh"
113 #include "EvtGenModels/EvtCBTo3piMPP.hh"
114 #include "EvtGenModels/EvtBToKpipiCP.hh"
115 #include "EvtGenModels/EvtBsquark.hh"
116 #include "EvtGenModels/EvtPhiDalitz.hh"
117
118 #include "EvtGenModels/EvtLNuGamma.hh"
119
120 #include "EvtGenModels/EvtVub.hh"
121 //#include "EvtGenModels/EvtVubAFR.hh"
122 #include "EvtGenModels/EvtVubHybrid.hh"
123 #include "EvtGenModels/EvtVubNLO.hh"
124 #include "EvtGenModels/EvtVubBLNP.hh"
125 #include "EvtGenModels/EvtVubBLNPHybrid.hh"
126
127 #include "EvtGenModels/EvtPto3P.hh"
128 #include "EvtGenModels/EvtBtoKD3P.hh"
129 #include "EvtGenModels/EvtKstarstargamma.hh"
130 #include "EvtGenModels/EvtFlatQ2.hh"
131 #include "EvtGenModels/EvtLambdaP_BarGamma.hh"
132 #include "EvtGenModels/EvtBBScalar.hh"
133 #include "EvtGenModels/EvtKKLambdaC.hh"
134 #include "EvtGenModels/EvtMultibody.hh"
135
136 //#include "EvtGenModels/EvtJetSetCDF.hh"
137 //#include "EvtGenModels/EvtJscontCDF.hh"
138
139
140 //#ifndef EVTSTANDALONE
141 //#include "EvtGenModels/EvtJetSet.hh"
142 //#include "EvtGenModels/EvtJscont.hh"
143 //#else
144  #include "EvtGenModels/EvtPythia.hh"
145  #include "EvtGenModels/EvtPyGaGa.hh"
146  #include "EvtGenModels/EvtPycont.hh"
147 //#endif
148
149 #include "EvtGenModels/EvtDMix.hh"
150 #include "EvtGenModels/EvtD0mixDalitz.hh"
151
152 #include "EvtGenModels/EvtModelReg.hh"
153 using std::fstream;
154 using std::cout;
155 using std::endl;
156
157 EvtModelReg::EvtModelReg(const std::list<EvtDecayBase*>* extraModels) 
158 {
159
160     EvtModel &modelist=EvtModel::instance();
161
162     if(extraModels){
163       for(std::list<EvtDecayBase*>::const_iterator it = extraModels->begin(); 
164           it != extraModels->end(); ++it){
165         modelist.registerModel(*it);
166       }
167     }
168
169     modelist.registerModel(new EvtBBScalar);
170     modelist.registerModel(new EvtLambdaP_BarGamma);
171     modelist.registerModel(new EvtFlatQ2);
172     modelist.registerModel(new EvtTauHadnu);
173     modelist.registerModel(new EvtTauVectornu);
174     modelist.registerModel(new EvtVVP);
175     modelist.registerModel(new EvtSLN);
176     modelist.registerModel(new EvtISGW2);
177     modelist.registerModel(new EvtMelikhov);
178     modelist.registerModel(new EvtSLPole);
179     modelist.registerModel(new EvtPropSLPole);
180     modelist.registerModel(new EvtSLBKPole);
181     modelist.registerModel(new EvtHQET);
182     modelist.registerModel(new EvtHQET2);
183     modelist.registerModel(new EvtISGW);
184     modelist.registerModel(new EvtBHadronic);
185     modelist.registerModel(new EvtVSS);
186     modelist.registerModel(new EvtVSSMix);
187     modelist.registerModel(new EvtVSSBMixCPT);
188     modelist.registerModel(new EvtVSPPwave);
189     modelist.registerModel(new EvtGoityRoberts);
190     modelist.registerModel(new EvtSVS);
191     modelist.registerModel(new EvtTSS);
192     modelist.registerModel(new EvtTVSPwave);
193     modelist.registerModel(new EvtSVVHelAmp);
194     modelist.registerModel(new EvtSVPHelAmp);
195     modelist.registerModel(new EvtSVPCP);
196     modelist.registerModel(new EvtVVSPwave);
197     modelist.registerModel(new EvtDDalitz);
198     modelist.registerModel(new EvtOmegaDalitz);
199     modelist.registerModel(new EvtEtaDalitz);
200     modelist.registerModel(new EvtPhsp);
201     modelist.registerModel(new EvtBtoXsgamma);
202     modelist.registerModel(new EvtBtoXsll);
203     modelist.registerModel(new EvtBtoXsEtap);
204     modelist.registerModel(new EvtSSSCP);
205     modelist.registerModel(new EvtSSSCPpng);
206     modelist.registerModel(new EvtSTSCP);
207     modelist.registerModel(new EvtSTS);
208     modelist.registerModel(new EvtSSSCPT);
209     modelist.registerModel(new EvtSVSCP);
210     modelist.registerModel(new EvtSSDCP);
211     modelist.registerModel(new EvtSVSNONCPEIGEN);
212     modelist.registerModel(new EvtSVVNONCPEIGEN);
213     modelist.registerModel(new EvtSVVCP);
214     modelist.registerModel(new EvtSVVCPLH);
215     modelist.registerModel(new EvtSVSCPLH);
216     modelist.registerModel(new EvtSll);
217     modelist.registerModel(new EvtVll);
218     modelist.registerModel(new EvtTaulnunu);
219     modelist.registerModel(new EvtTauScalarnu);
220     modelist.registerModel(new EvtKstarnunu);
221     modelist.registerModel(new EvtbTosllBall);
222     modelist.registerModel(new EvtBto2piCPiso);
223     modelist.registerModel(new EvtBtoKpiCPiso);
224     modelist.registerModel(new EvtSVSCPiso);
225     modelist.registerModel(new EvtSingleParticle);
226     modelist.registerModel(new EvtVectorIsr);
227     modelist.registerModel(new EvtPi0Dalitz);
228     modelist.registerModel(new EvtHelAmp);
229     modelist.registerModel(new EvtPartWave);
230     modelist.registerModel(new EvtVVpipi);
231     modelist.registerModel(new EvtY3SToY1SpipiMoxhay);
232     modelist.registerModel(new EvtYmSToYnSpipiCLEO);
233     modelist.registerModel(new EvtBsquark);
234     modelist.registerModel(new EvtPhiDalitz); 
235     modelist.registerModel(new EvtBToPlnuBK); 
236     modelist.registerModel(new EvtBToVlnuBall); 
237     modelist.registerModel(new EvtVVPIPI_WEIGHTED);
238     modelist.registerModel(new EvtVPHOtoVISRHi);
239
240     modelist.registerModel(new EvtBTo4piCP);
241     modelist.registerModel(new EvtBTo3piCP);
242     modelist.registerModel(new EvtCBTo3piP00);
243     modelist.registerModel(new EvtCBTo3piMPP);
244     modelist.registerModel(new EvtBToKpipiCP);
245
246     modelist.registerModel(new EvtLb2Lll);
247     modelist.registerModel(new EvtHypNonLepton);
248     modelist.registerModel(new EvtSVVHelCPMix);
249
250     modelist.registerModel(new EvtLNuGamma);
251     modelist.registerModel(new EvtKstarstargamma);
252
253     modelist.registerModel(new EvtVub); 
254     //modelist.registerModel(new EvtVubAFR);
255
256     modelist.registerModel(new EvtVubHybrid);
257     modelist.registerModel(new EvtVubNLO);
258     modelist.registerModel(new EvtVubBLNP);
259     modelist.registerModel(new EvtVubBLNPHybrid);
260
261     modelist.registerModel(new EvtPto3P);
262     modelist.registerModel(new EvtBtoKD3P);
263     modelist.registerModel(new EvtKKLambdaC);
264     modelist.registerModel(new EvtMultibody);
265     modelist.registerModel(new EvtDMix);
266     modelist.registerModel(new EvtD0mixDalitz);
267
268     //modelist.registerModel(new EvtJetSetCDF);
269     //modelist.registerModel(new EvtJscontCDF);
270
271     modelist.registerModel(new EvtbTosllAli);
272     //    modelist.registerModel(new EvtBToDDalitzCPK);
273     //    modelist.registerModel(new EvtLambdaB2LambdaV);
274     //    modelist.registerModel(new EvtLambda2PPiForLambdaB2LambdaV);
275     //    modelist.registerModel(new EvtV2VpVmForLambdaB2LambdaV);
276     //    modelist.registerModel(new EvtPVVCPLH);
277     //   modelist.registerModel(new EvtSSD_DirectCP);
278
279
280 //#ifndef EVTSTANDALONE
281 //    cout << "Will registerModel EvtJetSet"<<endl;
282 //    modelist.registerModel(new EvtJetSet);
283 //    modelist.registerModel(new EvtJscont);
284 //#else
285     modelist.registerModel(new EvtPycont);
286     cout << "Will register EvtPythia"<<endl;
287     modelist.registerModel(new EvtPythia);
288     modelist.registerModel(new EvtPyGaGa);
289 //#endif
290
291     
292
293 }
294
295
296
297
298
299
300