#ifndef __JDAQ__JHIGHRATEVETO__ #define __JDAQ__JHIGHRATEVETO__ #include "km3net-dataformat/online/JDAQClock.hh" /** * \author mdejong */ namespace KM3NETDAQ { /** * High-rate veto [kHz] */ static double HIGH_RATE_VETO_HZ = 20.0e3; /** * Get maximal number of hits from one PMT within data frame. * * \return number of hits */ inline size_t getMaximalNumberOfHits() { return (size_t) (getFrameTime() * (HIGH_RATE_VETO_HZ * 1.0e-9)); } /** * Get maximal time for given rate. * * \param R_Hz rate [Hz] * \return time [ns] */ inline double getMaximalTime(const double R_Hz) { double t1 = getFrameTime(); if (R_Hz > 0) { t1 = (double) getMaximalNumberOfHits() / (R_Hz * 1.0e-9); if (t1 > getFrameTime()) { t1 = getFrameTime(); } } return t1; } } #endif