Go to the documentation of this file.
7 #ifndef CbmMcbm2018UnpackerAlgoRich_H
8 #define CbmMcbm2018UnpackerAlgoRich_H
27 #define RISINGEDGEID 1
28 #define FALLINGEDGEID 0
50 virtual Bool_t
Init();
69 virtual Bool_t
ProcessTs(
const fles::Timeslice& ts);
71 virtual Bool_t
ProcessTs(
const fles::Timeslice& ts,
size_t component);
74 ProcessMs(
const fles::Timeslice& ts,
size_t uMsCompIdx,
size_t uMsIdx);
76 Bool_t
DebugMs(
const fles::Timeslice& ts,
size_t uMsCompIdx,
size_t uMsIdx);
88 Int_t
Debug(
const uint8_t* ptr,
const size_t size);
125 uint8_t
const*
const ptr,
126 Int_t
const hubOffset,
127 size_t const hubSize);
133 ProcessTDCword(uint8_t
const*
const ptr, Int_t
const word,
size_t const size);
162 return ((fpgaID << 16) | (ch & 0x00FF));
305 std::vector<CbmMcbmRichEdge>
311 std::vector<CbmMcbmRichEdge>
330 TH1D*
GetTotH1(Int_t fpgaID, Int_t channel);
386 #endif // CbmMcbm2018UnpackerAlgoRich_H
std::vector< Int_t > fTDCAlignmentErrorPositions
Int_t ProcessTRBevent(size_t const size, uint8_t const *const ptr)
Int_t fTdcWordCorrectionCnt
std::vector< CbmMcbmRichEdge > fRisingEdgesBuf
Double_t fdTimeOffsetNs
User settings: Data correction parameters.
std::map< Int_t, std::map< Int_t, TH1D * > > fhTotMap
virtual Bool_t ProcessTs(const fles::Timeslice &ts)
std::vector< TCanvas * > fcTot2d
ClassDef(CbmMcbm2018UnpackerAlgoRich, 1)
void ProcessMicroslice(size_t const size, uint8_t const *const ptr)
void ErrorMsg(uint16_t errbits, RichErrorType type, uint16_t tdcAddr=0)
std::map< Int_t, TH2D * > fhTot2dMap
std::map< uint16_t, uint16_t > fMapFEE
void AddMsComponentToList(size_t component, UShort_t usDetectorId)
Bool_t fbMonitorMode
Control flags.
virtual Bool_t InitContainers()
TArrayD fPrevLastCh0_re_time
virtual TList * GetParList()
Bool_t fbDoToTCorr
User setting: kTRUE activates ToT correction from Parameterfile.
TH2D * GetTotH2(Int_t fpgaID)
Int_t ProcessTDCword(uint8_t const *const ptr, Int_t const word, size_t const size)
Bool_t fRawDataMode
Switch ON the filling of a additional set of histograms.
void WriteOutputDigi(Int_t fpgaID, Int_t channel, Double_t time, Double_t tot, uint64_t MSidx)
Bool_t DebugMs(const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)
TH1D * GetTotH1(Int_t fpgaID, Int_t channel)
Double_t fPrevLastCTSch0_re_time
void SetVectCapInc(Double_t dIncFact)
Double_t fLastCTSch0_re_time
Int_t ProcessSKIPsubevent(size_t const size, uint8_t const *const ptr)
void findTDCAlignmentError(uint8_t const *const ptr, size_t const size)
Double_t fdCapacityIncFactor
Double_t fLastCTSch2_re_time
Double_t fPrevLastCTSch2_re_time
Double_t fPrevLastCTSch2_fe_time
Int_t Debug(const uint8_t *ptr, const size_t size)
virtual Bool_t ReInitContainers()
virtual ~CbmMcbm2018UnpackerAlgoRich()
void SetTimeOffsetNs(Double_t dOffsetIn=0.0)
std::vector< TH2D * > fhTDCre_corrected2
void SetRawDataMode(Bool_t bDebug=kFALSE)
CbmMcbm2018UnpackerAlgoRich()
Bool_t fbDebugMonitorMode
Switch ON the filling of a minimal set of histograms.
void SetMonitorMode(Bool_t bFlagIn=kTRUE)
void ProcessRisingEdge(Int_t subSubEvId, Int_t channel, Double_t time)
std::vector< CbmMcbmRichEdge > fFallingEdgesBuf
Exclude from ROOT dictionnary due to missing empty constructor!!
Int_t fTdcWordCorrectionGlobalCnt
CbmMcbm2018RichPar * fUnpackPar
void DoTotCorr(Bool_t bDoToTCorr=kTRUE)
void ProcessFallingEdge(Int_t subSubEvId, Int_t channel, Double_t time)
Int_t ProcessTRBsubevent(size_t const size, uint8_t const *const ptr)
std::array< unsigned int, 33 > fChnlMsgCnt
TrbNetState fTrbState
flag for an error in the datastream
Int_t ProcessTRBeventHeader(size_t const size, uint8_t const *const ptr)
std::vector< TH2D * > fhTDCre_corrected1
void ProcessTimestampWord(Int_t tdcData)
Bool_t CreateHistograms()
Exclude from ROOT dictionnary due to missing empty constructor!!
Double_t fLastCTSch2_fe_time
Int_t ProcessCTSsubevent(size_t const size, uint8_t const *const ptr)
virtual Bool_t ProcessMs(const fles::Timeslice &ts, size_t uMsCompIdx, size_t uMsIdx)
Int_t ProcessTRBsubsubevent(size_t const size, uint8_t const *const ptr, Int_t const hubOffset, size_t const hubSize)
Int_t GetPixelUID(Int_t fpgaID, Int_t ch) const