12#ifndef CBMMCBM2018SOURCE_H
13#define CBMMCBM2018SOURCE_H
17#include "MicrosliceDescriptor.hpp"
18#include "Timeslice.hpp"
19#include "TimesliceSource.hpp"
21#include "FairSource.h"
24#include "TObjString.h"
25#include "TStopwatch.h"
30#include <unordered_set>
73 fUnpackers.insert(std::pair<Int_t, CbmMcbmUnpack*>(flibId, unpacker));
120 std::multimap<Int_t, CbmMcbmUnpack*>
122 std::unordered_set<CbmMcbmUnpack*>
147 std::unique_ptr<fles::TimesliceSource>
fSource;
TProfile * fHistoMissedTSEvo
TClonesArray * fTimeSliceMetaDataArray
If ON the output TClonesArray of meta-data is written to disk.
void PrintMicroSliceDescriptor(const fles::MicrosliceDescriptor &mdsc)
std::vector< ULong64_t > fvuSpillBreakMidTs
void SetHostName(TString name)
virtual void SetParUnpackers()
virtual Bool_t InitUnpackers()
void AddFile(const char *name)
void LoadTsListSpillBreakBegin(std::vector< ULong64_t > vTsBeg)
Source_Type GetSourceType()
std::unique_ptr< fles::TimesliceSource > fSource
std::vector< ULong64_t > fvuSpillBreakEndTs
void SetFileName(TString name)
void SetSubscriberHwm(UInt_t val=1)
virtual Bool_t ReInitUnpackers()
virtual ~CbmMcbm2018Source()
void UnpackSingleSpill(Int_t iSpillIdx, UInt_t uSpillStart=1)
UInt_t fTSNumber
List of all unpackers for which at least one matching container was found.
CbmMcbm2018Source(const CbmMcbm2018Source &source)=delete
void UnpackSelectSpills(Int_t iSpillIdxStart, Int_t iSpillIdxStop, UInt_t uSpillStart=1)
CbmMcbm2018Source & operator=(const CbmMcbm2018Source &)=delete
Int_t fiUnpSpillIdxStop
>= 0 means unpack only from this spill
void SetDataReductionMuch(UInt_t uTsReduction=15)
ULong64_t fTSOverlappLength
UInt_t GetNofTSSinceLastTS()
void SetInputDir(TString name)
UInt_t fuSpillBegTs
0 = Break begin, 1 = Break middle, 2 = Break end
TList fInputFileList
List of input files.
void AddUnpacker(CbmMcbmUnpack *unpacker, Int_t flibId, ECbmModuleId)
void LoadTsListSpillBreakMiddle(std::vector< ULong64_t > vTsMid)
void LoadTsListSpillBreakEnd(std::vector< ULong64_t > vTsEnd)
std::multimap< Int_t, CbmMcbmUnpack * > fUnpackers
std::unordered_set< CbmMcbmUnpack * > fUnpackersToRun
List pairs of system ID and unpacker pointer (unpacker can appear multiple times)
Bool_t CheckTimeslice(const fles::Timeslice &ts)
void SetWriteOutputFlag(Bool_t bFlagIn)
Bool_t fbWriteOutput
Output ClonesArray.
UInt_t fuFlagSpillStart
>= 0 means unpack only up to this spill (included)
std::vector< ULong64_t > fvuSpillBreakBegTs
virtual Bool_t SpecifyRunId()