EvtGen 2.2.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
Loading...
Searching...
No Matches
EvtModelReg.cpp
Go to the documentation of this file.
1
2/***********************************************************************
3* Copyright 1998-2021 CERN for the benefit of the EvtGen authors *
4* *
5* This file is part of EvtGen. *
6* *
7* EvtGen is free software: you can redistribute it and/or modify *
8* it under the terms of the GNU General Public License as published by *
9* the Free Software Foundation, either version 3 of the License, or *
10* (at your option) any later version. *
11* *
12* EvtGen is distributed in the hope that it will be useful, *
13* but WITHOUT ANY WARRANTY; without even the implied warranty of *
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15* GNU General Public License for more details. *
16* *
17* You should have received a copy of the GNU General Public License *
18* along with EvtGen. If not, see <https://www.gnu.org/licenses/>. *
19***********************************************************************/
20
22
24#include "EvtGenBase/EvtPDL.hh"
26
106#include "EvtGenModels/EvtSTS.hh"
108#include "EvtGenModels/EvtSVP.hh"
112#include "EvtGenModels/EvtSVS.hh"
123#include "EvtGenModels/EvtSll.hh"
124#include "EvtGenModels/EvtTSS.hh"
125#include "EvtGenModels/EvtTVP.hh"
134#include "EvtGenModels/EvtVSS.hh"
137#include "EvtGenModels/EvtVVP.hh"
142#include "EvtGenModels/EvtVll.hh"
144#include "EvtGenModels/EvtVub.hh"
158
159#include <assert.h>
160#include <ctype.h>
161#include <fstream>
162#include <iomanip>
163#include <iostream>
164#include <stdlib.h>
165
166using std::cout;
167using std::endl;
168using std::fstream;
169
170EvtModelReg::EvtModelReg( const std::list<EvtDecayBase*>* extraModels )
171{
172 EvtModel& modelist = EvtModel::instance();
173
174 if ( extraModels ) {
175 for ( std::list<EvtDecayBase*>::const_iterator it = extraModels->begin();
176 it != extraModels->end(); ++it ) {
177 modelist.registerModel( *it );
178 }
179 }
180
181 modelist.registerModel( new EvtBBScalar );
182 modelist.registerModel( new EvtLambdaP_BarGamma );
183 modelist.registerModel( new EvtFlatQ2 );
184 modelist.registerModel( new EvtTauHadnu );
185 modelist.registerModel( new EvtTauVectornu );
186 modelist.registerModel( new EvtVVP );
187 modelist.registerModel( new EvtSLN );
188 modelist.registerModel( new EvtISGW2 );
189 modelist.registerModel( new EvtMelikhov );
190 modelist.registerModel( new EvtSLPole );
191 modelist.registerModel( new EvtSLBKPole );
192 modelist.registerModel( new EvtHQET );
193 modelist.registerModel( new EvtHQET2 );
194 modelist.registerModel( new EvtISGW );
195 modelist.registerModel( new EvtVSS );
196 modelist.registerModel( new EvtVSSMix );
197 modelist.registerModel( new EvtVSSBMixCPT );
198 modelist.registerModel( new EvtVSPPwave );
199 modelist.registerModel( new EvtGoityRoberts );
200 modelist.registerModel( new EvtSVS );
201 modelist.registerModel( new EvtTSS );
202 modelist.registerModel( new EvtTVSPwave );
203 modelist.registerModel( new EvtSVVHelAmp );
204 modelist.registerModel( new EvtSVPHelAmp );
205 modelist.registerModel( new EvtSVPCP );
206 modelist.registerModel( new EvtVVSPwave );
207 modelist.registerModel( new EvtDDalitz );
208 modelist.registerModel( new EvtOmegaDalitz );
209 modelist.registerModel( new EvtEtaDalitz );
210 modelist.registerModel( new EvtPhsp );
211 modelist.registerModel( new EvtPhspDecaytimeCut );
212 modelist.registerModel( new EvtBtoXsgamma );
213 modelist.registerModel( new EvtBtoXsll );
214 modelist.registerModel( new EvtBtoXsEtap );
215 modelist.registerModel( new EvtSSSCP );
216 modelist.registerModel( new EvtSSSCPpng );
217 modelist.registerModel( new EvtSTSCP );
218 modelist.registerModel( new EvtSTS );
219 modelist.registerModel( new EvtSSSCPT );
220 modelist.registerModel( new EvtSVSCP );
221 modelist.registerModel( new EvtSSDCP );
222 modelist.registerModel( new EvtSVSNONCPEIGEN );
223 modelist.registerModel( new EvtSVVNONCPEIGEN );
224 modelist.registerModel( new EvtSVVCP );
225 modelist.registerModel( new EvtSVVCPLH );
226 modelist.registerModel( new EvtSVSCPLH );
227 modelist.registerModel( new EvtSll );
228 modelist.registerModel( new EvtVll );
229 modelist.registerModel( new EvtTaulnunu );
230 modelist.registerModel( new EvtTauScalarnu );
231 modelist.registerModel( new EvtKstarnunu );
232 modelist.registerModel( new EvtbTosllBall );
233 modelist.registerModel( new EvtBto2piCPiso );
234 modelist.registerModel( new EvtBtoKpiCPiso );
235 modelist.registerModel( new EvtSVSCPiso );
236 modelist.registerModel( new EvtSingleParticle );
237 modelist.registerModel( new EvtVectorIsr );
238 modelist.registerModel( new EvtPi0Dalitz );
239 modelist.registerModel( new EvtHelAmp );
240 modelist.registerModel( new EvtPartWave );
241 modelist.registerModel( new EvtVVpipi );
242 modelist.registerModel( new EvtY3SToY1SpipiMoxhay );
243 modelist.registerModel( new EvtYmSToYnSpipiCLEO );
244 modelist.registerModel( new EvtBsquark );
245 modelist.registerModel( new EvtPhiDalitz );
246 modelist.registerModel( new EvtBToPlnuBK );
247 modelist.registerModel( new EvtBToVlnuBall );
248 modelist.registerModel( new EvtVVPIPI_WEIGHTED );
249 modelist.registerModel( new EvtVPHOtoVISRHi );
250
251 modelist.registerModel( new EvtBTo4piCP );
252 modelist.registerModel( new EvtBTo3piCP );
253 modelist.registerModel( new EvtCBTo3piP00 );
254 modelist.registerModel( new EvtCBTo3piMPP );
255 modelist.registerModel( new EvtBToKpipiCP );
256
257 modelist.registerModel( new EvtRareLbToLll );
258 modelist.registerModel( new EvtHypNonLepton );
259 modelist.registerModel( new EvtSVVHelCPMix );
260 modelist.registerModel( new EvtSVPHelCPMix );
261
262 modelist.registerModel( new EvtLNuGamma );
263
264 modelist.registerModel( new EvtVub );
265
266 modelist.registerModel( new EvtVubHybrid );
267 modelist.registerModel( new EvtVubNLO );
268 modelist.registerModel( new EvtVubBLNP );
269 modelist.registerModel( new EvtVubBLNPHybrid );
270
271 modelist.registerModel( new EvtPto3P );
272 modelist.registerModel( new EvtBtoKD3P );
273 modelist.registerModel( new EvtKKLambdaC );
274 modelist.registerModel( new EvtDMix );
275 modelist.registerModel( new EvtD0mixDalitz );
276 modelist.registerModel( new EvtD0gammaDalitz );
277 modelist.registerModel( new EvtD0ToKspipi );
278
279 modelist.registerModel( new EvtbTosllAli );
280 modelist.registerModel( new EvtBaryonPCR );
281
282 modelist.registerModel( new EvtBToDDalitzCPK );
283 modelist.registerModel( new EvtPVVCPLH );
284 modelist.registerModel( new EvtSSD_DirectCP );
285
286 modelist.registerModel( new EvtBcToNPi );
287 modelist.registerModel( new EvtBcPsiNPi );
288 modelist.registerModel( new EvtBcBsNPi );
289 modelist.registerModel( new EvtBcBsStarNPi );
290
291 modelist.registerModel( new EvtBcSMuNu );
292 modelist.registerModel( new EvtBcVMuNu );
293 modelist.registerModel( new EvtBcTMuNu );
294 modelist.registerModel( new EvtBcVNpi );
295 modelist.registerModel( new EvtSVP );
296 modelist.registerModel( new EvtTVP );
297 modelist.registerModel( new EvtXPsiGamma );
298
299 modelist.registerModel( new EvtBLLNuL );
300
301 modelist.registerModel( new EvtKStopizmumu );
302 modelist.registerModel( new EvtVtoSll );
303
304 modelist.registerModel( new EvtBsMuMuKK );
305 modelist.registerModel( new EvtGenericDalitz );
306
307 modelist.registerModel( new EvtBcVHad );
308 modelist.registerModel( new EvtBcVPPHad );
309
310 modelist.registerModel( new Evtbs2llGammaMNT );
311 modelist.registerModel( new Evtbs2llGammaISRFSR );
312 modelist.registerModel( new EvtbTosllMS );
313 modelist.registerModel( new EvtbTosllMSExt );
314
315 modelist.registerModel( new EvtLb2plnuLQCD );
316 modelist.registerModel( new EvtLb2plnuLCSR );
317 modelist.registerModel( new EvtLb2Baryonlnu );
318
319 modelist.registerModel( new EvtBToDiBaryonlnupQCD );
320
321 modelist.registerModel( new EvtFlatSqDalitz );
322 modelist.registerModel( new EvtPhspFlatLifetime );
323
324 modelist.registerModel( new EvtLambdacPHH );
325
326 modelist.registerModel( new EvtDToKpienu );
327 modelist.registerModel( new EvtPsi2JpsiPiPi );
328
329 modelist.registerModel( new EvtThreeBodyPhsp );
330 modelist.registerModel( new EvtFourBodyPhsp );
331 modelist.registerModel( new EvtEtaLLPiPi );
332
333 modelist.registerModel( new EvtBToXElNu );
334}
EvtModelReg(const std::list< EvtDecayBase * > *extraModels=nullptr)
void registerModel(EvtDecayBase *prototype)
Definition EvtModel.cpp:62
static EvtModel & instance()
Definition EvtModel.hh:55