Jpp  17.3.0-rc.2
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Friends | List of all members
KM3NETDAQ::JDAQSuperFrame Class Reference

Data frame of one optical module. More...

#include <JDAQSuperFrame.hh>

Inheritance diagram for KM3NETDAQ::JDAQSuperFrame:
KM3NETDAQ::JDAQPreamble KM3NETDAQ::JDAQSuperFrameHeader KM3NETDAQ::JDAQFrame KM3NETDAQ::JDAQAbstractPreamble TObject KM3NETDAQ::JDAQHeader KM3NETDAQ::JDAQModuleIdentifier KM3NETDAQ::JDAQFrameStatus KM3NETDAQ::JDAQChronometer

Public Types

typedef JDAQFrame::const_iterator const_iterator
 
typedef JDAQFrame::iterator iterator
 
typedef
JDAQFrame::const_reverse_iterator 
const_reverse_iterator
 
typedef JDAQFrame::reverse_iterator reverse_iterator
 

Public Member Functions

 JDAQSuperFrame ()
 Default constructor. More...
 
 JDAQSuperFrame (const JDAQSuperFrameHeader &header)
 Constructor. More...
 
 JDAQSuperFrame (const JDAQSuperFrame &super_frame)
 Copy constructor. More...
 
JDAQSuperFrameadd (const JDAQSuperFrame &super_frame)
 Add data from same optical module. More...
 
JDAQSuperFrameadd (const JDAQHit &hit)
 Add hit. More...
 
JDAQSuperFrameadd (const JDAQFrame &frame)
 Add data. More...
 
JDAQSuperFrameadd (const int number_of_hits, const JDAQHit *data)
 Add data. More...
 
 ClassDef (JDAQSuperFrame, 3)
 
 ClassDef (JDAQPreamble, 1)
 
int getLength () const
 Get length. More...
 
int getDataType () const
 Get data type. More...
 
 ClassDefNV (JDAQAbstractPreamble, 1)
 
const JDAQSuperFrameHeadergetDAQSuperFrameHeader () const
 Get DAQ super frame header. More...
 
void setDAQSuperFrameHeader (const JDAQSuperFrameHeader &header)
 Set DAQ super frame header. More...
 
 ClassDef (JDAQSuperFrameHeader, 2)
 
 ClassDef (JDAQHeader, 2)
 
 ClassDef (JDAQChronometer, 3)
 
const JDAQHeadergetDAQHeader () const
 Get DAQ header. More...
 
void setDAQHeader (const JDAQHeader &header)
 Set DAQ header. More...
 
const JDAQChronometergetDAQChronometer () 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 &timeslice_start)
 Set timeslice start time. More...
 
const JDAQModuleIdentifiergetModuleIdentifier () const
 Get Module identifier. More...
 
void setModuleIdentifier (const JDAQModuleIdentifier &module)
 Set Module identifier. More...
 
int getModuleID () const
 Get module identifier. More...
 
 ClassDefNV (JDAQModuleIdentifier, 1)
 
 ClassDefNV (JDAQFrameStatus, 1)
 
const JDAQFrameStatusgetDAQFrameStatus () const
 Get DAQ frame status. More...
 
void setDAQFrameStatus (const JDAQFrameStatus &status)
 Set DAQ frame status. More...
 
int getDAQStatus () const
 Get DAQ status. More...
 
int getStatus () const
 Get TDC and White Rabbit status. More...
 
int getFIFOStatus () const
 Get FIFO status. More...
 
bool testDAQStatus () const
 Test DAQ status of packets. More...
 
bool testStatus () const
 Test TDC and White Rabbit status. More...
 
int getUDPNumberOfReceivedPackets () const
 Get number of received UDP packets. More...
 
int getUDPMaximalSequenceNumber () const
 Get maximal sequence number of UDP packet. More...
 
bool testWhiteRabbitStatus () const
 Test White Rabbit status. More...
 
bool testTDCStatus () const
 Test TDC status. More...
 
bool testHighRateVeto () const
 Test high-rate veto status. More...
 
bool testHighRateVeto (const int tdc) const
 Test high-rate veto status. More...
 
int countHighRateVeto () const
 Count high-rate veto status. More...
 
bool testFIFOStatus () const
 Test FIFO status. More...
 
bool testFIFOStatus (const int tdc) const
 Test FIFO status. More...
 
int countFIFOStatus () const
 Count FIFO status. More...
 
int countActiveChannels () const
 Count active channels. More...
 
bool hasUDPTrailer () const
 Get UDP trailer status. More...
 
void setHighRateVeto (const int tdc, const bool value)
 Set high-rate veto. More...
 
void clear ()
 Clear data. More...
 
const_iterator begin () const
 
iterator begin ()
 
const_iterator end () const
 
iterator end ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rend () const
 
reverse_iterator rend ()
 
bool empty () const
 
int size () const
 
const JDAQHitdata () const
 
JDAQHitdata ()
 
const JDAQHitoperator[] (int index) const
 Get hit at given index. More...
 
JDAQFrameSubset subset (const int i1, const int i2) const
 Get subset of data. More...
 
void swap (JDAQFrame &frame)
 Swap data. More...
 
 ClassDef (JDAQFrame, 1)
 

Static Public Member Functions

template<class T >
static JDAQPreamble getDAQPreamble (const T &object)
 Get DAQ preamble. More...
 
static const JDAQFrameStatusgetInstance ()
 Get reference to unique instance of this class object. More...
 

Public Attributes

int numberOfHits
 
JDAQHitbuffer
 

Protected Member Functions

void resize (const int number_of_hits)
 Resize internal buffer. More...
 

Protected Attributes

int length
 
int type
 
int detector_id
 
int run
 
int frame_index
 
JDAQUTCExtended timeslice_start
 
int id
 
int daq
 
int status
 
int fifo
 
int status_3
 
int status_4
 

Friends

size_t getSizeof (const JDAQSuperFrame &)
 Get size of object. More...
 
JReaderoperator>> (JReader &, JDAQSuperFrame &)
 Read JDAQ super frame from input. More...
 
JWriteroperator<< (JWriter &, const JDAQSuperFrame &)
 Write JDAQSuperFrame to output. More...
 

Detailed Description

Data frame of one optical module.

Definition at line 22 of file JDAQSuperFrame.hh.

Member Typedef Documentation

Definition at line 29 of file JDAQSuperFrame.hh.

Definition at line 30 of file JDAQSuperFrame.hh.

Definition at line 31 of file JDAQSuperFrame.hh.

Definition at line 32 of file JDAQSuperFrame.hh.

Constructor & Destructor Documentation

KM3NETDAQ::JDAQSuperFrame::JDAQSuperFrame ( )
inline

Default constructor.

Definition at line 41 of file JDAQSuperFrame.hh.

41  :
44  JDAQFrame()
45  {}
Auxiliary class for a DAQ type holder.
JDAQFrame()
Default constructor.
Definition: JDAQFrame.hh:80
JDAQSuperFrameHeader()
Default constructor.
JDAQPreamble()
Default constructor.
Definition: JDAQPreamble.hh:51
KM3NETDAQ::JDAQSuperFrame::JDAQSuperFrame ( const JDAQSuperFrameHeader header)
inline

Constructor.

Parameters
headerJDAQ super frame header

Definition at line 53 of file JDAQSuperFrame.hh.

53  :
55  JDAQSuperFrameHeader(header),
56  JDAQFrame()
57  {}
Auxiliary class for a DAQ type holder.
JDAQFrame()
Default constructor.
Definition: JDAQFrame.hh:80
JDAQSuperFrameHeader()
Default constructor.
JDAQPreamble()
Default constructor.
Definition: JDAQPreamble.hh:51
KM3NETDAQ::JDAQSuperFrame::JDAQSuperFrame ( const JDAQSuperFrame super_frame)
inline

Copy constructor.

Parameters
super_frameJDAQ super frame

Definition at line 65 of file JDAQSuperFrame.hh.

65  :
68  JDAQFrame(super_frame)
69  {}
Auxiliary class for a DAQ type holder.
JDAQFrame()
Default constructor.
Definition: JDAQFrame.hh:80
JDAQSuperFrameHeader()
Default constructor.
JDAQPreamble()
Default constructor.
Definition: JDAQPreamble.hh:51
const JDAQSuperFrameHeader & getDAQSuperFrameHeader() const
Get DAQ super frame header.

Member Function Documentation

JDAQSuperFrame& KM3NETDAQ::JDAQSuperFrame::add ( const JDAQSuperFrame super_frame)
inline

Add data from same optical module.

Parameters
super_frameJDAQ super frame
Returns
this JDAQ super frame

Definition at line 78 of file JDAQSuperFrame.hh.

79  {
80  if (this->getModuleID() != super_frame.getModuleID())
81  throw JDAQException("JDAQSuperFrame::add(): Different module identifiers.");
82 
83  return add(static_cast<const JDAQFrame&>(super_frame));
84  }
int getModuleID() const
Get module identifier.
General exception.
JDAQSuperFrame & add(const JDAQSuperFrame &super_frame)
Add data from same optical module.
JDAQSuperFrame& KM3NETDAQ::JDAQSuperFrame::add ( const JDAQHit hit)
inline

Add hit.

Parameters
hitJDAQ hit
Returns
this JDAQ frame

Definition at line 93 of file JDAQSuperFrame.hh.

94  {
95  return add(1, &hit);
96  }
JDAQSuperFrame & add(const JDAQSuperFrame &super_frame)
Add data from same optical module.
JDAQSuperFrame& KM3NETDAQ::JDAQSuperFrame::add ( const JDAQFrame frame)
inline

Add data.

Parameters
frameJDAQ frame
Returns
this JDAQ frame

Definition at line 105 of file JDAQSuperFrame.hh.

106  {
107  return add(frame.numberOfHits, frame.buffer);
108  }
JDAQSuperFrame & add(const JDAQSuperFrame &super_frame)
Add data from same optical module.
JDAQSuperFrame& KM3NETDAQ::JDAQSuperFrame::add ( const int  number_of_hits,
const JDAQHit data 
)
inline

Add data.

Parameters
number_of_hitsnumber of hits
datapointer to data
Returns
this data frame

Definition at line 118 of file JDAQSuperFrame.hh.

119  {
120  JDAQFrame::add(number_of_hits, data);
121 
122  return *this;
123  }
JDAQFrame & add(const JDAQFrame &frame)
Add data.
Definition: JDAQFrame.hh:218
KM3NETDAQ::JDAQSuperFrame::ClassDef ( JDAQSuperFrame  ,
 
)
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
objectobject
Returns
preamble

Definition at line 76 of file JDAQPreamble.hh.

77  {
78  static JDAQPreamble preamble;
79 
80  preamble.length = getSizeof(object);
81  preamble.type = KM3NETDAQ::getDataType<T>();
82 
83  return preamble;
84  }
friend size_t getSizeof()
Definition of method to get size of data type.
KM3NETDAQ::JDAQPreamble::ClassDef ( JDAQPreamble  ,
 
)
inherited
int KM3NETDAQ::JDAQAbstractPreamble::getLength ( ) const
inlineinherited

Get length.

Returns
number of bytes

Definition at line 49 of file JDAQAbstractPreamble.hh.

50  {
51  return length;
52  }
int KM3NETDAQ::JDAQAbstractPreamble::getDataType ( ) const
inlineinherited

Get data type.

Returns
data type

Definition at line 60 of file JDAQAbstractPreamble.hh.

61  {
62  return type;
63  }
KM3NETDAQ::JDAQAbstractPreamble::ClassDefNV ( JDAQAbstractPreamble  ,
 
)
inherited
const JDAQSuperFrameHeader& KM3NETDAQ::JDAQSuperFrameHeader::getDAQSuperFrameHeader ( ) const
inlineinherited

Get DAQ super frame header.

Returns
DAQ super frame header

Definition at line 75 of file JDAQSuperFrameHeader.hh.

76  {
77  return static_cast<const JDAQSuperFrameHeader&>(*this);
78  }
void KM3NETDAQ::JDAQSuperFrameHeader::setDAQSuperFrameHeader ( const JDAQSuperFrameHeader header)
inlineinherited

Set DAQ super frame header.

Parameters
headerDAQ super frame header

Definition at line 86 of file JDAQSuperFrameHeader.hh.

87  {
88  static_cast<JDAQSuperFrameHeader&>(*this) = header;
89  }
KM3NETDAQ::JDAQSuperFrameHeader::ClassDef ( JDAQSuperFrameHeader  ,
 
)
inherited
KM3NETDAQ::JDAQHeader::ClassDef ( JDAQHeader  ,
 
)
inherited
KM3NETDAQ::JDAQChronometer::ClassDef ( JDAQChronometer  ,
 
)
inherited
const JDAQHeader& KM3NETDAQ::JDAQHeader::getDAQHeader ( ) const
inlineinherited

Get DAQ header.

Returns
DAQ header

Definition at line 49 of file JDAQHeader.hh.

50  {
51  return static_cast<const JDAQHeader&>(*this);
52  }
void KM3NETDAQ::JDAQHeader::setDAQHeader ( const JDAQHeader header)
inlineinherited

Set DAQ header.

Parameters
headerDAQ header

Definition at line 60 of file JDAQHeader.hh.

61  {
62  static_cast<JDAQHeader&>(*this) = header;
63  }
const JDAQChronometer& KM3NETDAQ::JDAQChronometer::getDAQChronometer ( ) const
inlineinherited

Get DAQ chronometer.

Returns
DAQ chronometer

Definition at line 88 of file JDAQChronometer.hh.

89  {
90  return static_cast<const JDAQChronometer&>(*this);
91  }
void KM3NETDAQ::JDAQChronometer::setDAQChronometer ( const JDAQChronometer chronometer)
inlineinherited

Set DAQ chronometer.

Parameters
chronometerDAQ chronometer

Definition at line 99 of file JDAQChronometer.hh.

100  {
101  static_cast<JDAQChronometer&>(*this) = chronometer;
102  }
int KM3NETDAQ::JDAQChronometer::getDetectorID ( ) const
inlineinherited

Get detector identifier.

Returns
detector identifier

Definition at line 110 of file JDAQChronometer.hh.

111  {
112  return detector_id;
113  }
int KM3NETDAQ::JDAQChronometer::getRunNumber ( ) const
inlineinherited

Get run number.

Returns
run number

Definition at line 121 of file JDAQChronometer.hh.

122  {
123  return run;
124  }
int KM3NETDAQ::JDAQChronometer::getFrameIndex ( ) const
inlineinherited

Get frame index.

Returns
frame index

Definition at line 132 of file JDAQChronometer.hh.

133  {
134  return frame_index;
135  }
JDAQUTCExtended KM3NETDAQ::JDAQChronometer::getTimesliceStart ( ) const
inlineinherited

Get start of timeslice.

Returns
timeslice start

Definition at line 144 of file JDAQChronometer.hh.

145  {
146  return timeslice_start;
147  }
void KM3NETDAQ::JDAQChronometer::setRunNumber ( const int  run)
inlineinherited

Set run number.

Parameters
runrun number

Definition at line 155 of file JDAQChronometer.hh.

156  {
157  this->run = run;
158  }
void KM3NETDAQ::JDAQChronometer::setFrameIndex ( const int  frame_index)
inlineinherited

Set frame index.

Parameters
frame_indexframe index

Definition at line 166 of file JDAQChronometer.hh.

167  {
168  this->frame_index = frame_index;
169  }
void KM3NETDAQ::JDAQChronometer::setTimesliceStart ( const JDAQUTCExtended timeslice_start)
inlineinherited

Set timeslice start time.

Parameters
timeslice_starttimeslice start time

Definition at line 177 of file JDAQChronometer.hh.

178  {
179  this->timeslice_start = timeslice_start;
180  }
const JDAQModuleIdentifier& KM3NETDAQ::JDAQModuleIdentifier::getModuleIdentifier ( ) const
inlineinherited

Get Module identifier.

Returns
Module identifier

Definition at line 50 of file JDAQModuleIdentifier.hh.

51  {
52  return *this;
53  }
void KM3NETDAQ::JDAQModuleIdentifier::setModuleIdentifier ( const JDAQModuleIdentifier module)
inlineinherited

Set Module identifier.

Parameters
moduleModule identifier

Definition at line 61 of file JDAQModuleIdentifier.hh.

62  {
63  *this = module;
64  }
int KM3NETDAQ::JDAQModuleIdentifier::getModuleID ( ) const
inlineinherited

Get module identifier.

Returns
module identifier

Definition at line 72 of file JDAQModuleIdentifier.hh.

73  {
74  return id;
75  }
KM3NETDAQ::JDAQModuleIdentifier::ClassDefNV ( JDAQModuleIdentifier  ,
 
)
inherited
KM3NETDAQ::JDAQFrameStatus::ClassDefNV ( JDAQFrameStatus  ,
 
)
inherited
static const JDAQFrameStatus& KM3NETDAQ::JDAQFrameStatus::getInstance ( )
inlinestaticinherited

Get reference to unique instance of this class object.

This instance has default values which correspond to a valid DAQ frame status.

Returns
reference to this class object

Definition at line 65 of file JDAQFrameStatus.hh.

66  {
70 
71  return status;
72  }
static const JBits DAQ_UDP_RECEIVED_PACKETS(0, 15)
Mask of UDP received packets.
int write(const int value) const
Write given value as bit mask.
Definition: JDAQ.hh:115
int write(const int value) const
Write given value as bit mask.
Definition: JDAQ.hh:238
static const JBits DAQ_FIFO(0, 30)
FIFO almost full bits.
static const JBit DAQ_UDP_TRAILER(31)
UDP trailer.
static const JBit DAQ_WHITE_RABBIT(31)
White Rabbit status.
static const JBits DAQ_UDP_SEQUENCE_NUMBER(16, 31)
Mask of UDP sequence number.
const JDAQFrameStatus& KM3NETDAQ::JDAQFrameStatus::getDAQFrameStatus ( ) const
inlineinherited

Get DAQ frame status.

Returns
DAQ frame status

Definition at line 80 of file JDAQFrameStatus.hh.

81  {
82  return static_cast<const JDAQFrameStatus&>(*this);
83  }
void KM3NETDAQ::JDAQFrameStatus::setDAQFrameStatus ( const JDAQFrameStatus status)
inlineinherited

Set DAQ frame status.

Parameters
statusDAQ frame status

Definition at line 91 of file JDAQFrameStatus.hh.

92  {
93  static_cast<JDAQFrameStatus&>(*this) = status;
94  }
int KM3NETDAQ::JDAQFrameStatus::getDAQStatus ( ) const
inlineinherited

Get DAQ status.

Returns
DAQ status

Definition at line 102 of file JDAQFrameStatus.hh.

103  {
104  return this->daq;
105  }
int KM3NETDAQ::JDAQFrameStatus::getStatus ( ) const
inlineinherited

Get TDC and White Rabbit status.

Returns
status

Definition at line 113 of file JDAQFrameStatus.hh.

114  {
115  return this->status;
116  }
int KM3NETDAQ::JDAQFrameStatus::getFIFOStatus ( ) const
inlineinherited

Get FIFO status.

Returns
FIFO status

Definition at line 124 of file JDAQFrameStatus.hh.

125  {
126  return this->fifo;
127  }
bool KM3NETDAQ::JDAQFrameStatus::testDAQStatus ( ) const
inlineinherited

Test DAQ status of packets.

Returns
true if okay; else false

Definition at line 135 of file JDAQFrameStatus.hh.

136  {
138  }
bool hasUDPTrailer() const
Get UDP trailer status.
int getUDPNumberOfReceivedPackets() const
Get number of received UDP packets.
int getUDPMaximalSequenceNumber() const
Get maximal sequence number of UDP packet.
bool KM3NETDAQ::JDAQFrameStatus::testStatus ( ) const
inlineinherited

Test TDC and White Rabbit status.

Returns
true if okay; else false

Definition at line 146 of file JDAQFrameStatus.hh.

147  {
148  return testWhiteRabbitStatus() && testTDCStatus();
149  }
bool testTDCStatus() const
Test TDC status.
bool testWhiteRabbitStatus() const
Test White Rabbit status.
int KM3NETDAQ::JDAQFrameStatus::getUDPNumberOfReceivedPackets ( ) const
inlineinherited

Get number of received UDP packets.

Returns
UDP received packets

Definition at line 157 of file JDAQFrameStatus.hh.

158  {
159  return DAQ_UDP_RECEIVED_PACKETS.read(this->daq);
160  }
static const JBits DAQ_UDP_RECEIVED_PACKETS(0, 15)
Mask of UDP received packets.
int read(const int mask) const
Read given bit mask as value.
Definition: JDAQ.hh:250
int KM3NETDAQ::JDAQFrameStatus::getUDPMaximalSequenceNumber ( ) const
inlineinherited

Get maximal sequence number of UDP packet.

Returns
UDP sequence number

Definition at line 168 of file JDAQFrameStatus.hh.

169  {
170  return DAQ_UDP_SEQUENCE_NUMBER.read(this->daq);
171  }
int read(const int mask) const
Read given bit mask as value.
Definition: JDAQ.hh:250
static const JBits DAQ_UDP_SEQUENCE_NUMBER(16, 31)
Mask of UDP sequence number.
bool KM3NETDAQ::JDAQFrameStatus::testWhiteRabbitStatus ( ) const
inlineinherited

Test White Rabbit status.

Returns
true if okay; else false

Definition at line 179 of file JDAQFrameStatus.hh.

180  {
181  return DAQ_WHITE_RABBIT.has(this->status);
182  }
bool has(const int mask) const
Test bit.
Definition: JDAQ.hh:139
static const JBit DAQ_WHITE_RABBIT(31)
White Rabbit status.
bool KM3NETDAQ::JDAQFrameStatus::testTDCStatus ( ) const
inlineinherited

Test TDC status.

Returns
true if okay; else false

Definition at line 190 of file JDAQFrameStatus.hh.

191  {
192  return !testHighRateVeto();
193  }
bool testHighRateVeto() const
Test high-rate veto status.
bool KM3NETDAQ::JDAQFrameStatus::testHighRateVeto ( ) const
inlineinherited

Test high-rate veto status.

Returns
true if one of the TDCs is high-rate vetoed; else false

Definition at line 201 of file JDAQFrameStatus.hh.

202  {
203  return DAQ_TDC.has(this->status);
204  }
bool has(const int mask) const
Test bit mask.
Definition: JDAQ.hh:262
static const JBits DAQ_TDC(0, 30)
TDC high-rate veto status.
bool KM3NETDAQ::JDAQFrameStatus::testHighRateVeto ( const int  tdc) const
inlineinherited

Test high-rate veto status.

Parameters
tdcTDC
Returns
true if TDC is high-rate vetoed; else false

Definition at line 213 of file JDAQFrameStatus.hh.

214  {
215  return JBit(tdc).has(this->status);
216  }
bool has(const int mask) const
Test bit.
Definition: JDAQ.hh:139
Auxiliary data structure for single bit.
Definition: JDAQ.hh:36
int KM3NETDAQ::JDAQFrameStatus::countHighRateVeto ( ) const
inlineinherited

Count high-rate veto status.

Returns
number of the TDCs with high-rate veto

Definition at line 224 of file JDAQFrameStatus.hh.

225  {
226  int n = 0;
227 
228  if (testHighRateVeto()) {
229  for (int pmt = 0; pmt != NUMBER_OF_PMTS; ++pmt) {
230  if (JBit(pmt).has(this->status)) {
231  ++n;
232  }
233  }
234  }
235 
236  return n;
237  }
const int n
Definition: JPolint.hh:697
bool testHighRateVeto() const
Test high-rate veto status.
Auxiliary data structure for single bit.
Definition: JDAQ.hh:36
static const int NUMBER_OF_PMTS
Total number of PMTs in module.
Definition: JDAQ.hh:26
bool KM3NETDAQ::JDAQFrameStatus::testFIFOStatus ( ) const
inlineinherited

Test FIFO status.

Returns
true if one of the TDCs has FIFO almost full; else false

Definition at line 245 of file JDAQFrameStatus.hh.

246  {
247  return DAQ_FIFO.has(this->fifo);
248  }
static const JBits DAQ_FIFO(0, 30)
FIFO almost full bits.
bool has(const int mask) const
Test bit mask.
Definition: JDAQ.hh:262
bool KM3NETDAQ::JDAQFrameStatus::testFIFOStatus ( const int  tdc) const
inlineinherited

Test FIFO status.

Parameters
tdcTDC
Returns
true if FIFO is almost full; else false

Definition at line 257 of file JDAQFrameStatus.hh.

258  {
259  return JBit(tdc).has(this->fifo);
260  }
bool has(const int mask) const
Test bit.
Definition: JDAQ.hh:139
Auxiliary data structure for single bit.
Definition: JDAQ.hh:36
int KM3NETDAQ::JDAQFrameStatus::countFIFOStatus ( ) const
inlineinherited

Count FIFO status.

Returns
number of the TDCs with FIFO almost full

Definition at line 268 of file JDAQFrameStatus.hh.

269  {
270  int n = 0;
271 
272  if (testFIFOStatus()) {
273  for (int pmt = 0; pmt != NUMBER_OF_PMTS; ++pmt) {
274  if (JBit(pmt).has(this->fifo)) {
275  ++n;
276  }
277  }
278  }
279 
280  return n;
281  }
const int n
Definition: JPolint.hh:697
Auxiliary data structure for single bit.
Definition: JDAQ.hh:36
static const int NUMBER_OF_PMTS
Total number of PMTs in module.
Definition: JDAQ.hh:26
bool testFIFOStatus() const
Test FIFO status.
int KM3NETDAQ::JDAQFrameStatus::countActiveChannels ( ) const
inlineinherited

Count active channels.

Returns
number of TDCs without high rate veto or FIFO almost full

Definition at line 287 of file JDAQFrameStatus.hh.

288  {
289  int n = NUMBER_OF_PMTS;
290 
291  if (testHighRateVeto() || testFIFOStatus()) {
292  for (int pmt = 0; pmt != NUMBER_OF_PMTS; ++pmt) {
293  if ( JBit(pmt).has(this->status) || JBit(pmt).has(this->fifo) ) {
294  --n;
295  }
296  }
297  }
298 
299  return n;
300 
301  }
const int n
Definition: JPolint.hh:697
bool testHighRateVeto() const
Test high-rate veto status.
Auxiliary data structure for single bit.
Definition: JDAQ.hh:36
static const int NUMBER_OF_PMTS
Total number of PMTs in module.
Definition: JDAQ.hh:26
bool testFIFOStatus() const
Test FIFO status.
bool KM3NETDAQ::JDAQFrameStatus::hasUDPTrailer ( ) const
inlineinherited

Get UDP trailer status.

Returns
true if UDP trailer present; else false

Definition at line 309 of file JDAQFrameStatus.hh.

310  {
311  return DAQ_UDP_TRAILER.has(this->fifo);
312  }
static const JBit DAQ_UDP_TRAILER(31)
UDP trailer.
bool has(const int mask) const
Test bit.
Definition: JDAQ.hh:139
void KM3NETDAQ::JDAQFrameStatus::setHighRateVeto ( const int  tdc,
const bool  value 
)
inlineinherited

Set high-rate veto.

Parameters
tdcTDC
valuevalue

Definition at line 321 of file JDAQFrameStatus.hh.

322  {
323  JBit(tdc).set(this->status, value);
324  }
void set(int &mask) const
Set bit in given bit mask.
Definition: JDAQ.hh:77
Auxiliary data structure for single bit.
Definition: JDAQ.hh:36
void KM3NETDAQ::JDAQFrame::clear ( )
inlineinherited

Clear data.

Definition at line 153 of file JDAQFrame.hh.

154  {
155  if (buffer != NULL) {
156  free(buffer);
157  }
158 
159  numberOfHits = 0;
160  buffer = NULL;
161  }
const_iterator KM3NETDAQ::JDAQFrame::begin ( ) const
inlineinherited

Definition at line 164 of file JDAQFrame.hh.

164 { return buffer; }
iterator KM3NETDAQ::JDAQFrame::begin ( )
inlineinherited

Definition at line 168 of file JDAQFrame.hh.

168 { return buffer; }
const_iterator KM3NETDAQ::JDAQFrame::end ( ) const
inlineinherited

Definition at line 165 of file JDAQFrame.hh.

165 { return buffer + numberOfHits; }
iterator KM3NETDAQ::JDAQFrame::end ( )
inlineinherited

Definition at line 169 of file JDAQFrame.hh.

169 { return buffer + numberOfHits; }
const_reverse_iterator KM3NETDAQ::JDAQFrame::rbegin ( ) const
inlineinherited

Definition at line 172 of file JDAQFrame.hh.

172 { return const_reverse_iterator(end()); }
std::reverse_iterator< const_iterator > const_reverse_iterator
Definition: JDAQFrame.hh:70
const_iterator end() const
Definition: JDAQFrame.hh:165
reverse_iterator KM3NETDAQ::JDAQFrame::rbegin ( )
inlineinherited

Definition at line 176 of file JDAQFrame.hh.

176 { return reverse_iterator(end()); }
std::reverse_iterator< iterator > reverse_iterator
Definition: JDAQFrame.hh:71
const_iterator end() const
Definition: JDAQFrame.hh:165
const_reverse_iterator KM3NETDAQ::JDAQFrame::rend ( ) const
inlineinherited

Definition at line 173 of file JDAQFrame.hh.

173 { return const_reverse_iterator(begin()); }
std::reverse_iterator< const_iterator > const_reverse_iterator
Definition: JDAQFrame.hh:70
const_iterator begin() const
Definition: JDAQFrame.hh:164
reverse_iterator KM3NETDAQ::JDAQFrame::rend ( )
inlineinherited

Definition at line 177 of file JDAQFrame.hh.

177 { return reverse_iterator(begin()); }
std::reverse_iterator< iterator > reverse_iterator
Definition: JDAQFrame.hh:71
const_iterator begin() const
Definition: JDAQFrame.hh:164
bool KM3NETDAQ::JDAQFrame::empty ( ) const
inlineinherited

Definition at line 180 of file JDAQFrame.hh.

180 { return numberOfHits == 0; }
int KM3NETDAQ::JDAQFrame::size ( ) const
inlineinherited

Definition at line 182 of file JDAQFrame.hh.

182 { return numberOfHits; }
const JDAQHit* KM3NETDAQ::JDAQFrame::data ( ) const
inlineinherited

Definition at line 184 of file JDAQFrame.hh.

184 { return buffer; }
JDAQHit* KM3NETDAQ::JDAQFrame::data ( )
inlineinherited

Definition at line 185 of file JDAQFrame.hh.

185 { return buffer; }
const JDAQHit& KM3NETDAQ::JDAQFrame::operator[] ( int  index) const
inlineinherited

Get hit at given index.

Parameters
indexindex
Returns
hit

Definition at line 194 of file JDAQFrame.hh.

195  {
196  return buffer[index];
197  }
JDAQFrameSubset KM3NETDAQ::JDAQFrame::subset ( const int  i1,
const int  i2 
) const
inlineinherited

Get subset of data.

Parameters
i1first index of hit (included)
i2last index of hit (excluded)
Returns
frame

Definition at line 206 of file JDAQFrame.hh.

207  {
208  return JDAQFrameSubset(i2 - i1, buffer + i1);
209  }
Subset of data frame.
Definition: JDAQFrame.hh:22
void KM3NETDAQ::JDAQFrame::swap ( JDAQFrame frame)
inlineinherited

Swap data.

Parameters
frameframe

Definition at line 249 of file JDAQFrame.hh.

250  {
251  std::swap(numberOfHits, frame.numberOfHits);
252  std::swap(buffer, frame.buffer);
253  }
KM3NETDAQ::JDAQFrame::ClassDef ( JDAQFrame  ,
 
)
inherited
void KM3NETDAQ::JDAQFrame::resize ( const int  number_of_hits)
inlineprotectedinherited

Resize internal buffer.

This method increases the size of the buffer if necessary. Otherwise, the current size is maintained.

Parameters
number_of_hitstotal number of hits to allocate

Definition at line 272 of file JDAQFrame.hh.

273  {
274  if (number_of_hits > numberOfHits) {
275 
276  const int number_of_bytes = number_of_hits * sizeof(JDAQHit);
277 
278  if (buffer == NULL)
279  buffer = (JDAQHit*) malloc(number_of_bytes);
280  else
281  buffer = (JDAQHit*) realloc(buffer, number_of_bytes);
282 
283  if (buffer == NULL) {
284  throw JDAQException("JDAQFrame::resize(): Memory exception.");
285  }
286 
287  numberOfHits = number_of_hits;
288  }
289  }
Hit data structure.
Definition: JDAQHit.hh:34
General exception.

Friends And Related Function Documentation

size_t getSizeof ( const JDAQSuperFrame object)
friend

Get size of object.

Parameters
objectDAQ super frame
Returns
number of bytes

Definition at line 23 of file JDAQSuperFrameIO.hh.

24  {
25  return (getSizeof<JDAQPreamble>() +
27  getSizeof(static_cast<const JDAQFrame&>(object)));
28  }
friend size_t getSizeof()
Definition of method to get size of data type.
size_t getSizeof< JDAQSuperFrameHeader >()
Get size of type.
size_t getSizeof< JDAQPreamble >()
Get size of type.
JReader& operator>> ( JReader in,
JDAQSuperFrame object 
)
friend

Read JDAQ super frame from input.

Parameters
inreader
objectDAQ super frame
Returns
reader

Definition at line 38 of file JDAQSuperFrameIO.hh.

39  {
40  in >> static_cast<JDAQPreamble&> (object);
41  in >> static_cast<JDAQSuperFrameHeader&>(object);
42  in >> static_cast<JDAQFrame&> (object);
43 
44  return in;
45  }
Data frame.
Definition: JDAQFrame.hh:64
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
Definition: JCanberra.sh:46
JWriter& operator<< ( JWriter out,
const JDAQSuperFrame object 
)
friend

Write JDAQSuperFrame to output.

Parameters
outwriter
objectDAQ super frame
Returns
writer

Definition at line 55 of file JDAQSuperFrameIO.hh.

56  {
57  out << JDAQPreamble::getDAQPreamble(object);
58  out << static_cast<const JDAQSuperFrameHeader&>(object);
59  out << static_cast<const JDAQFrame&> (object);
60 
61  return out;
62  }
static JDAQPreamble getDAQPreamble(const T &object)
Get DAQ preamble.
Definition: JDAQPreamble.hh:76

Member Data Documentation

int KM3NETDAQ::JDAQAbstractPreamble::length
protectedinherited

Definition at line 69 of file JDAQAbstractPreamble.hh.

int KM3NETDAQ::JDAQAbstractPreamble::type
protectedinherited

Definition at line 70 of file JDAQAbstractPreamble.hh.

int KM3NETDAQ::JDAQChronometer::detector_id
protectedinherited

Definition at line 187 of file JDAQChronometer.hh.

int KM3NETDAQ::JDAQChronometer::run
protectedinherited

Definition at line 188 of file JDAQChronometer.hh.

int KM3NETDAQ::JDAQChronometer::frame_index
protectedinherited

Definition at line 189 of file JDAQChronometer.hh.

JDAQUTCExtended KM3NETDAQ::JDAQChronometer::timeslice_start
protectedinherited

Definition at line 190 of file JDAQChronometer.hh.

int KM3NETDAQ::JDAQModuleIdentifier::id
protectedinherited

Definition at line 112 of file JDAQModuleIdentifier.hh.

int KM3NETDAQ::JDAQFrameStatus::daq
protectedinherited

Definition at line 330 of file JDAQFrameStatus.hh.

int KM3NETDAQ::JDAQFrameStatus::status
protectedinherited

Definition at line 331 of file JDAQFrameStatus.hh.

int KM3NETDAQ::JDAQFrameStatus::fifo
protectedinherited

Definition at line 332 of file JDAQFrameStatus.hh.

int KM3NETDAQ::JDAQFrameStatus::status_3
protectedinherited

Definition at line 333 of file JDAQFrameStatus.hh.

int KM3NETDAQ::JDAQFrameStatus::status_4
protectedinherited

Definition at line 334 of file JDAQFrameStatus.hh.

int KM3NETDAQ::JDAQFrame::numberOfHits
inherited

Definition at line 256 of file JDAQFrame.hh.

JDAQHit* KM3NETDAQ::JDAQFrame::buffer
inherited

Definition at line 257 of file JDAQFrame.hh.


The documentation for this class was generated from the following file: