Auxiliary class to create summary data.
More...
#include <JSummaryslice.hh>
|
| JSummaryslice () |
| Default constructor. More...
|
|
| JSummaryslice (const JDAQChronometer &chronometer, JObjectIterator< JDAQSummaryslice > &input, const JDetector &detector) |
| Constructor. More...
|
|
| JSummaryslice (const JDAQChronometer &chronometer, const JDetectorSimulator &simbad) |
| Constructor. More...
|
|
void | correct (const JPMTDefaultSimulatorInterface &simulator) |
| Correct measured singles rates for the probability that a hit survives the simulation of the PMT. More...
|
|
std::ostream & | print (std::ostream &out, const bool lpr=false) const |
| Print DAQ summary. More...
|
|
| ClassDef (JDAQSummaryslice, 6) |
|
| ClassDef (JDAQPreamble, 1) |
|
| ClassDef (JDAQSummarysliceHeader, 2) |
|
| ClassDef (JDAQHeader, 2) |
|
| ClassDef (JDAQChronometer, 3) |
|
int | getLength () const |
| Get length. More...
|
|
int | getDataType () const |
| Get data type. More...
|
|
| ClassDefNV (JDAQAbstractPreamble, 1) |
|
const JDAQSummarysliceHeader & | getDAQSummarysliceHeader () const |
| Get DAQ summary slice header. More...
|
|
const JDAQHeader & | getDAQHeader () const |
| Get DAQ header. More...
|
|
void | setDAQHeader (const JDAQHeader &header) |
| Set DAQ header. More...
|
|
const JDAQChronometer & | getDAQChronometer () const |
| Get DAQ chronometer. More...
|
|
void | setDAQChronometer (const JDAQChronometer &chronometer) |
| Set DAQ chronometer. More...
|
|
int | getDetectorID () const |
| Get detector identifier. More...
|
|
int | getRunNumber () const |
| Get run number. More...
|
|
int | getFrameIndex () const |
| Get frame index. More...
|
|
JDAQUTCExtended | getTimesliceStart () const |
| Get start of timeslice. More...
|
|
void | setRunNumber (const int run) |
| Set run number. More...
|
|
void | setFrameIndex (const int frame_index) |
| Set frame index. More...
|
|
void | setTimesliceStart (const JDAQUTCExtended ×lice_start) |
| Set timeslice start time. More...
|
|
|
static const int | NPE = 1 |
| Number of photo-electrons corresponding to singles rate. More...
|
|
Auxiliary class to create summary data.
Definition at line 38 of file JSummaryslice.hh.
◆ JSummaryslice() [1/3]
KM3NETDAQ::JSummaryslice::JSummaryslice |
( |
| ) |
|
|
inline |
◆ JSummaryslice() [2/3]
Constructor.
This constructor blends multiple KM3NETDAQ::JDAQSummaryslice's from an incomplete detector to a single KM3NETDAQ::JDAQSummaryslice for a complete detector.
- Parameters
-
chronometer | DAQ chronometer |
input | summary data |
detector | detector |
Definition at line 58 of file JSummaryslice.hh.
67 for (const_iterator i = summary->begin(); i != summary->end() && module !=
detector.end(); ++i, ++module) {
71 rbegin()->setModuleIdentifier(module->getID());
virtual const pointer_type & next()=0
Get next element.
virtual bool hasNext()=0
Check availability of next element.
JDAQSummaryslice()
Default constructor.
◆ JSummaryslice() [3/3]
Constructor.
This constructor directly creates a KM3NETDAQ::JDAQSummaryslice for a given detector simulation without the need to create first a KM3NETDAQ::JDAQTimeslice.
The high-rate veto of a given PMT is set to true when:
- status of the PMT is not JPMTStatus::ON every time during the time slice; or
- specified rate -corrected for the hit survival probability- exceeds KM3NETDAQ::HIGH_RATE_VETO_HZ.
- Parameters
-
chronometer | chronometer |
simbad | detector simulator |
Definition at line 90 of file JSummaryslice.hh.
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) {};
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.
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].
static const int NPE
Number of photo-electrons corresponding to singles rate.
◆ correct()
Correct measured singles rates for the probability that a hit survives the simulation of the PMT.
- Parameters
-
Definition at line 148 of file JSummaryslice.hh.
153 for (
iterator frame = this->begin(); frame != this->end(); ++frame) {
162 (*frame)[pmt].div(P);
164 (*frame)[pmt].setValue(0.0);
◆ print()
std::ostream& KM3NETDAQ::JDAQSummaryslice::print |
( |
std::ostream & |
out, |
|
|
const bool |
lpr = false |
|
) |
| const |
|
inlineinherited |
Print DAQ summary.
- Parameters
-
out | output stream |
lpr | long print |
- Returns
- output stream
Definition at line 88 of file JDAQSummaryslice.hh.
92 out << this->ClassName() << endl;
93 out << dynamic_cast<const JDAQPreamble&> (*
this) << endl;
94 out << dynamic_cast<const JDAQChronometer&>(*
this) << endl;
96 for (JDAQSummaryslice::const_iterator module = this->begin(); module != this->end(); ++module) {
98 out <<
' ' << setw(10) << module->getModuleID();
99 out <<
' ' << setw(8) << setfill(
'0') << hex << module->getStatus() << dec << setfill(
' ');
100 out <<
'|' << setw(8) << setfill(
'0') << hex << module->getFIFOStatus() << dec << setfill(
' ');
101 out <<
' ' << setw(2) << module->getUDPNumberOfReceivedPackets();
102 out <<
' ' << setw(2) << module->getUDPMaximalSequenceNumber();
106 out <<
' ' << fixed << showpoint << setw(4) << setprecision(1) << module->getRate(pmt) * 1.0e-3;
◆ actionAtFileOpen()
static void KM3NETDAQ::JDAQSummaryslice::actionAtFileOpen |
( |
int |
version | ) |
|
|
inlinestaticinherited |
Action method at file open.
- Parameters
-
Definition at line 122 of file JDAQSummaryslice.hh.
static int ROOT_IO_VERSION
Streamer version of JDAQSummaryslice as obtained from ROOT file.
◆ ClassDef() [1/5]
◆ ClassDef() [2/5]
◆ ClassDef() [3/5]
◆ ClassDef() [4/5]
KM3NETDAQ::JDAQHeader::ClassDef |
( |
JDAQHeader |
, |
|
|
2 |
|
|
) |
| |
|
inherited |
◆ ClassDef() [5/5]
◆ getDAQPreamble()
template<class T >
static JDAQPreamble KM3NETDAQ::JDAQPreamble::getDAQPreamble |
( |
const T & |
object | ) |
|
|
inlinestaticinherited |
Get DAQ preamble.
This method should be used for binary I/O to get the actual data for the given object.
To this end, the following method should be overloaded for the corresponding data type.
size_t getSizeof(const T&);
- Parameters
-
- Returns
- preamble
Definition at line 76 of file JDAQPreamble.hh.
81 preamble.
type = KM3NETDAQ::getDataType<T>();
friend size_t getSizeof()
Definition of method to get size of data type.
◆ getLength()
int KM3NETDAQ::JDAQAbstractPreamble::getLength |
( |
| ) |
const |
|
inlineinherited |
◆ getDataType()
int KM3NETDAQ::JDAQAbstractPreamble::getDataType |
( |
| ) |
const |
|
inlineinherited |
◆ ClassDefNV()
◆ getDAQSummarysliceHeader()
◆ getDAQHeader()
const JDAQHeader& KM3NETDAQ::JDAQHeader::getDAQHeader |
( |
| ) |
const |
|
inlineinherited |
Get DAQ header.
- Returns
- DAQ header
Definition at line 49 of file JDAQHeader.hh.
◆ setDAQHeader()
void KM3NETDAQ::JDAQHeader::setDAQHeader |
( |
const JDAQHeader & |
header | ) |
|
|
inlineinherited |
◆ getDAQChronometer()
const JDAQChronometer& KM3NETDAQ::JDAQChronometer::getDAQChronometer |
( |
| ) |
const |
|
inlineinherited |
◆ setDAQChronometer()
void KM3NETDAQ::JDAQChronometer::setDAQChronometer |
( |
const JDAQChronometer & |
chronometer | ) |
|
|
inlineinherited |
Set DAQ chronometer.
- Parameters
-
chronometer | DAQ chronometer |
Definition at line 99 of file JDAQChronometer.hh.
◆ getDetectorID()
int KM3NETDAQ::JDAQChronometer::getDetectorID |
( |
| ) |
const |
|
inlineinherited |
◆ getRunNumber()
int KM3NETDAQ::JDAQChronometer::getRunNumber |
( |
| ) |
const |
|
inlineinherited |
◆ getFrameIndex()
int KM3NETDAQ::JDAQChronometer::getFrameIndex |
( |
| ) |
const |
|
inlineinherited |
◆ getTimesliceStart()
Get start of timeslice.
- Returns
- timeslice start
Definition at line 144 of file JDAQChronometer.hh.
JDAQUTCExtended timeslice_start
◆ setRunNumber()
void KM3NETDAQ::JDAQChronometer::setRunNumber |
( |
const int |
run | ) |
|
|
inlineinherited |
◆ setFrameIndex()
void KM3NETDAQ::JDAQChronometer::setFrameIndex |
( |
const int |
frame_index | ) |
|
|
inlineinherited |
◆ setTimesliceStart()
void KM3NETDAQ::JDAQChronometer::setTimesliceStart |
( |
const JDAQUTCExtended & |
timeslice_start | ) |
|
|
inlineinherited |
Set timeslice start time.
- Parameters
-
timeslice_start | timeslice start time |
Definition at line 177 of file JDAQChronometer.hh.
◆ NPE
const int KM3NETDAQ::JSummaryslice::NPE = 1 |
|
static |
Number of photo-electrons corresponding to singles rate.
Definition at line 169 of file JSummaryslice.hh.
◆ length
int KM3NETDAQ::JDAQAbstractPreamble::length |
|
protectedinherited |
◆ type
int KM3NETDAQ::JDAQAbstractPreamble::type |
|
protectedinherited |
◆ detector_id
int KM3NETDAQ::JDAQChronometer::detector_id |
|
protectedinherited |
◆ run
int KM3NETDAQ::JDAQChronometer::run |
|
protectedinherited |
◆ frame_index
int KM3NETDAQ::JDAQChronometer::frame_index |
|
protectedinherited |
◆ timeslice_start
The documentation for this struct was generated from the following file: