00001 // @(#)root/eg:$Id: TDecayChannel.h 20882 2007-11-19 11:31:26Z rdm $ 00002 // Author: P.Murat 15/02/2001 00003 00004 /************************************************************************* 00005 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * 00006 * All rights reserved. * 00007 * * 00008 * For the licensing terms see $ROOTSYS/LICENSE. * 00009 * For the list of contributors see $ROOTSYS/README/CREDITS. * 00010 *************************************************************************/ 00011 00012 //----------------------------------------------------------------------------- 00013 // Feb 15 2001 P.Murat: description of the decay channel 00014 // -------------------- 00015 // - matrix element for the decay is not defined yet 00016 //----------------------------------------------------------------------------- 00017 #ifndef ROOT_TDecayChannel 00018 #define ROOT_TDecayChannel 00019 00020 #ifndef ROOT_TObject 00021 #include "TObject.h" 00022 #endif 00023 #ifndef ROOT_TArrayI 00024 #include "TArrayI.h" 00025 #endif 00026 00027 00028 class TDecayChannel: public TObject{ 00029 protected: 00030 Int_t fNumber; // channel number 00031 Int_t fMatrixElementCode; // matrix element for this decay mode 00032 Double_t fBranchingRatio; // branching ratio ( < 1) 00033 TArrayI fDaughters; // PDG codes of the daughters 00034 public: 00035 // ****** constructors and destructor 00036 TDecayChannel(); 00037 TDecayChannel(Int_t Number, 00038 Int_t MatrixElementCode, 00039 Double_t BranchingRatio, 00040 Int_t NDaughters, 00041 Int_t* DaughterPdgCode); 00042 00043 virtual ~TDecayChannel(); 00044 // ****** accessors 00045 00046 Int_t Number () { return fNumber; } 00047 Int_t MatrixElementCode () { return fMatrixElementCode; } 00048 Int_t NDaughters () { return fDaughters.fN; } 00049 Double_t BranchingRatio () { return fBranchingRatio; } 00050 Int_t DaughterPdgCode(Int_t i) { return fDaughters.fArray[i]; } 00051 00052 ClassDef(TDecayChannel,1) // Class describing a particle decay channel 00053 }; 00054 00055 #endif