]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/RESONANCES/AliRsnPairDef.h
removed obsolete commented methods
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnPairDef.h
1 //
2 // Class AliRsnPairDef
3 //
4 // Defines a decay channel for a resonance,
5 // resulting in a specified PDG code for the mother,
6 // and the particle type for the daughters, defined
7 // according to the internal PID format of the package
8 //
9 // author: A. Pulvirenti (alberto.pulvirenti@ct.infn.it)
10 //
11
12 #ifndef ALIRSNPAIRDEF_H
13 #define ALIRSNPAIRDEF_H
14
15 #include <TString.h>
16
17 #include "AliPID.h"
18
19 class AliRsnDaughter;
20
21 class AliRsnPairDef : public TObject
22 {
23   public:
24
25     AliRsnPairDef();
26     AliRsnPairDef(Char_t sign1, AliPID::EParticleType type1,
27                   Char_t sign2, AliPID::EParticleType type2, Int_t motherPDG = 0);
28     AliRsnPairDef(AliPID::EParticleType type1, Char_t sign1,
29                   AliPID::EParticleType type2, Char_t sign2, Int_t motherPDG = 0);
30     AliRsnPairDef(const AliRsnPairDef &copy);
31     const AliRsnPairDef& operator= (const AliRsnPairDef &copy);
32     virtual ~AliRsnPairDef() { }
33
34     // getters
35     Char_t                GetCharge(Int_t i) const {if (i>=0&&i<2) return fCharge[i]; else return 0;}
36     AliPID::EParticleType GetType(Int_t i) const {if (i>=0&&i<2) return fType[i]; else return AliPID::kUnknown;}
37     Double_t              GetMass(Int_t i) const {if (i>=0&&i<2) return fMass[i]; else return 0.0;}
38     Int_t                 GetMotherPDG() const {return fMotherPDG;}
39     TString               GetPairName();
40
41     // setters
42     Bool_t SetPairElement(Int_t i, Char_t charge, AliPID::EParticleType pid);
43     Bool_t SetPair(Char_t ch1, AliPID::EParticleType pid1, Char_t ch2, AliPID::EParticleType pid2);
44     void   SetMotherPDG(Int_t pdg) {fMotherPDG = pdg;}
45
46     // pair information methods
47     Bool_t IsLikeSign() {return (fCharge[0] == fCharge[1]);}
48     Bool_t HasEqualTypes() {return (fType[0] == fType[1]);}
49
50   private:
51
52     // pair parameters
53     Int_t                  fMotherPDG;  // PDG code of true mother (if known)
54     Double_t               fMass[2];    // mass of particles
55     Char_t                 fCharge[2];  // charge of particles
56     AliPID::EParticleType  fType[2];    // PID of particles
57
58     // ROOT dictionary
59     ClassDef(AliRsnPairDef, 1)
60 };
61
62 #endif