evtgen is hosted by Hepforge, IPPP Durham
EvtGen  2.0.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
EvtDecayParm.hh
Go to the documentation of this file.
1 
2 /***********************************************************************
3 * Copyright 1998-2020 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 
21 #ifndef EVTDECAYPARM_HH
22 #define EVTDECAYPARM_HH
23 
24 #include <string>
25 
26 // Description: Class to keep the arguments and daughters of a decay
27 
28 class EvtParticle;
29 
30 typedef void ( *fcnPtr )( EvtParticle*, int, int*, double* );
31 
32 class EvtDecayParm {
33  public:
34  EvtDecayParm();
35  ~EvtDecayParm();
36 
37  void init( fcnPtr pfcn, int ndaug, int* daugs, int narg, double* args,
38  std::string name );
39 
40  int getNDaug() { return itsndaug; }
41  int getNArg() { return itsnarg; }
42  int* getDaugs() { return itsdaugs; }
43  double* getArgs() { return itsargs; }
44  fcnPtr getfcnPtr() { return itsfcn; }
45  std::string getModelName() { return modelname; }
46 
47  private:
49  int itsndaug;
50  int* itsdaugs;
51  int itsnarg;
52  double* itsargs;
53  std::string modelname;
54 };
55 
56 #endif
int * getDaugs()
Definition: EvtDecayParm.hh:42
double * getArgs()
Definition: EvtDecayParm.hh:43
std::string modelname
Definition: EvtDecayParm.hh:53
void(* fcnPtr)(EvtParticle *, int, int *, double *)
Definition: EvtDecayParm.hh:30
double * itsargs
Definition: EvtDecayParm.hh:52
std::string getModelName()
Definition: EvtDecayParm.hh:45
fcnPtr getfcnPtr()
Definition: EvtDecayParm.hh:44
void init(fcnPtr pfcn, int ndaug, int *daugs, int narg, double *args, std::string name)