10#include <FairSource.h>
60 virtual Bool_t
Init();
91 std::unique_ptr<cbm::algo::RecoResultsInputArchive>
fArchive =
nullptr;
119 template<
typename TVecobj>
120 Bool_t
RegisterVector(FairRootManager* ioman, std::vector<TVecobj>*& vec);
122 template<
typename TVecobj>
123 typename std::enable_if<std::is_member_function_pointer<
decltype(&TVecobj::GetTime)>::value,
void>::type
126 if (vec ==
nullptr)
return;
127 std::sort(vec->begin(), vec->end(),
128 [](
const TVecobj& a,
const TVecobj& b) ->
bool { return a.GetTime() < b.GetTime(); });
Source class for reading from files resulting from online processing (containing raw Digis)
CbmSourceDigiTimeslice(const CbmSourceDigiTimeslice &)=delete
Copy constructor - not implemented.
CbmSourceDigiTimeslice & operator=(const CbmSourceDigiTimeslice &)=delete
Assignment operator - not implemented.
std::vector< CbmStsDigi > * fStsDigis
std::vector< CbmBmonDigi > * fBmonDigis
Source_Type fSourceType
type of source that is currently used
virtual void Close()
Close source after end of run.
virtual ~CbmSourceDigiTimeslice()
Destructor.
virtual void SetParUnpackers()
Set unpacker parameters (forced by base class, not relevant here)
virtual Bool_t InitUnpackers()
Initialise unpackers (forced by base class, not relevant here)
CbmSourceDigiTimeslice(const char *fileName="")
Constructor.
Bool_t RegisterVector(FairRootManager *ioman, std::vector< TVecobj > *&vec)
std::string fInputFileName
std::vector< CbmTofDigi > * fTofDigis
Bool_t SpecifyRunId()
Set Run ID (forced by base class, not relevant here)
Int_t ReadEvent(UInt_t=0)
Read one time slice from file.
std::enable_if< std::is_member_function_pointer< decltype(&TVecobj::GetTime)>::value, void >::type Timesort(std::vector< TVecobj > *vec=nullptr)
void SetSourceType(Source_Type type)
Set the Source Type.
virtual Bool_t ReInitUnpackers()
Re-Initialise unpackers (forced by base class, not relevant here)
std::vector< CbmMuchDigi > * fMuchDigis
std::vector< CbmRichDigi > * fRichDigis
virtual void Reset()
Reset (forced by base class, not relevant here)
std::vector< CbmTrdDigi > * fTrdDigis
CbmTsEventHeader * fTsEventHeader
CbmTimeSlice * fTimeslice
virtual Bool_t Init()
Initialisation.
virtual Source_Type GetSourceType()
Source type.
std::unique_ptr< cbm::algo::RecoResultsInputArchive > fArchive
Bookkeeping of time-slice content.