Go to the documentation of this file. 1 #ifndef __JDAQSUMMARYFRAME__
2 #define __JDAQSUMMARYFRAME__
26 class JDAQSummaryFrame;
76 return getValue(numberOfHits * 1.0e9 / frameTime_ns);
91 return std::numeric_limits<JRate_t>::max();
124 else if (
value == std::numeric_limits<JRate_t>::max())
140 return (
int) std::numeric_limits<JRate_t>::max() + 1;
150 static const double*
getData(
const double factor = 1.0)
159 buffer.push_back(
get_rate(i - 0.5) * factor);
164 return buffer.data();
193 void setValue(
const int numberOfHits,
const double frameTime_ns)
367 vector<int> counter(numeric_limits<JPMT_t>::max(), 0);
369 int n = input.
size();
372 ++counter[i->getPMT()];
385 int n = input.
size();
388 if (i->getT() > limit[i->getPMT()]) {
389 limit[i->getPMT()] = i->getT();
396 data[i].
setValue((
double) counter[i] * 1.0e9 / (
double) limit[i]);
453 double getRate(
const int tdc,
const double factor = 1.0)
const
466 double getWeight(
const int tdc,
const double factor = 1.0)
const
478 void setRate(
const int tdc,
const double rate_Hz)
493 in >> static_cast<JDAQModuleIdentifier&>(summary);
494 in >> static_cast<JDAQFrameStatus&> (summary);
511 out << static_cast<const JDAQModuleIdentifier&>(summary);
512 out << static_cast<const JDAQFrameStatus&> (summary);
559 if (first[i] != second[i]) {
583 return !(first == second);
Interface for binary input.
bool testHighRateVeto() const
Test high-rate veto status.
JDAQRate & operator[](const int tdc)
Get DAQ rate of given PMT.
static int getN()
Get number of bins.
static int sizeOf()
Get size of object.
JDAQSummaryFrame()
Default constructor.
static double getMinimalRate()
Get minimal rate (below this, value is set to zero)
static JRate_t getValue(const double rate_Hz)
Get value.
friend JReader & operator>>(JReader &in, JDAQSummaryFrame &summary)
Read DAQ summary frame from input.
JDAQSummaryFrame(const JDAQModuleIdentifier &id)
Constructor.
JDAQRate data[NUMBER_OF_PMTS]
static double getWeight(const JRate_t value)
Get weight.
JDAQRate & div(const double factor)
Scale rate.
double getWeight(const int tdc, const double factor=1.0) const
Get weight.
static const int NUMBER_OF_PMTS
Total number of PMTs in module.
int getModuleID() const
Get module identifier.
static int ROOT_IO_VERSION
Streamer version of JDAQSummaryslice as obtained from ROOT file.
double getWeight() const
Get weight.
double getFrameTime()
Get frame time duration.
double getRate(const int tdc, const double factor=1.0) const
Get count rate.
static const double * getData(const double factor=1.0)
Get abscissa values.
ClassDefNV(JDAQSummaryFrame, 2)
JDAQFrame::const_iterator const_iterator
const JDAQModuleIdentifier & getModuleIdentifier() const
Get Module identifier.
double getValue(const int tdc) const
Get value.
virtual int write(const char *buffer, const int length)=0
Write byte array.
Data storage class for rate measurements of all PMTs in one module.
static const double getFactor()
Get conversion factor.
static double getRate(const JRate_t value)
Get count rate.
JRate_t getValue() const
Get value.
bool operator!=(const JDAQChronometer &first, const JDAQChronometer &second)
Not-equal operator for DAQ chronometers.
JDAQSummaryFrame(const JDAQSuperFrame &input)
Constructor.
Interface for binary output.
unsigned char JPMT_t
PMT channel in FPGA.
JDAQRate()
Default constructor.
Data storage class for rate measurement of one PMT.
bool testFIFOStatus() const
Test FIFO status.
void setValue(const int numberOfHits, const double frameTime_ns)
Set value.
static const JDAQFrameStatus & getInstance()
Get reference to unique instance of this class object.
bool operator==(const JDAQChronometer &first, const JDAQChronometer &second)
Equal operator for DAQ chronometers.
static JRate_t getValue(const int numberOfHits, const double frameTime_ns)
Get value.
friend JWriter & operator<<(JWriter &out, const JDAQSummaryFrame &summary)
Write DAQ summary frame to output.
unsigned int JTDC_t
leading edge [ns]
static int sizeOf()
Get size of object.
KM3NeT DAQ data structures and auxiliaries.
Data frame of one optical module.
static int sizeOf()
Get size of object.
static double get_rate(const double value)
Get count rate.
void setValue(const double rate_Hz)
Set value.
double getRate() const
Get count rate.
const_iterator begin() const
static double getMaximalRate()
Get maximal rate (above this, value is set to maximum)
const JDAQFrameStatus & getDAQFrameStatus() const
Get DAQ frame status.
const JDAQRate & operator[](const int tdc) const
Get DAQ rate of given PMT.
void setRate(const int tdc, const double rate_Hz)
Set count rate.
JDAQRate::JRate_t JRate_t
JDAQRate & mul(const double factor)
Scale rate.