Pluto » PLUTO » PDecayManager

class PDecayManager: public TObject

Function Members (Methods)

public:
virtual~PDecayManager()
voidTObject::AbstractMethod(const char* method) const
Bool_tAddBulk(PBulkInterface* mybulk)
voidAddChannel(Int_t id, PDecayChannel* n)
voidAddChannel(PParticle* p, PDecayChannel* n)
voidAddChannel(const char* p, PDecayChannel* n)
Bool_tAddFileOutput(PFileOutput* file)
Bool_tAddPrologueBulk(PBulkInterface* mybulk)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
ULong_tTObject::CheckedHash()
static TClass*Class()
virtual const char*TObject::ClassName() const
voidClear(Int_t id)
voidClear(PParticle* p)
virtual voidClear(const Option_t* delme = __null)
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
voidDisableHelicityAngle()
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
Bool_tDo(const char* command)
Bool_tDo(TH1F* f, char* command)
Bool_tDo(TH2F* f, char* command)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
PDecayChannel*GetChannel(Int_t id) const
PDecayChannel*GetChannel(PParticle* p) const
PDecayChannel*GetChannel(char* n) const
PProjector*GetCurrentProjector()
Double_tGetCurrentWeight()
PDistributionManager*GetDistributionManager()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
PReaction*GetNextReaction(const char* name, int f0 = 0, int f1 = 0, int f2 = 0, int f3 = 0, TTree* tt = __null)
PReaction*GetNextReaction(int wf, const char* name, int f0 = 0, int f1 = 0, int f2 = 0, int f3 = 0, TTree* tt = __null)
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
Bool_tTObject::HasInconsistentHash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
voidInitReaction(PParticle* start, PDecayChannel* c1 = __null)
Bool_tInput(TNtuple* f)
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
Int_tLoop(int num, int wf, const char* name, int f0 = 0, int f1 = 0, int f2 = 0, int f3 = 0, int rf = 0)
Int_tloop(int num, int wf, const char* name, int f0 = 0, int f1 = 0, int f2 = 0, int f3 = 0, int rf = 0)
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
voidMyClear(char*)
voidMyPrint() const
voidMyPrint(char* name) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
PDecayManager&operator=(const PDecayManager&)
Bool_tOutput(TNtuple* f, char* command = (char *)"")
virtual voidTObject::Paint(Option_t* option = "")
PDecayManager()
PDecayManager(const PDecayManager&)
virtual voidTObject::Pop()
virtual voidPrint(const Option_t* delme = __null) const
voidPrint(Int_t id) const
voidPrint(PParticle* p) const
voidPrintReactionList() const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetDecayAll(Float_t tau = 1.)
voidSetDefault(Int_t id, Int_t recursive = 0)
voidSetDefault(PParticle* p, Int_t recursive = 0)
voidSetDefault(const char* p, Int_t recursive = 0)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetHGeant(Int_t fH)
voidSetMaxFileSize(Int_t bytes)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetPythia(TPythia6* p)
voidSetTrigCond(Int_t n)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetUserSelection(void* f)
voidSetUserSelection(Int_t(*)(PParticle*) f)
voidSetVerbose(Int_t v = 1)
voidSetWriteIndex(Bool_t flag)
virtual voidShowMembers(TMemberInspector& insp) const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
private:
virtual Bool_tCheckTObjectHashConsistency() const
voidConstructPChannel(PParticle* p, PDecayChannel* c1, PReactionList* RL, Int_t CopyFlag = 0)
const char*GetName(Int_t id) const
voidPrintChain(PParticle* p, PChannel** l, Int_t c, ostream& os) const
voidPrintReactionListEntry(PReactionList*, ostream& os) const

Data Members

public:
static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TObject::EStatusBitsTObject::kHasUUID
static TObject::(anonymous)TObject::kInconsistent
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EDeprecatedStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
private:
PReaction*CurrentReactionpointer to currently used PReaction
PNextList<PReactionList>*CurrentReactionListPointerpointer to the currently active decay branch
Int_tCurrentReactionNumberserial number of currently active reaction
Double_tCurrentWeightweight of currently active reaction
PChannel**ListForReactionused for PReaction
Int_tNumberOfReactionsnb of reactions in ReactionList
PNextList<PReactionList>*ReactionListcollection of all possible decay branches
PNextList<PChannel>*UsedChannelssame for used channels
PNextList<PParticle*>*UsedParticleArrayssame for particle arrays
PNextList<PParticle>*UsedParticlescollection of used particles to delete them later on
PBulkInterface*bulk[5]
intbulkdecay_pos
PProjector*current_projector
Int_tdecaychannel_paramparam for all known particle decay modes
Bool_tfHGeantset if PLUTO runs in HGeant
TPythia6*fPythiapointer to Pythia object
Bool_tfWriteIndexwrite parent indices out, if set
intfileoutput_pos
PFileOutput*files[5]
Int_tmaxFileSize
Int_tnTrigCondtrigger multiplicity
PDistributionManager*pdist
PBulkInterface*pro_bulk[5]
intpro_bulkdecay_pos
Float_ttauMax
void*userSelectionselection function
Int_tverboseverbose flag (0/1)

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

void ConstructPChannel(PParticle* p, PDecayChannel* c1, PReactionList* RL, Int_t CopyFlag = 0)
 ContructPChannel is used internally to construct a new PChannel from
 parent particle *p and the decay channel *c1 and store it in the
 ToDo stack of PReactionList *RL.
 If CopyFlag is set, the particle *p is copied before using. This
 is necessary for the top channel.
void PrintChain(PParticle* p, PChannel** l, Int_t c, ostream& os) const
 utility function for PrintReactionList
const char * GetName(Int_t id) const
PDecayManager()
~PDecayManager()
void SetVerbose(Int_t v = 1)
void AddChannel(Int_t id, PDecayChannel* n)
 add/assign/get a specific decay channel to one particle either by
 particle id, by an instance of PParticle or just by name
void AddChannel(PParticle* p, PDecayChannel* n)
void AddChannel(const char* p, PDecayChannel* n)
PDecayChannel * GetChannel(Int_t id) const
PDecayChannel * GetChannel(PParticle* p) const
PDecayChannel * GetChannel(char* n) const
void SetDefault(Int_t id, Int_t recursive = 0)
 set the default decay channel for this particle (according to PDG)
void SetDefault(PParticle* p, Int_t recursive = 0)
void SetDefault(const char* p, Int_t recursive = 0)
void Clear(Int_t id)
 clear the channel
void Clear(PParticle* p)
void MyClear(char* )
void Clear(const Option_t* delme = __null)
void InitReaction(PParticle* start, PDecayChannel* c1 = __null)
 by specifying one start particle InitReaction does look for all
 possible decay chains and lists them in ReactionList. The initial
 decay channel can be given either by a special decay channel or,
 if it is a standard particle, the standard decay channel can be used.
PReaction * GetNextReaction(int wf, const char* name, int f0 = 0, int f1 = 0, int f2 = 0, int f3 = 0, TTree* tt = __null)
 GetNextReaction calls the constructor of PReaction for the next
 reaction in ReactionList. The given parameters are forwarded
 to the constructor. If wf is set, the weight stored in the reaction
 list is transfered to the initial particle; each reaction is simulated
 with the same nb. of events, product particles have a proper weight set.
 The second form is obsolete (and implies wf=0)
Int_t Loop(int num, int wf, const char* name, int f0 = 0, int f1 = 0, int f2 = 0, int f3 = 0, int rf = 0)
 loop does a loop over all possible reaction channels and write
 the output in a file name.root. The arguments are the same as
 in GetNextReaction.
Double_t GetCurrentWeight()
 GetCurrentWeight provides the weight factor of the actual
 reaction
void Print(const Option_t* delme = __null) const
 prints out the decay channel list
MyPrint((char*) delme)
else MyPrint()
void Print(Int_t id) const
 print out information for one specific particle
void Print(PParticle* p) const
void SetHGeant(Int_t fH)
void SetUserSelection(void* f)
void SetUserSelection(Int_t(*)(PParticle*) f)
void SetTrigCond(Int_t n)
void PrintReactionList() const
 visualize the decay chains
void SetPythia(TPythia6* p)
void SetMaxFileSize(Int_t bytes)
void SetDecayAll(Float_t tau = 1.)
void DisableHelicityAngle(void)
PDistributionManager * GetDistributionManager(void)
void SetWriteIndex(Bool_t flag)
Bool_t AddFileOutput(PFileOutput* file)
Bool_t AddBulk(PBulkInterface* mybulk)
These interfaces are analogue to PReaction:
Bool_t AddPrologueBulk(PBulkInterface* mybulk)
Bool_t Do(const char* command)
return GetCurrentProjector()
Bool_t Do(TH1F* f, char* command)
Bool_t Do(TH2F* f, char* command)
Bool_t Output(TNtuple* f, char* command = (char *)"")
Bool_t Input(TNtuple* f)