]>
Commit | Line | Data |
---|---|---|
03896fc4 | 1 | //////////////////////////////////////////////////////////////////////////////////////////////// |
2 | // Copyright : The FASTMC and SPHMC Collaboration // | |
3 | // Author : Ionut Cristian Arsene // | |
4 | // Affiliation : Oslo University, Norway & Institute for Space Sciences, Bucharest, Romania // | |
5 | // e-mail : i.c.arsene@fys.uio.no // | |
6 | // Date : 2007/05/30 // | |
7 | // // | |
8 | // This class is using the particle and decays lists provided by the // | |
9 | // THERMINATOR (Computer Physics Communications 174 669 (2006)) and // | |
10 | // SHARE (Computer Physics Communications 167 229 (2005)) collaborations. // | |
11 | //////////////////////////////////////////////////////////////////////////////////////////////// | |
b1c2e580 | 12 | |
03896fc4 | 13 | #ifndef DECAYCHANNEL_H |
14 | #define DECAYCHANNEL_H | |
b1c2e580 | 15 | |
03896fc4 | 16 | #include <Rtypes.h> |
b1c2e580 | 17 | |
18 | const Int_t kMaxDaughters = 3; | |
19 | const Int_t kNonsensePDG = 1000000000; | |
20 | ||
21 | class DecayChannel { | |
b1c2e580 | 22 | public: |
23 | DecayChannel(); // default constructor | |
24 | DecayChannel(const DecayChannel ©); // copy constructor | |
03896fc4 | 25 | DecayChannel(Int_t mother, Double_t branching, Int_t nDaughters, const Int_t *daughters); // explicit constructor |
b1c2e580 | 26 | ~DecayChannel() {}; // destructor |
27 | ||
28 | void SetMotherPDG(Int_t value) {fMotherPDG = value;} | |
29 | void SetBranching(Double_t value) {fBranchingRatio = value;} | |
03896fc4 | 30 | void SetDaughters(const Int_t *values, Int_t n); |
b1c2e580 | 31 | void AddDaughter(Int_t pdg); |
03896fc4 | 32 | Int_t GetMotherPDG() const {return fMotherPDG;} |
33 | Double_t GetBranching() const {return fBranchingRatio;} | |
34 | Int_t GetNDaughters() const {return fNDaughters;} | |
35 | const Int_t* GetDaughters() const {return fDaughtersPDG;} | |
b1c2e580 | 36 | Int_t GetDaughterPDG(Int_t i); // i --> must be the zero-based index of daughter |
786056a2 | 37 | |
38 | private: | |
03896fc4 | 39 | Int_t fMotherPDG; // PDG code of the mother particle |
40 | Double_t fBranchingRatio; // branching ratio | |
41 | Int_t fNDaughters; // number of daughter particles | |
42 | Int_t fDaughtersPDG[kMaxDaughters]; // array with daughters PDG | |
b1c2e580 | 43 | }; |
44 | ||
45 | #endif |