9#include "EvtGenBase/EvtParticle.hh"
10#include "EvtGenBase/EvtPDL.hh"
11#include "EvtGenBase/EvtSemiLeptonicVectorAmp.hh"
12#include "EvtGenBase/EvtSemiLeptonicScalarAmp.hh"
15#include "generators/evtgen/EvtGenModelRegister.h"
16#include "generators/evtgen/models/EvtBCL.h"
17#include "generators/evtgen/models/EvtBCLFF.h"
51 p->initializePhaseSpace(getNDaug(), getDaugs());
59 EvtId parnum, mesnum, lnum, nunum;
61 parnum = getParentId();
66 double mymaxprob =
calcamp->CalcMaxProb(parnum, mesnum, lnum, nunum,
bclmodel);
68 setProbMax(mymaxprob);
80 checkSpinParent(EvtSpinType::SCALAR);
81 checkSpinDaughter(1, EvtSpinType::DIRAC);
82 checkSpinDaughter(2, EvtSpinType::NEUTRINO);
84 EvtSpinType::spintype mesontype = EvtPDL::getSpinType(getDaug(0));
88 if (mesontype == EvtSpinType::SCALAR) {
89 calcamp =
new EvtSemiLeptonicScalarAmp;
91 if (mesontype == EvtSpinType::VECTOR) {
92 calcamp =
new EvtSemiLeptonicVectorAmp;
The class provides the form factors for orbitally excited semileptonic decays.
EvtSemiLeptonicAmp * calcamp
Pointers needed to calculate amplitude.
EvtSemiLeptonicFF * bclmodel
Pointers needed for FFs.
void init()
Initializes module.
EvtBCL()
Default constructor.
EvtDecayBase * clone()
Clones module.
virtual ~EvtBCL()
virtual destructor
void initProbMax()
Sets maximal probab.
std::string getName()
Returns name of module.
#define B2_EVTGEN_REGISTER_MODEL(classname)
Class to register B2_EVTGEN_REGISTER_MODEL.
void decay(EvtParticle *p)
Creates a decay.
Abstract base class for different kinds of events.