Jpp
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...
 
virtual int getSize () const
 Get size of object. 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

static int sizeOf ()
 Get size of object. More...
 
static int sizeOf ()
 Get size of object. More...
 
static const JDAQFrameStatusgetInstance ()
 Get reference to unique instance of this class object. More...
 

Public Attributes

int numberOfHits
 
JDAQHitbuffer
 

Protected Member Functions

void setLength ()
 Set length. More...
 
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

JReaderoperator>> (JReader &in, JDAQSuperFrame &frame)
 Read JDAQSuperFrame from input. More...
 
JWriteroperator<< (JWriter &out, const JDAQSuperFrame &frame)
 Write JDAQSuperFrame to output. More...
 

Detailed Description

Data frame of one optical module.

Definition at line 27 of file JDAQSuperFrame.hh.

Member Typedef Documentation

◆ const_iterator

typedef JDAQFrame::const_iterator KM3NETDAQ::JDAQSuperFrame::const_iterator

Definition at line 34 of file JDAQSuperFrame.hh.

◆ iterator

Definition at line 35 of file JDAQSuperFrame.hh.

◆ const_reverse_iterator

Definition at line 36 of file JDAQSuperFrame.hh.

◆ reverse_iterator

Definition at line 37 of file JDAQSuperFrame.hh.

Constructor & Destructor Documentation

◆ JDAQSuperFrame() [1/3]

KM3NETDAQ::JDAQSuperFrame::JDAQSuperFrame ( )
inline

Default constructor.

Definition at line 43 of file JDAQSuperFrame.hh.

43  :
44  JDAQPreamble(JDAQType<JDAQSuperFrame>()),
46  JDAQFrame()
47  {}

◆ JDAQSuperFrame() [2/3]

KM3NETDAQ::JDAQSuperFrame::JDAQSuperFrame ( const JDAQSuperFrameHeader header)
inline

Constructor.

Parameters
headerJDAQ super frame header

Definition at line 55 of file JDAQSuperFrame.hh.

55  :
56  JDAQPreamble(JDAQType<JDAQSuperFrame>()),
57  JDAQSuperFrameHeader(header),
58  JDAQFrame()
59  {}

◆ JDAQSuperFrame() [3/3]

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

Copy constructor.

Parameters
super_frameJDAQ super frame

Definition at line 67 of file JDAQSuperFrame.hh.

67  :
68  JDAQPreamble(JDAQType<JDAQSuperFrame>()),
69  JDAQSuperFrameHeader(super_frame.getDAQSuperFrameHeader()),
70  JDAQFrame(super_frame)
71  {}

Member Function Documentation

◆ add() [1/4]

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 80 of file JDAQSuperFrame.hh.

81  {
82  if (this->getModuleID() != super_frame.getModuleID())
83  throw JDAQException("JDAQSuperFrame::add(): Different module identifiers.");
84 
85  return add(static_cast<const JDAQFrame&>(super_frame));
86  }

◆ add() [2/4]

JDAQSuperFrame& KM3NETDAQ::JDAQSuperFrame::add ( const JDAQHit hit)
inline

Add hit.

Parameters
hitJDAQ hit
Returns
this JDAQ frame

Definition at line 95 of file JDAQSuperFrame.hh.

96  {
97  return add(1, &hit);
98  }

◆ add() [3/4]

JDAQSuperFrame& KM3NETDAQ::JDAQSuperFrame::add ( const JDAQFrame frame)
inline

Add data.

Parameters
frameJDAQ frame
Returns
this JDAQ frame

Definition at line 107 of file JDAQSuperFrame.hh.

108  {
109  return add(frame.numberOfHits, frame.buffer);
110  }

◆ add() [4/4]

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 120 of file JDAQSuperFrame.hh.

121  {
122  JDAQFrame::add(number_of_hits, data);
123 
124  return *this;
125  }

◆ getSize()

virtual int KM3NETDAQ::JDAQSuperFrame::getSize ( ) const
inlinevirtual

Get size of object.

Returns
number of bytes

Reimplemented from KM3NETDAQ::JDAQPreamble.

Definition at line 167 of file JDAQSuperFrame.hh.

168  {
169  return (JDAQPreamble ::sizeOf() +
171  sizeof(int) + numberOfHits * JDAQHit::sizeOf());
172  }

◆ ClassDef() [1/6]

KM3NETDAQ::JDAQSuperFrame::ClassDef ( JDAQSuperFrame  ,
 
)

◆ sizeOf() [1/2]

static int KM3NETDAQ::JDAQPreamble::sizeOf ( )
inlinestaticinherited

Get size of object.

Returns
number of bytes

Definition at line 110 of file JDAQPreamble.hh.

111  {
113  }

◆ ClassDef() [2/6]

KM3NETDAQ::JDAQPreamble::ClassDef ( JDAQPreamble  ,
 
)
inherited

◆ setLength()

void KM3NETDAQ::JDAQPreamble::setLength ( )
inlineprotectedinherited

Set length.

Definition at line 134 of file JDAQPreamble.hh.

135  {
136  length = getSize();
137  }

◆ getLength()

int KM3NETDAQ::JDAQAbstractPreamble::getLength ( ) const
inlineinherited

Get length.

Returns
number of bytes

Definition at line 48 of file JDAQAbstractPreamble.hh.

49  {
50  return length;
51  }

◆ getDataType()

int KM3NETDAQ::JDAQAbstractPreamble::getDataType ( ) const
inlineinherited

Get data type.

Returns
data type

Definition at line 59 of file JDAQAbstractPreamble.hh.

60  {
61  return type;
62  }

◆ ClassDefNV() [1/3]

KM3NETDAQ::JDAQAbstractPreamble::ClassDefNV ( JDAQAbstractPreamble  ,
 
)
inherited

◆ getDAQSuperFrameHeader()

const JDAQSuperFrameHeader& KM3NETDAQ::JDAQSuperFrameHeader::getDAQSuperFrameHeader ( ) const
inlineinherited

Get DAQ super frame header.

Returns
DAQ super frame header

Definition at line 76 of file JDAQSuperFrameHeader.hh.

77  {
78  return static_cast<const JDAQSuperFrameHeader&>(*this);
79  }

◆ setDAQSuperFrameHeader()

void KM3NETDAQ::JDAQSuperFrameHeader::setDAQSuperFrameHeader ( const JDAQSuperFrameHeader header)
inlineinherited

Set DAQ super frame header.

Parameters
headerDAQ super frame header

Definition at line 87 of file JDAQSuperFrameHeader.hh.

88  {
89  static_cast<JDAQSuperFrameHeader&>(*this) = header;
90  }

◆ sizeOf() [2/2]

static int KM3NETDAQ::JDAQSuperFrameHeader::sizeOf ( )
inlinestaticinherited

Get size of object.

Returns
number of bytes

Definition at line 132 of file JDAQSuperFrameHeader.hh.

133  {
134  return (JDAQHeader ::sizeOf() +
137  }

◆ ClassDef() [3/6]

KM3NETDAQ::JDAQSuperFrameHeader::ClassDef ( JDAQSuperFrameHeader  ,
 
)
inherited

◆ ClassDef() [4/6]

KM3NETDAQ::JDAQHeader::ClassDef ( JDAQHeader  ,
 
)
inherited

◆ ClassDef() [5/6]

KM3NETDAQ::JDAQChronometer::ClassDef ( JDAQChronometer  ,
 
)
inherited

◆ getDAQHeader()

const JDAQHeader& KM3NETDAQ::JDAQHeader::getDAQHeader ( ) const
inlineinherited

Get DAQ header.

Returns
DAQ header

Definition at line 51 of file JDAQHeader.hh.

52  {
53  return static_cast<const JDAQHeader&>(*this);
54  }

◆ setDAQHeader()

void KM3NETDAQ::JDAQHeader::setDAQHeader ( const JDAQHeader header)
inlineinherited

Set DAQ header.

Parameters
headerDAQ header

Definition at line 62 of file JDAQHeader.hh.

63  {
64  static_cast<JDAQHeader&>(*this) = header;
65  }

◆ getDAQChronometer()

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  }

◆ setDAQChronometer()

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  }

◆ getDetectorID()

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  }

◆ getRunNumber()

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  }

◆ getFrameIndex()

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  }

◆ getTimesliceStart()

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  }

◆ setRunNumber()

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  }

◆ setFrameIndex()

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  }

◆ setTimesliceStart()

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  {
180  }

◆ getModuleIdentifier()

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  }

◆ setModuleIdentifier()

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  }

◆ getModuleID()

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  }

◆ ClassDefNV() [2/3]

KM3NETDAQ::JDAQModuleIdentifier::ClassDefNV ( JDAQModuleIdentifier  ,
 
)
inherited

◆ ClassDefNV() [3/3]

KM3NETDAQ::JDAQFrameStatus::ClassDefNV ( JDAQFrameStatus  ,
 
)
inherited

◆ getInstance()

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 66 of file JDAQFrameStatus.hh.

67  {
71 
72  return status;
73  }

◆ getDAQFrameStatus()

const JDAQFrameStatus& KM3NETDAQ::JDAQFrameStatus::getDAQFrameStatus ( ) const
inlineinherited

Get DAQ frame status.

Returns
DAQ frame status

Definition at line 81 of file JDAQFrameStatus.hh.

82  {
83  return static_cast<const JDAQFrameStatus&>(*this);
84  }

◆ setDAQFrameStatus()

void KM3NETDAQ::JDAQFrameStatus::setDAQFrameStatus ( const JDAQFrameStatus status)
inlineinherited

Set DAQ frame status.

Parameters
statusDAQ frame status

Definition at line 92 of file JDAQFrameStatus.hh.

93  {
94  static_cast<JDAQFrameStatus&>(*this) = status;
95  }

◆ getDAQStatus()

int KM3NETDAQ::JDAQFrameStatus::getDAQStatus ( ) const
inlineinherited

Get DAQ status.

Returns
DAQ status

Definition at line 103 of file JDAQFrameStatus.hh.

104  {
105  return this->daq;
106  }

◆ getStatus()

int KM3NETDAQ::JDAQFrameStatus::getStatus ( ) const
inlineinherited

Get TDC and White Rabbit status.

Returns
status

Definition at line 114 of file JDAQFrameStatus.hh.

115  {
116  return this->status;
117  }

◆ getFIFOStatus()

int KM3NETDAQ::JDAQFrameStatus::getFIFOStatus ( ) const
inlineinherited

Get FIFO status.

Returns
FIFO status

Definition at line 125 of file JDAQFrameStatus.hh.

126  {
127  return this->fifo;
128  }

◆ testDAQStatus()

bool KM3NETDAQ::JDAQFrameStatus::testDAQStatus ( ) const
inlineinherited

Test DAQ status of packets.

Returns
true if okay; else false

Definition at line 136 of file JDAQFrameStatus.hh.

137  {
139  }

◆ testStatus()

bool KM3NETDAQ::JDAQFrameStatus::testStatus ( ) const
inlineinherited

Test TDC and White Rabbit status.

Returns
true if okay; else false

Definition at line 147 of file JDAQFrameStatus.hh.

148  {
149  return testWhiteRabbitStatus() && testTDCStatus();
150  }

◆ getUDPNumberOfReceivedPackets()

int KM3NETDAQ::JDAQFrameStatus::getUDPNumberOfReceivedPackets ( ) const
inlineinherited

Get number of received UDP packets.

Returns
UDP received packets

Definition at line 158 of file JDAQFrameStatus.hh.

159  {
160  return DAQ_UDP_RECEIVED_PACKETS.read(this->daq);
161  }

◆ getUDPMaximalSequenceNumber()

int KM3NETDAQ::JDAQFrameStatus::getUDPMaximalSequenceNumber ( ) const
inlineinherited

Get maximal sequence number of UDP packet.

Returns
UDP sequence number

Definition at line 169 of file JDAQFrameStatus.hh.

170  {
171  return DAQ_UDP_SEQUENCE_NUMBER.read(this->daq);
172  }

◆ testWhiteRabbitStatus()

bool KM3NETDAQ::JDAQFrameStatus::testWhiteRabbitStatus ( ) const
inlineinherited

Test White Rabbit status.

Returns
true if okay; else false

Definition at line 180 of file JDAQFrameStatus.hh.

181  {
182  return DAQ_WHITE_RABBIT.has(this->status);
183  }

◆ testTDCStatus()

bool KM3NETDAQ::JDAQFrameStatus::testTDCStatus ( ) const
inlineinherited

Test TDC status.

Returns
true if okay; else false

Definition at line 191 of file JDAQFrameStatus.hh.

192  {
193  return !testHighRateVeto();
194  }

◆ testHighRateVeto() [1/2]

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 202 of file JDAQFrameStatus.hh.

203  {
204  return DAQ_TDC.has(this->status);
205  }

◆ testHighRateVeto() [2/2]

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 214 of file JDAQFrameStatus.hh.

215  {
216  return JBit(tdc).has(this->status);
217  }

◆ countHighRateVeto()

int KM3NETDAQ::JDAQFrameStatus::countHighRateVeto ( ) const
inlineinherited

Count high-rate veto status.

Returns
number of the TDCs with high-rate veto

Definition at line 225 of file JDAQFrameStatus.hh.

226  {
227  int n = 0;
228 
229  if (testHighRateVeto()) {
230  for (int pmt = 0; pmt != NUMBER_OF_PMTS; ++pmt) {
231  if (JBit(pmt).has(this->status)) {
232  ++n;
233  }
234  }
235  }
236 
237  return n;
238  }

◆ testFIFOStatus() [1/2]

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 246 of file JDAQFrameStatus.hh.

247  {
248  return DAQ_FIFO.has(this->fifo);
249  }

◆ testFIFOStatus() [2/2]

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 258 of file JDAQFrameStatus.hh.

259  {
260  return JBit(tdc).has(this->fifo);
261  }

◆ countFIFOStatus()

int KM3NETDAQ::JDAQFrameStatus::countFIFOStatus ( ) const
inlineinherited

Count FIFO status.

Returns
number of the TDCs with FIFO almost full

Definition at line 269 of file JDAQFrameStatus.hh.

270  {
271  int n = 0;
272 
273  if (testFIFOStatus()) {
274  for (int pmt = 0; pmt != NUMBER_OF_PMTS; ++pmt) {
275  if (JBit(pmt).has(this->fifo)) {
276  ++n;
277  }
278  }
279  }
280 
281  return n;
282  }

◆ countActiveChannels()

int KM3NETDAQ::JDAQFrameStatus::countActiveChannels ( ) const
inlineinherited

Count active channels.

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

Definition at line 288 of file JDAQFrameStatus.hh.

289  {
290  int n = NUMBER_OF_PMTS;
291 
292  if (testHighRateVeto() || testFIFOStatus()) {
293  for (int pmt = 0; pmt != NUMBER_OF_PMTS; ++pmt) {
294  if ( JBit(pmt).has(this->status) || JBit(pmt).has(this->fifo) ) {
295  --n;
296  }
297  }
298  }
299 
300  return n;
301 
302  }

◆ hasUDPTrailer()

bool KM3NETDAQ::JDAQFrameStatus::hasUDPTrailer ( ) const
inlineinherited

Get UDP trailer status.

Returns
true if UDP trailer present; else false

Definition at line 310 of file JDAQFrameStatus.hh.

311  {
312  return DAQ_UDP_TRAILER.has(this->fifo);
313  }

◆ setHighRateVeto()

void KM3NETDAQ::JDAQFrameStatus::setHighRateVeto ( const int  tdc,
const bool  value 
)
inlineinherited

Set high-rate veto.

Parameters
tdcTDC
valuevalue

Definition at line 322 of file JDAQFrameStatus.hh.

323  {
324  JBit(tdc).set(this->status, value);
325  }

◆ clear()

void KM3NETDAQ::JDAQFrame::clear ( )
inlineinherited

Clear data.

Definition at line 128 of file JDAQFrame.hh.

129  {
130  if (buffer != NULL) {
131  free(buffer);
132  }
133 
134  numberOfHits = 0;
135  buffer = NULL;
136  }

◆ begin() [1/2]

const_iterator KM3NETDAQ::JDAQFrame::begin ( ) const
inlineinherited

Definition at line 139 of file JDAQFrame.hh.

139 { return buffer; }

◆ begin() [2/2]

iterator KM3NETDAQ::JDAQFrame::begin ( )
inlineinherited

Definition at line 143 of file JDAQFrame.hh.

143 { return buffer; }

◆ end() [1/2]

const_iterator KM3NETDAQ::JDAQFrame::end ( ) const
inlineinherited

Definition at line 140 of file JDAQFrame.hh.

140 { return buffer + numberOfHits; }

◆ end() [2/2]

iterator KM3NETDAQ::JDAQFrame::end ( )
inlineinherited

Definition at line 144 of file JDAQFrame.hh.

144 { return buffer + numberOfHits; }

◆ rbegin() [1/2]

const_reverse_iterator KM3NETDAQ::JDAQFrame::rbegin ( ) const
inlineinherited

Definition at line 147 of file JDAQFrame.hh.

147 { return const_reverse_iterator(end()); }

◆ rbegin() [2/2]

reverse_iterator KM3NETDAQ::JDAQFrame::rbegin ( )
inlineinherited

Definition at line 151 of file JDAQFrame.hh.

151 { return reverse_iterator(end()); }

◆ rend() [1/2]

const_reverse_iterator KM3NETDAQ::JDAQFrame::rend ( ) const
inlineinherited

Definition at line 148 of file JDAQFrame.hh.

148 { return const_reverse_iterator(begin()); }

◆ rend() [2/2]

reverse_iterator KM3NETDAQ::JDAQFrame::rend ( )
inlineinherited

Definition at line 152 of file JDAQFrame.hh.

152 { return reverse_iterator(begin()); }

◆ empty()

bool KM3NETDAQ::JDAQFrame::empty ( ) const
inlineinherited

Definition at line 155 of file JDAQFrame.hh.

155 { return numberOfHits == 0; }

◆ size()

int KM3NETDAQ::JDAQFrame::size ( ) const
inlineinherited

Definition at line 157 of file JDAQFrame.hh.

157 { return numberOfHits; }

◆ data() [1/2]

const JDAQHit* KM3NETDAQ::JDAQFrame::data ( ) const
inlineinherited

Definition at line 159 of file JDAQFrame.hh.

159 { return buffer; }

◆ data() [2/2]

JDAQHit* KM3NETDAQ::JDAQFrame::data ( )
inlineinherited

Definition at line 160 of file JDAQFrame.hh.

160 { return buffer; }

◆ operator[]()

const JDAQHit& KM3NETDAQ::JDAQFrame::operator[] ( int  index) const
inlineinherited

Get hit at given index.

Parameters
indexindex
Returns
hit

Definition at line 169 of file JDAQFrame.hh.

170  {
171  return buffer[index];
172  }

◆ subset()

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
JDAQ frame

Definition at line 181 of file JDAQFrame.hh.

182  {
183  return JDAQFrameSubset(i2 - i1, buffer + i1);
184  }

◆ swap()

void KM3NETDAQ::JDAQFrame::swap ( JDAQFrame frame)
inlineinherited

Swap data.

Parameters
frameJDAQ frame

Definition at line 224 of file JDAQFrame.hh.

225  {
226  std::swap(numberOfHits, frame.numberOfHits);
227  std::swap(buffer, frame.buffer);
228  }

◆ ClassDef() [6/6]

KM3NETDAQ::JDAQFrame::ClassDef ( JDAQFrame  ,
 
)
inherited

◆ resize()

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 287 of file JDAQFrame.hh.

288  {
289  if (number_of_hits > numberOfHits) {
290 
291  const int number_of_bytes = number_of_hits * sizeof(JDAQHit);
292 
293  if (buffer == NULL)
294  buffer = (JDAQHit*) malloc(number_of_bytes);
295  else
296  buffer = (JDAQHit*) realloc(buffer, number_of_bytes);
297 
298  if (buffer == NULL)
299  throw JDAQException("JDAQFrame::resize(): Memory exception.");
300 
301  numberOfHits = number_of_hits;
302  }
303  }

Friends And Related Function Documentation

◆ operator>>

JReader& operator>> ( JReader in,
JDAQSuperFrame frame 
)
friend

Read JDAQSuperFrame from input.

Parameters
inJReader
frameJDAQSuperFrame
Returns
JReader

Definition at line 135 of file JDAQSuperFrame.hh.

136  {
137  in >> static_cast<JDAQPreamble&> (frame);
138  in >> static_cast<JDAQSuperFrameHeader&>(frame);
139  in >> static_cast<JDAQFrame&> (frame);
140 
141  return in;
142  }

◆ operator<<

JWriter& operator<< ( JWriter out,
const JDAQSuperFrame frame 
)
friend

Write JDAQSuperFrame to output.

Parameters
outJWriter
frameJDAQSuperFrame
Returns
JWriter

Definition at line 152 of file JDAQSuperFrame.hh.

153  {
154  out << static_cast<const JDAQPreamble&> (frame);
155  out << static_cast<const JDAQSuperFrameHeader&>(frame);
156  out << static_cast<const JDAQFrame&> (frame);
157 
158  return out;
159  }

Member Data Documentation

◆ length

int KM3NETDAQ::JDAQAbstractPreamble::length
protectedinherited

Definition at line 79 of file JDAQAbstractPreamble.hh.

◆ type

int KM3NETDAQ::JDAQAbstractPreamble::type
protectedinherited

Definition at line 80 of file JDAQAbstractPreamble.hh.

◆ detector_id

int KM3NETDAQ::JDAQChronometer::detector_id
protectedinherited

Definition at line 237 of file JDAQChronometer.hh.

◆ run

int KM3NETDAQ::JDAQChronometer::run
protectedinherited

Definition at line 238 of file JDAQChronometer.hh.

◆ frame_index

int KM3NETDAQ::JDAQChronometer::frame_index
protectedinherited

Definition at line 239 of file JDAQChronometer.hh.

◆ timeslice_start

JDAQUTCExtended KM3NETDAQ::JDAQChronometer::timeslice_start
protectedinherited

Definition at line 240 of file JDAQChronometer.hh.

◆ id

int KM3NETDAQ::JDAQModuleIdentifier::id
protectedinherited

Definition at line 153 of file JDAQModuleIdentifier.hh.

◆ daq

int KM3NETDAQ::JDAQFrameStatus::daq
protectedinherited

Definition at line 384 of file JDAQFrameStatus.hh.

◆ status

int KM3NETDAQ::JDAQFrameStatus::status
protectedinherited

Definition at line 385 of file JDAQFrameStatus.hh.

◆ fifo

int KM3NETDAQ::JDAQFrameStatus::fifo
protectedinherited

Definition at line 386 of file JDAQFrameStatus.hh.

◆ status_3

int KM3NETDAQ::JDAQFrameStatus::status_3
protectedinherited

Definition at line 387 of file JDAQFrameStatus.hh.

◆ status_4

int KM3NETDAQ::JDAQFrameStatus::status_4
protectedinherited

Definition at line 388 of file JDAQFrameStatus.hh.

◆ numberOfHits

int KM3NETDAQ::JDAQFrame::numberOfHits
inherited

Definition at line 271 of file JDAQFrame.hh.

◆ buffer

JDAQHit* KM3NETDAQ::JDAQFrame::buffer
inherited

Definition at line 272 of file JDAQFrame.hh.


The documentation for this class was generated from the following file:
KM3NETDAQ::JDAQFrameStatus::testHighRateVeto
bool testHighRateVeto() const
Test high-rate veto status.
Definition: JDAQFrameStatus.hh:202
KM3NETDAQ::JDAQAbstractPreamble::sizeOf
static int sizeOf()
Get size of object.
Definition: JDAQAbstractPreamble.hh:70
KM3NETDAQ::DAQ_UDP_RECEIVED_PACKETS
static const JBits DAQ_UDP_RECEIVED_PACKETS(0, 15)
Mask of UDP received packets.
KM3NETDAQ::JDAQModuleIdentifier::sizeOf
static int sizeOf()
Get size of object.
Definition: JDAQModuleIdentifier.hh:143
KM3NETDAQ::JDAQChronometer::timeslice_start
JDAQUTCExtended timeslice_start
Definition: JDAQChronometer.hh:240
KM3NETDAQ::JDAQPreamble::JDAQPreamble
JDAQPreamble()
Default constructor.
Definition: JDAQPreamble.hh:60
KM3NETDAQ::JDAQSuperFrameHeader::sizeOf
static int sizeOf()
Get size of object.
Definition: JDAQSuperFrameHeader.hh:132
KM3NETDAQ::JBit::has
bool has(const int mask) const
Test bit.
Definition: JDAQ.hh:139
KM3NETDAQ::JDAQFrame::add
JDAQFrame & add(const JDAQFrame &frame)
Add data.
Definition: JDAQFrame.hh:193
KM3NETDAQ::JDAQAbstractPreamble::length
int length
Definition: JDAQAbstractPreamble.hh:79
JTOOLS::n
const int n
Definition: JPolint.hh:628
KM3NETDAQ::NUMBER_OF_PMTS
static const int NUMBER_OF_PMTS
Total number of PMTs in module.
Definition: JDAQ.hh:26
KM3NETDAQ::JDAQModuleIdentifier::getModuleID
int getModuleID() const
Get module identifier.
Definition: JDAQModuleIdentifier.hh:72
KM3NETDAQ::JDAQFrame::buffer
JDAQHit * buffer
Definition: JDAQFrame.hh:272
KM3NETDAQ::JDAQPreamble::sizeOf
static int sizeOf()
Get size of object.
Definition: JDAQPreamble.hh:110
KM3NETDAQ::JDAQModuleIdentifier::id
int id
Definition: JDAQModuleIdentifier.hh:153
KM3NETDAQ::JDAQHit::sizeOf
static int sizeOf()
Get size of object.
Definition: JDAQHit.hh:196
KM3NETDAQ::DAQ_UDP_TRAILER
static const JBit DAQ_UDP_TRAILER(31)
UDP trailer.
KM3NETDAQ::JDAQFrameStatus::getUDPMaximalSequenceNumber
int getUDPMaximalSequenceNumber() const
Get maximal sequence number of UDP packet.
Definition: JDAQFrameStatus.hh:169
KM3NETDAQ::JDAQFrameStatus::JDAQFrameStatus
JDAQFrameStatus()
Default constructor.
Definition: JDAQFrameStatus.hh:28
KM3NETDAQ::JDAQFrameStatus::hasUDPTrailer
bool hasUDPTrailer() const
Get UDP trailer status.
Definition: JDAQFrameStatus.hh:310
KM3NETDAQ::JDAQFrameStatus::getUDPNumberOfReceivedPackets
int getUDPNumberOfReceivedPackets() const
Get number of received UDP packets.
Definition: JDAQFrameStatus.hh:158
KM3NETDAQ::JDAQPreamble::getSize
virtual int getSize() const
Get size of object.
Definition: JDAQPreamble.hh:121
KM3NETDAQ::JDAQFrameStatus::testFIFOStatus
bool testFIFOStatus() const
Test FIFO status.
Definition: JDAQFrameStatus.hh:246
KM3NETDAQ::JDAQChronometer::frame_index
int frame_index
Definition: JDAQChronometer.hh:239
KM3NETDAQ::JBit::write
int write(const int value) const
Write given value as bit mask.
Definition: JDAQ.hh:115
KM3NETDAQ::JDAQSuperFrameHeader::JDAQSuperFrameHeader
JDAQSuperFrameHeader()
Default constructor.
Definition: JDAQSuperFrameHeader.hh:34
KM3NETDAQ::JDAQHeader::sizeOf
static int sizeOf()
Get size of object.
Definition: JDAQHeader.hh:103
KM3NETDAQ::JDAQFrame::data
const JDAQHit * data() const
Definition: JDAQFrame.hh:159
KM3NETDAQ::JDAQFrameStatus::status
int status
Definition: JDAQFrameStatus.hh:385
KM3NETDAQ::JBits::write
int write(const int value) const
Write given value as bit mask.
Definition: JDAQ.hh:238
KM3NETDAQ::DAQ_WHITE_RABBIT
static const JBit DAQ_WHITE_RABBIT(31)
White Rabbit status.
KM3NETDAQ::JDAQFrame::reverse_iterator
std::reverse_iterator< iterator > reverse_iterator
Definition: JDAQFrame.hh:77
KM3NETDAQ::JDAQSuperFrame::add
JDAQSuperFrame & add(const JDAQSuperFrame &super_frame)
Add data from same optical module.
Definition: JDAQSuperFrame.hh:80
KM3NETDAQ::JDAQFrameStatus::fifo
int fifo
Definition: JDAQFrameStatus.hh:386
KM3NETDAQ::DAQ_UDP_SEQUENCE_NUMBER
static const JBits DAQ_UDP_SEQUENCE_NUMBER(16, 31)
Mask of UDP sequence number.
KM3NETDAQ::JDAQFrameStatus::testTDCStatus
bool testTDCStatus() const
Test TDC status.
Definition: JDAQFrameStatus.hh:191
KM3NETDAQ::JDAQFrame::JDAQFrame
JDAQFrame()
Default constructor.
Definition: JDAQFrame.hh:83
KM3NETDAQ::JDAQChronometer::run
int run
Definition: JDAQChronometer.hh:238
KM3NETDAQ::JDAQFrame::numberOfHits
int numberOfHits
Definition: JDAQFrame.hh:271
KM3NETDAQ::JBits::read
int read(const int mask) const
Read given bit mask as value.
Definition: JDAQ.hh:250
KM3NETDAQ::JDAQFrameStatus::sizeOf
static int sizeOf()
Get size of object.
Definition: JDAQFrameStatus.hh:371
KM3NETDAQ::JDAQAbstractPreamble::type
int type
Definition: JDAQAbstractPreamble.hh:80
KM3NETDAQ::JBits::has
bool has(const int mask) const
Test bit mask.
Definition: JDAQ.hh:262
KM3NETDAQ::DAQ_FIFO
static const JBits DAQ_FIFO(0, 30)
FIFO almost full bits.
KM3NETDAQ::JDAQFrameStatus::testWhiteRabbitStatus
bool testWhiteRabbitStatus() const
Test White Rabbit status.
Definition: JDAQFrameStatus.hh:180
KM3NETDAQ::JDAQFrame::begin
const_iterator begin() const
Definition: JDAQFrame.hh:139
KM3NETDAQ::DAQ_TDC
static const JBits DAQ_TDC(0, 30)
TDC high-rate veto status.
KM3NETDAQ::JDAQFrame::const_reverse_iterator
std::reverse_iterator< const_iterator > const_reverse_iterator
Definition: JDAQFrame.hh:76
KM3NETDAQ::JDAQFrame::end
const_iterator end() const
Definition: JDAQFrame.hh:140
KM3NETDAQ::JDAQFrameStatus::daq
int daq
Definition: JDAQFrameStatus.hh:384
KM3NETDAQ::JDAQChronometer::detector_id
int detector_id
Definition: JDAQChronometer.hh:237