15 #ifndef FAIRMCOBJECT_H_
16 #define FAIRMCOBJECT_H_
54 TObject::operator=(from);
56 fStageId = from.fStageId;
65 void SetEntry(std::vector<Int_t> type, std::vector<Int_t> link,
int index);
69 void SetStage(std::vector<FairMCEntry> stage) { fStage = stage; }
74 FairLink GetSingleLink(
int entryIndex,
int linkIndex)
const {
return fStage.at(entryIndex).GetLink(linkIndex); }
81 int GetNLinks(
int entryIndex)
const {
return fStage.at(entryIndex).GetNLinks(); }
100 virtual void PrintInfo(std::ostream& out = std::cout) { out << *
this; }
112 for (
unsigned int i = 0; i < stages.size(); i++) {
115 stages[i].PrintInfo(out);
123 void AdoptSize(
int index);
124 std::vector<FairMCEntry> fStage;
FairMultiLinkedData PosInList(std::pair< int, int > link)
FairMultiLinkedData GetLinksWithType(Int_t type)
void RemoveType(Int_t type)
FairMCObject(const FairMCObject &obj)
virtual void PrintInfo(std::ostream &out=std::cout)
std::vector< FairMCEntry > GetEntryVector() const
friend std::ostream & operator<<(std::ostream &out, const FairMCObject &obj)
void SetLink(FairLink link, int index)
FairMCEntry GetEntry(int index) const
FairMCObject & operator=(const FairMCObject &from)
virtual void AddLinks(FairMultiLinkedData links, Float_t mult=1.0)
Adds a List of FairLinks (FairMultiLinkedData) to fLinks.
virtual void ClearEntries()
void AddLink(FairLink link, int index)
FairMCObject(Int_t type, std::vector< FairMCEntry > stage)
FairMCEntry GetMCLink(Int_t index)
int GetNLinks(int entryIndex) const
void SetStageId(Int_t type)
Int_t GetStageId(void) const
void SetStage(std::vector< FairMCEntry > stage)
void SetEntry(std::vector< Int_t > type, std::vector< Int_t > link, int index)
FairLink GetSingleLink(int entryIndex, int linkIndex) const