EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FairMultiLinkedData Class Reference

#include <EicRoot/blob/master/base/FairMultiLinkedData.h>

+ Inheritance diagram for FairMultiLinkedData:
+ Collaboration diagram for FairMultiLinkedData:

Public Member Functions

 FairMultiLinkedData ()
 Default constructor.
 
 FairMultiLinkedData (std::set< FairLink > links, Bool_t persistanceCheck=kTRUE)
 Constructor.
 
 FairMultiLinkedData (TString dataType, std::vector< Int_t > links, Int_t fileId=-1, Int_t evtId=-1, Bool_t persistanceCheck=kTRUE, Bool_t bypass=kFALSE, Float_t mult=1.0)
 Constructor.
 
 FairMultiLinkedData (Int_t dataType, std::vector< Int_t > links, Int_t fileId=-1, Int_t evtId=-1, Bool_t persistanceCheck=kTRUE, Bool_t bypass=kFALSE, Float_t mult=1.0)
 Constructor.
 
virtual ~FairMultiLinkedData ()
 
virtual std::set< FairLinkGetLinks () const
 returns stored links as FairLinks
 
virtual Int_t GetNLinks () const
 returns the number of stored links
 
virtual FairLink GetLink (Int_t pos) const
 returns the FairLink at the given position
 
virtual FairMultiLinkedData GetLinksWithType (Int_t type) const
 Gives you a list of links which contain the given type.
 
TObjectGetData (FairLink &myLink)
 Get the TObject the Link is pointing to.
 
virtual Int_t GetDefaultType ()
 
Bool_t GetPersistanceCheck ()
 Returns the value of PersistanceCheck.
 
Int_t GetVerbose ()
 Returns the verbosity level.
 
virtual void SetDefaultType (Int_t type)
 
virtual void SetPersistanceCheck (Bool_t check)
 Controls if a persistance check of a link is done or not.
 
virtual void SetVerbose (Int_t level)
 Sets the verbosity level.
 
virtual void SetLinks (FairMultiLinkedData links, Float_t mult=1.0)
 Sets the links as vector of FairLink.
 
virtual void SetLink (FairLink link, Bool_t bypass=kFALSE, Float_t mult=1.0)
 Sets the Links with a single FairLink.
 
virtual void AddLinks (FairMultiLinkedData links, Float_t mult=1.0)
 Adds a List of FairLinks (FairMultiLinkedData) to fLinks.
 
virtual void AddLink (FairLink link, Bool_t bypass=kFALSE, Float_t mult=1.0)
 Adds a FairLink link at the end of fLinks. If multi is kTRUE a link is allowed more than once otherwise it is stored only once.
 
virtual void InsertLink (FairLink link)
 Inserts a link into the list of links without persistance checking.
 
virtual void AddAllWeights (Double_t weight)
 Adds weight to all Links.
 
virtual void SetAllWeights (Double_t weight)
 Sets a common weight for Links.
 
virtual void MultiplyAllWeights (Double_t weight)
 Multiplies all Links with weight.
 
virtual Bool_t IsLinkInList (FairLink link)
 Test if a given link is in fLinks.
 
virtual Bool_t IsLinkInList (Int_t type, Int_t index)
 Same as IsLinkInList(FairLink) just with type and index given separately.
 
virtual Int_t LinkPosInList (FairLink link)
 returns position of link in fLinks. If it is not in the list -1 is returned
 
virtual Int_t LinkPosInList (Int_t type, Int_t index)
 Same as LinkPosInList(FairLink)
 
virtual void DeleteLink (FairLink link)
 Deletes a link ouf of fLinks.
 
virtual void DeleteLink (Int_t type, Int_t index)
 Deletes a link ouf of fLinks.
 
virtual void Reset ()
 
virtual void ResetLinks ()
 Clears fLinks.
 
void Print (std::ostream &out=std::cout) const
 Output.
 

Protected Member Functions

virtual void SimpleAddLinks (Int_t fileId, Int_t evtId, Int_t dataType, std::vector< Int_t > links, Bool_t bypass, Float_t mult)
 
 ClassDef (FairMultiLinkedData, 3)
 

Protected Attributes

std::set< FairLinkfLinks
 
Bool_t fPersistanceCheck
 
Int_t fVerbose
 
Int_t fDefaultType
 

Friends

std::ostream & operator<< (std::ostream &out, const FairMultiLinkedData &data)
 Output.
 

Detailed Description

FairMultiLinkedData.h

Date
Dec 7, 2009
Author
T.Stockmanns t.sto.nosp@m.ckma.nosp@m.nns@f.nosp@m.z-ju.nosp@m.elich.nosp@m..de

Definition at line 19 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 19 of file FairMultiLinkedData.h

Constructor & Destructor Documentation

FairMultiLinkedData::FairMultiLinkedData ( )

Default constructor.

Definition at line 15 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 15 of file FairMultiLinkedData.cxx

FairMultiLinkedData::FairMultiLinkedData ( std::set< FairLink links,
Bool_t  persistanceCheck = kTRUE 
)

Constructor.

Definition at line 25 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 25 of file FairMultiLinkedData.cxx

FairMultiLinkedData::FairMultiLinkedData ( TString  dataType,
std::vector< Int_t >  links,
Int_t  fileId = -1,
Int_t  evtId = -1,
Bool_t  persistanceCheck = kTRUE,
Bool_t  bypass = kFALSE,
Float_t  mult = 1.0 
)

Constructor.

Definition at line 34 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 34 of file FairMultiLinkedData.cxx

References FairRootManager::Instance(), and SimpleAddLinks().

+ Here is the call graph for this function:

FairMultiLinkedData::FairMultiLinkedData ( Int_t  dataType,
std::vector< Int_t >  links,
Int_t  fileId = -1,
Int_t  evtId = -1,
Bool_t  persistanceCheck = kTRUE,
Bool_t  bypass = kFALSE,
Float_t  mult = 1.0 
)

Constructor.

Definition at line 46 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 46 of file FairMultiLinkedData.cxx

References SimpleAddLinks().

+ Here is the call graph for this function:

virtual FairMultiLinkedData::~FairMultiLinkedData ( )
inlinevirtual

Definition at line 27 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 27 of file FairMultiLinkedData.h

Member Function Documentation

void FairMultiLinkedData::AddAllWeights ( Double_t  weight)
virtual

Adds weight to all Links.

Definition at line 241 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 241 of file FairMultiLinkedData.cxx

References fLinks, FairLink::GetWeight(), it, and FairLink::SetWeight().

Referenced by CbmMCMatch::GetNextStage().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FairMultiLinkedData::AddLink ( FairLink  link,
Bool_t  bypass = kFALSE,
Float_t  mult = 1.0 
)
inlinevirtual

Adds a FairLink link at the end of fLinks. If multi is kTRUE a link is allowed more than once otherwise it is stored only once.

Definition at line 102 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 102 of file FairMultiLinkedData.cxx

References AddLinks(), FairRootManager::CheckBranch(), fPersistanceCheck, fVerbose, FairRootManager::GetBranchId(), FairRootManager::GetBranchName(), FairLink::GetIndex(), GetNLinks(), FairRootManager::GetObject(), FairLink::GetType(), FairLink::GetWeight(), InsertLink(), FairRootManager::Instance(), and FairLink::SetWeight().

Referenced by PndTrackCand::AddHit(), AddLinks(), CbmMCMatch::AddToFinalStage(), PndPidCorrelator::ConstructChargedCandidate(), PndTrackArrayMerger::Exec(), CbmMCMatch::FindStagesPointingToLinks(), CbmMCMatch::GetMCInfoForwardSingle(), CbmMCObject::PosInList(), CbmMCObject::SetEntry(), SetLink(), and SimpleAddLinks().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FairMultiLinkedData::AddLinks ( FairMultiLinkedData  links,
Float_t  mult = 1.0 
)
virtual

Adds a List of FairLinks (FairMultiLinkedData) to fLinks.

Definition at line 88 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 88 of file FairMultiLinkedData.cxx

References AddLink(), GetLinks(), FairLink::GetWeight(), it, and FairLink::SetWeight().

Referenced by AddLink(), CbmMCMatch::FindLinksToStage(), CbmMCMatch::FindStagesPointingToLink(), and CbmMCObject::GetLinksWithType().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

FairMultiLinkedData::ClassDef ( FairMultiLinkedData  ,
 
)
protected
virtual void FairMultiLinkedData::DeleteLink ( FairLink  link)
inlinevirtual

Deletes a link ouf of fLinks.

Definition at line 61 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 61 of file FairMultiLinkedData.h

References DeleteLink(), FairLink::GetIndex(), and FairLink::GetType().

Referenced by DeleteLink().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FairMultiLinkedData::DeleteLink ( Int_t  type,
Int_t  index 
)
virtual

Deletes a link ouf of fLinks.

Definition at line 193 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 193 of file FairMultiLinkedData.cxx

TObject * FairMultiLinkedData::GetData ( FairLink myLink)

Get the TObject the Link is pointing to.

Definition at line 214 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 214 of file FairMultiLinkedData.cxx

References FairRootManager::CheckBranch(), FairRootManager::GetBranchName(), FairLink::GetIndex(), FairRootManager::GetObject(), FairLink::GetType(), and FairRootManager::Instance().

+ Here is the call graph for this function:

virtual Int_t FairMultiLinkedData::GetDefaultType ( )
inlinevirtual

Definition at line 34 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 34 of file FairMultiLinkedData.h

References fDefaultType.

FairLink FairMultiLinkedData::GetLink ( Int_t  pos) const
virtual

returns the FairLink at the given position

Definition at line 57 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 57 of file FairMultiLinkedData.cxx

References fLinks, it, and pos().

Referenced by PndTrackCand::CalcTimeStamp(), CbmMCMatch::CreateArtificialStage(), PndTrackArrayMerger::Exec(), CbmMCMatch::FindStagesPointingToLinks(), CbmMCMatch::GetNextStage(), and Print().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual std::set<FairLink> FairMultiLinkedData::GetLinks ( ) const
inlinevirtual

returns stored links as FairLinks

Definition at line 29 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 29 of file FairMultiLinkedData.h

References fLinks.

Referenced by AddLinks(), CbmMCObject::SetEntry(), and SetLinks().

+ Here is the caller graph for this function:

FairMultiLinkedData FairMultiLinkedData::GetLinksWithType ( Int_t  type) const
virtual

Gives you a list of links which contain the given type.

Definition at line 202 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 202 of file FairMultiLinkedData.cxx

References fLinks, InsertLink(), and it.

+ Here is the call graph for this function:

virtual Int_t FairMultiLinkedData::GetNLinks ( ) const
inlinevirtual

returns the number of stored links

Definition at line 30 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 30 of file FairMultiLinkedData.h

References fLinks.

Referenced by AddLink(), PndTrackCand::CalcTimeStamp(), CbmMCMatch::CreateArtificialStage(), PndTrackArrayMerger::Exec(), CbmMCMatch::FindStagesPointingToLinks(), CbmMCMatch::GetNextStage(), and Print().

+ Here is the caller graph for this function:

Bool_t FairMultiLinkedData::GetPersistanceCheck ( )
inline

Returns the value of PersistanceCheck.

Definition at line 35 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 35 of file FairMultiLinkedData.h

References fPersistanceCheck.

Int_t FairMultiLinkedData::GetVerbose ( )
inline

Returns the verbosity level.

Definition at line 36 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 36 of file FairMultiLinkedData.h

References fVerbose.

void FairMultiLinkedData::InsertLink ( FairLink  link)
virtual

Inserts a link into the list of links without persistance checking.

Definition at line 161 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 161 of file FairMultiLinkedData.cxx

References FairLink::AddWeight(), fLinks, FairLink::GetWeight(), and it.

Referenced by AddLink(), and GetLinksWithType().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual Bool_t FairMultiLinkedData::IsLinkInList ( FairLink  link)
inlinevirtual

Test if a given link is in fLinks.

Definition at line 56 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 56 of file FairMultiLinkedData.h

References FairLink::GetIndex(), FairLink::GetType(), and IsLinkInList().

Referenced by IsLinkInList().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool_t FairMultiLinkedData::IsLinkInList ( Int_t  type,
Int_t  index 
)
virtual

Same as IsLinkInList(FairLink) just with type and index given separately.

Definition at line 176 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 176 of file FairMultiLinkedData.cxx

References LinkPosInList().

+ Here is the call graph for this function:

virtual Int_t FairMultiLinkedData::LinkPosInList ( FairLink  link)
inlinevirtual

returns position of link in fLinks. If it is not in the list -1 is returned

Definition at line 58 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 58 of file FairMultiLinkedData.h

References FairLink::GetIndex(), FairLink::GetType(), and LinkPosInList().

Referenced by IsLinkInList(), and LinkPosInList().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Int_t FairMultiLinkedData::LinkPosInList ( Int_t  type,
Int_t  index 
)
virtual

Same as LinkPosInList(FairLink)

Definition at line 184 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 184 of file FairMultiLinkedData.cxx

References fLinks, and it.

void FairMultiLinkedData::MultiplyAllWeights ( Double_t  weight)
virtual

Multiplies all Links with weight.

Definition at line 252 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 252 of file FairMultiLinkedData.cxx

References fLinks, FairLink::GetWeight(), it, and FairLink::SetWeight().

Referenced by CbmMCMatch::GetMCInfoBackwardSingle(), CbmMCMatch::GetNextStage(), and SetLinks().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FairMultiLinkedData::Print ( std::ostream &  out = std::cout) const
inline

Output.

Definition at line 68 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 68 of file FairMultiLinkedData.h

References GetLink(), GetNLinks(), and FairLink::Print().

Referenced by FairTimeStamp::Print().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual void FairMultiLinkedData::Reset ( )
inlinevirtual

Definition at line 64 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 64 of file FairMultiLinkedData.h

References ResetLinks().

Referenced by CbmMCMatch::ClearFinalStage(), and PndTrackArrayMerger::Exec().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual void FairMultiLinkedData::ResetLinks ( )
inlinevirtual

Clears fLinks.

Reimplemented in PndTrackCand.

Definition at line 65 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 65 of file FairMultiLinkedData.h

References fLinks.

Referenced by Reset(), and PndTrackCand::ResetLinks().

+ Here is the caller graph for this function:

void FairMultiLinkedData::SetAllWeights ( Double_t  weight)
virtual

Sets a common weight for Links.

Definition at line 230 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 230 of file FairMultiLinkedData.cxx

References fLinks, it, and FairLink::SetWeight().

+ Here is the call graph for this function:

virtual void FairMultiLinkedData::SetDefaultType ( Int_t  type)
inlinevirtual

Definition at line 37 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 37 of file FairMultiLinkedData.h

References fDefaultType.

void FairMultiLinkedData::SetLink ( FairLink  link,
Bool_t  bypass = kFALSE,
Float_t  mult = 1.0 
)
inlinevirtual

Sets the Links with a single FairLink.

Definition at line 79 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 79 of file FairMultiLinkedData.cxx

References AddLink(), fLinks, FairLink::GetWeight(), and FairLink::SetWeight().

Referenced by CbmMCMatch::CreateArtificialStage(), EicTrackingDigiHit::EicTrackingDigiHit(), PndTrack::PndTrack(), PndTrack::SetRefIndex(), CbmStack::UpdateTrackIndex(), and PndStack::UpdateTrackIndex().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void FairMultiLinkedData::SetLinks ( FairMultiLinkedData  links,
Float_t  mult = 1.0 
)
virtual

Sets the links as vector of FairLink.

Parameters
typeas Int_t gives one type of source data for all indices
linksas vector<Int_t> gives the vector of indices at which position in the TClonesArray the source data is stored
typeas vector<Int_t> gives the type of source data (TClonesArray)
linksas vector<Int_t> gives the vector of indices at which position in the TClonesArray the source data is stored

Definition at line 69 of file FairMultiLinkedData.cxx.

View newest version in sPHENIX GitHub at line 69 of file FairMultiLinkedData.cxx

References fLinks, GetLinks(), and MultiplyAllWeights().

Referenced by CbmMCMatch::GetMCInfoBackwardSingle(), and CbmMCMatch::GetMCInfoForwardSingle().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual void FairMultiLinkedData::SetPersistanceCheck ( Bool_t  check)
inlinevirtual

Controls if a persistance check of a link is done or not.

Definition at line 38 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 38 of file FairMultiLinkedData.h

References fPersistanceCheck.

virtual void FairMultiLinkedData::SetVerbose ( Int_t  level)
inlinevirtual

Sets the verbosity level.

Definition at line 39 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 39 of file FairMultiLinkedData.h

References fVerbose.

virtual void FairMultiLinkedData::SimpleAddLinks ( Int_t  fileId,
Int_t  evtId,
Int_t  dataType,
std::vector< Int_t >  links,
Bool_t  bypass,
Float_t  mult 
)
inlineprotectedvirtual

Definition at line 87 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 87 of file FairMultiLinkedData.h

References AddLink().

Referenced by FairMultiLinkedData().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  out,
const FairMultiLinkedData data 
)
friend

Output.

Definition at line 77 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 77 of file FairMultiLinkedData.h

Member Data Documentation

Int_t FairMultiLinkedData::fDefaultType
protected

Definition at line 92 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 92 of file FairMultiLinkedData.h

Referenced by GetDefaultType(), and SetDefaultType().

std::set<FairLink> FairMultiLinkedData::fLinks
protected
Bool_t FairMultiLinkedData::fPersistanceCheck
protected

Definition at line 84 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 84 of file FairMultiLinkedData.h

Referenced by AddLink(), GetPersistanceCheck(), and SetPersistanceCheck().

Int_t FairMultiLinkedData::fVerbose
protected

Definition at line 85 of file FairMultiLinkedData.h.

View newest version in sPHENIX GitHub at line 85 of file FairMultiLinkedData.h

Referenced by AddLink(), GetVerbose(), and SetVerbose().


The documentation for this class was generated from the following files: