9#ifndef CBMMCDATAARRAY_H
10#define CBMMCDATAARRAY_H
15#include <RtypesCore.h>
67 TObject*
Get(Int_t fileNumber, Int_t eventNumber, Int_t index);
74 Int_t
Size(Int_t fileNumber, Int_t eventNumber);
96 CbmMCDataArray(
const char* branchName,
const std::vector<std::list<TString>>& fileList);
119 void AddFriend(Int_t chainNum1, Int_t chainNum2);
128 TObject*
LegacyGet(Int_t fileNumber, Int_t eventNumber, Int_t index);
138 std::vector<Long64_t>
fN;
143 std::vector<std::map<Int_t, TClonesArray*>>
fArrays;
Access to a MC data branch for time-based analysis.
TObject * Get(const CbmLink *lnk)
CbmMCDataArray(const CbmMCDataArray &)
TObject * LegacyGet(Int_t fileNumber, Int_t eventNumber, Int_t index)
std::vector< std::map< Int_t, TClonesArray * > > fArrays
Number of entries in chains.
Int_t Size(const CbmLink &lnk)
virtual ~CbmMCDataArray()
TObject * Get(const CbmLink &lnk)
Int_t fSize
Name of the data branch.
TString fBranchName
Pointer to TClonesArray for legacy mode.
ClassDef(CbmMCDataArray, 1)
std::vector< TChain * > fChains
Number of input file lists (one per source)
Int_t Size(Int_t fileNumber, Int_t eventNumber)
std::vector< Long64_t > fN
Data arrays from chains (one per input source)
CbmMCDataArray & operator=(const CbmMCDataArray &)
void AddFriend(Int_t chainNum1, Int_t chainNum2)
std::vector< TClonesArray * > fTArr
Arrays of chains (one per input source)
Int_t Size(const CbmLink *lnk)
TClonesArray * fLegacyArray
If true, run in legacy mode.
Task class creating and managing CbmMCDataArray objects.