Jpp
JDAQSummaryFrameIO.hh
Go to the documentation of this file.
1 #ifndef __JDAQSUMMARYFRAME_IO__
2 #define __JDAQSUMMARYFRAME_IO__
3 
5 
6 #include "JIO/JSerialisable.hh"
7 
10 
11 /**
12  * \author mdejong
13  */
14 namespace KM3NETDAQ {
15 
16  /**
17  * Get size of type.
18  *
19  * \return number of bytes
20  */
21  template<>
23  {
27  }
28 
29 
30  /**
31  * Read DAQ summary frame from input.
32  *
33  * \param in reader
34  * \param summary DAQ summary frame
35  * \return reader
36  */
37  inline JReader& operator>>(JReader& in, JDAQSummaryFrame& summary)
38  {
39  in >> static_cast<JDAQModuleIdentifier&>(summary);
40  in >> static_cast<JDAQFrameStatus&> (summary);
41 
42  in.read((char*) summary.data, NUMBER_OF_PMTS * sizeof(JDAQRate::JRate_t));
43 
44  return in;
45  }
46 
47 
48  /**
49  * Write DAQ summary frame to output.
50  *
51  * \param out writer
52  * \param summary DAQ summary frame
53  * \return writer
54  */
55  inline JWriter& operator<<(JWriter& out, const JDAQSummaryFrame& summary)
56  {
57  out << static_cast<const JDAQModuleIdentifier&>(summary);
58  out << static_cast<const JDAQFrameStatus&> (summary);
59 
60  out.write((char*) summary.data, NUMBER_OF_PMTS * sizeof(JDAQRate::JRate_t));
61 
62  return out;
63  }
64 }
65 
66 #endif
JIO::JReader
Interface for binary input.
Definition: JSerialisable.hh:62
KM3NETDAQ::JDAQSummaryFrame::data
JDAQRate data[NUMBER_OF_PMTS]
Definition: JDAQSummaryFrame.hh:495
KM3NETDAQ::NUMBER_OF_PMTS
static const int NUMBER_OF_PMTS
Total number of PMTs in module.
Definition: JDAQ.hh:26
KM3NETDAQ::operator>>
JReader & operator>>(JReader &in, JDAQChronometer &chronometer)
Read DAQ chronometer from input.
Definition: JDAQChronometerIO.hh:37
JLANG::JBinaryOutput::write
virtual int write(const char *buffer, const int length)=0
Write byte array.
KM3NETDAQ::JDAQSummaryFrame
Data storage class for rate measurements of all PMTs in one module.
Definition: JDAQSummaryFrame.hh:320
JSerialisable.hh
KM3NETDAQ::JDAQRate::JRate_t
unsigned char JRate_t
Definition: JDAQSummaryFrame.hh:42
KM3NETDAQ::getSizeof< JDAQModuleIdentifier >
size_t getSizeof< JDAQModuleIdentifier >()
Get size of type.
Definition: JDAQModuleIdentifierIO.hh:19
JLANG::JBinaryInput::read
virtual int read(char *buffer, const int length)=0
Read byte array.
JIO::JWriter
Interface for binary output.
Definition: JSerialisable.hh:131
JDAQSummaryFrame.hh
KM3NETDAQ::getSizeof< JDAQSummaryFrame >
size_t getSizeof< JDAQSummaryFrame >()
Get size of type.
Definition: JDAQSummaryFrameIO.hh:22
KM3NETDAQ::getSizeof< JDAQFrameStatus >
size_t getSizeof< JDAQFrameStatus >()
Get size of type.
Definition: JDAQFrameStatusIO.hh:19
KM3NETDAQ
KM3NeT DAQ data structures and auxiliaries.
Definition: DataQueue.cc:39
JDAQModuleIdentifierIO.hh
JDAQFrameStatusIO.hh
KM3NETDAQ::operator<<
JWriter & operator<<(JWriter &out, const JDAQChronometer &chronometer)
Write DAQ chronometer to output.
Definition: JDAQChronometerIO.hh:55