-/*
- Copyright : The FASTMC and SPHMC Collaboration
- Author : Ionut Cristian Arsene
- Affiliation : Oslo University, Norway & Institute for Space Sciences, Bucharest, Romania
- e-mail : i.c.arsene@fys.uio.no
- Date : 2007/05/30
+////////////////////////////////////////////////////////////////////////////////////////////////
+// Copyright : The FASTMC and SPHMC Collaboration //
+// Author : Ionut Cristian Arsene //
+// Affiliation : Oslo University, Norway & Institute for Space Sciences, Bucharest, Romania //
+// e-mail : i.c.arsene@fys.uio.no //
+// Date : 2007/05/30 //
+// //
+// This class is using the particle and decays lists provided by the //
+// THERMINATOR (Computer Physics Communications 174 669 (2006)) and //
+// SHARE (Computer Physics Communications 167 229 (2005)) collaborations. //
+////////////////////////////////////////////////////////////////////////////////////////////////
- This class is using the particle and decays lists provided by the
- THERMINATOR (Computer Physics Communications 174 669 (2006)) and
- SHARE (Computer Physics Communications 167 229 (2005)) collaborations.
-*/
+#ifndef DECAYCHANNEL_H
+#define DECAYCHANNEL_H
-#ifndef DECAY_CHANNEL
-#define DECAY_CHANNEL
-
-#include "Rtypes.h"
+#include <Rtypes.h>
const Int_t kMaxDaughters = 3;
const Int_t kNonsensePDG = 1000000000;
public:
DecayChannel(); // default constructor
DecayChannel(const DecayChannel ©); // copy constructor
- DecayChannel(Int_t mother, Double_t branching, Int_t nDaughters, Int_t *daughters); // explicit constructor
+ DecayChannel(Int_t mother, Double_t branching, Int_t nDaughters, const Int_t *daughters); // explicit constructor
~DecayChannel() {}; // destructor
void SetMotherPDG(Int_t value) {fMotherPDG = value;}
void SetBranching(Double_t value) {fBranchingRatio = value;}
- void SetDaughters(Int_t *values, Int_t n);
+ void SetDaughters(const Int_t *values, Int_t n);
void AddDaughter(Int_t pdg);
- Int_t GetMotherPDG() {return fMotherPDG;}
- Double_t GetBranching() {return fBranchingRatio;}
- Int_t GetNDaughters() {return fNDaughters;}
- Int_t* GetDaughters() {return fDaughtersPDG;}
+ Int_t GetMotherPDG() const {return fMotherPDG;}
+ Double_t GetBranching() const {return fBranchingRatio;}
+ Int_t GetNDaughters() const {return fNDaughters;}
+ const Int_t* GetDaughters() const {return fDaughtersPDG;}
Int_t GetDaughterPDG(Int_t i); // i --> must be the zero-based index of daughter
private:
- Int_t fMotherPDG;
- Double_t fBranchingRatio;
- Int_t fNDaughters;
- Int_t fDaughtersPDG[kMaxDaughters];
+ Int_t fMotherPDG; // PDG code of the mother particle
+ Double_t fBranchingRatio; // branching ratio
+ Int_t fNDaughters; // number of daughter particles
+ Int_t fDaughtersPDG[kMaxDaughters]; // array with daughters PDG
};
#endif