291 Double_t dPrevTime = -1;
293 for (UInt_t uDigiIdx = 0; uDigiIdx < uNrDigis; ++uDigiIdx) {
296 Double_t dNewDigiTime = digi->GetTime();
299 Double_t dTimeDiff = dNewDigiTime - dPrevTime;
301 histoDt->Fill(dTimeDiff);
303 histoSameTime->Fill(0);
304 histoDtLog->Fill(dTimeDiff);
307 histoSameTime->Fill(1);
313 case kSts: ///< Silicon Tracking System
315 const CbmStsDigi* stsDigi;
318 boost::any_cast<const CbmStsDigi*>( digi );
320 LOG( fatal ) << "Failed boost any_cast in CbmMcbm2019CheckPulser::FillSystemOffsetHistos for a digi of type "
321 << Digi::GetClassName();
324 UInt_t uAddr = stsDigi->GetAddress();
325 UInt_t uChan = stsDigi->GetChannel();
329 case kMuch: ///< Muon detection system
331 const CbmMuchBeamTimeDigi* muchDigi;
334 boost::any_cast<const CbmMuchBeamTimeDigi*>( digi );
336 LOG( fatal ) << "Failed boost any_cast in CbmMcbm2019CheckPulser::FillSystemOffsetHistos for a digi of type "
337 << Digi::GetClassName();
340 UInt_t uAsic = muchDigi->GetNxId();
341 UInt_t uChan = muchDigi->GetNxCh();
345 case kTrd: ///< Time-of-flight Detector
347 UInt_t uAddr = digi->GetAddress();
350 case kTof: ///< Time-of-flight Detector
355 case kRich: ///< Ring-Imaging Cherenkov Detector
360 case kPsd: ///< Projectile spectator detector
362 UInt_t uAddr = digi->GetAddress();
368 } // switch( iDetId )
370 dPrevTime = dNewDigiTime;