2 // Class AliRsnDaughterDef
4 // Defines some requirements to select a good candidate daughter for a resonance
5 // among all available objects presend in each event (tracks, V0s, etc. ...).
7 // -- track type (charged track, V0, cascade)
9 // -- track PID type and related mass (only for charged)
11 // author: A. Pulvirenti (alberto.pulvirenti@ct.infn.it)
14 #ifndef ALIRSNDAUGHTERDEF_H
15 #define ALIRSNDAUGHTERDEF_H
18 #include "AliRsnDaughter.h"
20 class AliRsnDaughterDef : public TObject {
24 AliRsnDaughterDef(AliPID::EParticleType type, Char_t sign);
25 AliRsnDaughterDef(const AliRsnDaughterDef ©);
26 const AliRsnDaughterDef& operator= (const AliRsnDaughterDef ©);
27 virtual ~AliRsnDaughterDef() { }
30 Double_t GetMass() const {return fMass;}
31 Char_t GetCharge() const {return fCharge;}
32 Short_t GetChargeShort() const {if (fCharge == '+') return 1; else if (fCharge == '-') return -1; else return 0;}
33 AliPID::EParticleType GetPID() const {return fPID;}
34 AliRsnDaughter::ERefType GetDaughterType() const {return fDaughterType;}
35 const char* GetName() const {return Form("%s%c", AliPID::ParticleShortName(fPID), fCharge);}
38 Bool_t SetDaughter(AliPID::EParticleType pid, Char_t charge);
41 Bool_t MatchesDaughter(AliRsnDaughter *daughter, Bool_t truePID = kFALSE);
45 Double_t fMass; // mass of particles
46 Char_t fCharge; // charge of particles
47 AliPID::EParticleType fPID; // PID of particles
48 AliRsnDaughter::ERefType fDaughterType; // object type (track/V0)
51 ClassDef(AliRsnDaughterDef, 1)