1 #ifndef __JSUMMARYSLICE__JSUMMARYSLICE__
2 #define __JSUMMARYSLICE__JSUMMARYSLICE__
67 for (const_iterator i = summary->begin(); i != summary->end() && module !=
detector.end(); ++i, ++module) {
71 rbegin()->setModuleIdentifier(module->getID());
105 for (JDetector::const_iterator module = simbad->begin(); module != simbad->end(); ++module) {
107 if (!module->empty()) {
111 this->rbegin()->setDAQFrameStatus(clbSimulator.
getDAQFrameStatus(module->getID()));
122 this->rbegin()->setHighRateVeto(pmt,
true);
131 rate_Hz *= (double) n1 / (
double) (n2 + 1);
134 this->rbegin()->setRate(pmt, rate_Hz);
139 catch(
const std::exception& error) {};
153 for (
iterator frame = this->begin(); frame != this->end(); ++frame) {
162 (*frame)[pmt].div(P);
164 (*frame)[pmt].setValue(0.0);
KM3NeT DAQ constants, bit handling, etc.
Data structure for detector geometry and calibration.
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 JPMTSimulator & getPMTSimulator() const
Get PMT simulator.
const JK40Simulator & getK40Simulator() const
Get K40 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 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 const pointer_type & next()=0
Get next element.
virtual bool hasNext()=0
Check availability of next element.
void setDAQChronometer(const JDAQChronometer &chronometer)
Set DAQ chronometer.
Data storage class for rate measurements of all PMTs in one module.
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.
static const int NPE
Number of photo-electrons corresponding to singles rate.