22 #ifndef ROOT_TAttParticle
23 #define ROOT_TAttParticle
30 class TAttParticle :
public TNamed {
34 Double_t fPDGDecayWidth;
36 TString fParticleType;
40 Double_t fEnergyLimit;
41 Double_t fGranularity;
45 TAttParticle(
const char *name,
const char *title,
46 Double_t Mass, Bool_t Stable,
47 Double_t DecayWidth, Double_t Charge,
const char *Type,
48 Int_t MCnumber, Int_t granularity=90,
49 Double_t LowerCutOff=1.e-5, Double_t HighCutOff=1.e4);
50 virtual ~TAttParticle();
51 static THashList *fgList;
52 static Int_t ConvertISAtoPDG(Int_t isaNumber);
53 static void DefinePDG();
54 virtual Double_t GetCharge()
const {
return fPDGCharge; }
55 virtual Double_t GetEnergyCut()
const {
return fEnergyCut; }
56 virtual Double_t GetEnergyLimit()
const {
return fEnergyLimit; }
57 virtual Double_t GetGranularity()
const {
return fGranularity; }
58 virtual Double_t GetDecayWidth()
const {
return fPDGDecayWidth; }
59 virtual Double_t GetMass()
const {
return fPDGMass; }
60 virtual Int_t GetMCNumber()
const {
return fMCnumberOfPDG; }
61 static TAttParticle *GetParticle(
const char *name);
62 static TAttParticle *GetParticle(Int_t mcnumber);
63 virtual const char *GetParticleType()
const {
return fParticleType.Data(); }
64 virtual Bool_t GetStable()
const {
return fPDGStable; }
65 virtual void Print(Option_t *option=
"")
const ;
66 virtual Double_t SampleMass()
const ;
67 virtual Double_t SampleMass(Double_t widthcut)
const ;
69 ClassDef(TAttParticle,1)