1#ifndef __JSUMMARYSLICE__JSUMMARYSLICE__
2#define __JSUMMARYSLICE__JSUMMARYSLICE__
66 const JDAQSummaryslice* summary = input.next();
68 for (const_iterator i = summary->begin(); i != summary->end() && module != detector.end(); ++i, ++module) {
72 rbegin()->setModuleIdentifier(module->getID());
98 setDAQChronometer(chronometer);
106 for (JDetector::const_iterator module = simbad->begin(); module != simbad->end(); ++module) {
108 if (!module->empty()) {
112 this->rbegin()->setDAQFrameStatus(clbSimulator.
getDAQFrameStatus(module->getID()));
123 this->rbegin()->setHighRateVeto(pmt,
true);
135 this->rbegin()->setRate(pmt, rate_Hz);
140 catch(
const std::exception& error) {};
154 for (
iterator frame = this->begin(); frame != this->end(); ++frame) {
165 (*frame)[pmt].div(P);
167 (*frame)[pmt].setValue(0.0);
173 static const int NPE = 1;
KM3NeT DAQ constants, bit handling, etc.
Data structure for detector geometry and calibration.
Auxiliary methods for mathematics.
JDAQFrameStatus getDAQFrameStatus(const JModuleIdentifier &id) const
Get DAQ frame status of given module.
virtual int getUDPMaximalSequenceNumber(const JModuleIdentifier &id) const
Get maximal sequence number of UDP packet.
virtual int getUDPNumberOfReceivedPackets(const JModuleIdentifier &id) const
Get number of received UDP packets.
const JCLBSimulator & getCLBSimulator() const
Get CLB simulator.
const JK40Simulator & getK40Simulator() const
Get K40 simulator.
const JPMTSimulator & getPMTSimulator() const
Get PMT simulator.
Default K40 simulator interface.
virtual double getSinglesRate(const JPMTIdentifier &pmt) const =0
Get singles rate as a function of PMT.
Default PMT simulation interface.
virtual const bool hasPMTSignalProcessor(const JPMTIdentifier &pmt) const
Has PMT signal processor.
virtual const JPMTSignalProcessorInterface & getPMTSignalProcessor(const JPMTIdentifier &pmt) const
Get PMT signal processor.
virtual double getSurvivalProbability(const int NPE) const
Probability that a hit survives the simulation of the PMT.
Interface of object iteration for a single data type.
virtual bool hasNext()=0
Check availability of next element.
Data storage class for rate measurements of all PMTs in one module.
size_t getBayesianMedian(const size_t m, const size_t k)
Get estimate of maximum number.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
KM3NeT DAQ data structures and auxiliaries.
static const int NUMBER_OF_PMTS
Total number of PMTs in module.
static double HIGH_RATE_VETO_HZ
High-rate veto [kHz].
Auxiliary class to create summary data.
JSummaryslice(const JDAQChronometer &chronometer, JObjectIterator< JDAQSummaryslice > &input, const JDetector &detector)
Constructor.
void correct(const JPMTDefaultSimulatorInterface &simulator)
Correct measured singles rates for the probability that a hit survives the simulation of the PMT.
JSummaryslice()
Default constructor.
JSummaryslice(const JDAQChronometer &chronometer, const JDetectorSimulator &simbad)
Constructor.