Jpp
Public Member Functions | Static Public Member Functions | Protected Attributes | Friends | List of all members
KM3NETDAQ::JDAQTriggerMask Class Reference

Auxiliary class for trigger mask. More...

#include <JDAQTriggerMask.hh>

Inheritance diagram for KM3NETDAQ::JDAQTriggerMask:
JTRIGGER::JEvent JTRIGGER::JTriggeredHit KM3NETDAQ::JDAQEventHeader KM3NETDAQ::JDAQTriggeredHit KM3NETDAQ::JDAQEvent JTRIGGER::JTriggeredEvent

Public Member Functions

 JDAQTriggerMask ()
 Default constructor. More...
 
 JDAQTriggerMask (const JTriggerMask_t mask)
 Constructor. More...
 
 JDAQTriggerMask (const std::string &buffer)
 Constructor. More...
 
virtual ~JDAQTriggerMask ()
 Virtual destructor. More...
 
const JDAQTriggerMaskgetDAQTriggerMask () const
 Get DAQ trigger mask. More...
 
JTriggerMask_t getTriggerMask () const
 Get trigger mask. More...
 
void setDAQTriggerMask (const JDAQTriggerMask &mask)
 Set trigger mask. More...
 
void setTriggerMask (const JTriggerMask_t mask)
 Set trigger mask. More...
 
JDAQTriggerMaskaddTriggerMask (const JDAQTriggerMask &mask)
 Add trigger bit pattern. More...
 
bool hasTriggerMask (const JDAQTriggerMask &mask) const
 Has trigger bit pattern. More...
 
JDAQTriggerMaskaddTriggerBit (const unsigned int bit)
 Add trigger bit. More...
 
bool hasTriggerBit (const unsigned int bit) const
 Check trigger bit. More...
 
std::string toString () const
 Convert trigger mask. More...
 
 ClassDef (JDAQTriggerMask, 1)
 

Static Public Member Functions

static JDAQTriggerMask valueOf (const std::string &buffer)
 Extract trigger mask. More...
 
static int sizeOf ()
 Get size of object. More...
 

Protected Attributes

JTriggerMask_t trigger_mask
 

Friends

std::istream & operator>> (std::istream &in, JDAQTriggerMask &mask)
 Read JDAQTriggerMask from input stream. More...
 
std::ostream & operator<< (std::ostream &out, const JDAQTriggerMask &mask)
 Write JDAQTriggerMask to output stream. More...
 
JReaderoperator>> (JReader &in, JDAQTriggerMask &mask)
 Read JDAQTriggerMask from input. More...
 
JWriteroperator<< (JWriter &out, const JDAQTriggerMask &mask)
 Write JDAQTriggerMask to output. More...
 

Detailed Description

Auxiliary class for trigger mask.

Definition at line 52 of file JDAQTriggerMask.hh.

Constructor & Destructor Documentation

◆ JDAQTriggerMask() [1/3]

KM3NETDAQ::JDAQTriggerMask::JDAQTriggerMask ( )
inline

Default constructor.

Definition at line 57 of file JDAQTriggerMask.hh.

57  :
58  trigger_mask(0)
59  {}

◆ JDAQTriggerMask() [2/3]

KM3NETDAQ::JDAQTriggerMask::JDAQTriggerMask ( const JTriggerMask_t  mask)
inline

Constructor.

Parameters
masktrigger mask

Definition at line 67 of file JDAQTriggerMask.hh.

67  :
68  trigger_mask(mask)
69  {}

◆ JDAQTriggerMask() [3/3]

KM3NETDAQ::JDAQTriggerMask::JDAQTriggerMask ( const std::string &  buffer)
inline

Constructor.

Parameters
buffertrigger bit pattern (i.e. sequence of '0' and '1').

Definition at line 77 of file JDAQTriggerMask.hh.

77  :
79  {}

◆ ~JDAQTriggerMask()

virtual KM3NETDAQ::JDAQTriggerMask::~JDAQTriggerMask ( )
inlinevirtual

Virtual destructor.

Definition at line 85 of file JDAQTriggerMask.hh.

86  {}

Member Function Documentation

◆ getDAQTriggerMask()

const JDAQTriggerMask& KM3NETDAQ::JDAQTriggerMask::getDAQTriggerMask ( ) const
inline

Get DAQ trigger mask.

Returns
DAQ trigger mask

Definition at line 94 of file JDAQTriggerMask.hh.

95  {
96  return static_cast<const JDAQTriggerMask&>(*this);
97  }

◆ getTriggerMask()

JTriggerMask_t KM3NETDAQ::JDAQTriggerMask::getTriggerMask ( ) const
inline

Get trigger mask.

Returns
trigger mask

Definition at line 105 of file JDAQTriggerMask.hh.

106  {
107  return trigger_mask;
108  }

◆ setDAQTriggerMask()

void KM3NETDAQ::JDAQTriggerMask::setDAQTriggerMask ( const JDAQTriggerMask mask)
inline

Set trigger mask.

Parameters
masktrigger mask

Definition at line 116 of file JDAQTriggerMask.hh.

117  {
118  trigger_mask = mask.trigger_mask;
119  }

◆ setTriggerMask()

void KM3NETDAQ::JDAQTriggerMask::setTriggerMask ( const JTriggerMask_t  mask)
inline

Set trigger mask.

Parameters
masktrigger mask

Definition at line 127 of file JDAQTriggerMask.hh.

128  {
129  trigger_mask = mask;
130  }

◆ addTriggerMask()

JDAQTriggerMask& KM3NETDAQ::JDAQTriggerMask::addTriggerMask ( const JDAQTriggerMask mask)
inline

Add trigger bit pattern.

Parameters
masktrigger mask
Returns
trigger mask

Definition at line 139 of file JDAQTriggerMask.hh.

140  {
141  trigger_mask |= mask.trigger_mask;
142 
143  return *this;
144  }

◆ hasTriggerMask()

bool KM3NETDAQ::JDAQTriggerMask::hasTriggerMask ( const JDAQTriggerMask mask) const
inline

Has trigger bit pattern.

Parameters
masktrigger mask
Returns
true if one of the bits is set; else false

Definition at line 153 of file JDAQTriggerMask.hh.

154  {
155  return trigger_mask & mask.trigger_mask;
156  }

◆ addTriggerBit()

JDAQTriggerMask& KM3NETDAQ::JDAQTriggerMask::addTriggerBit ( const unsigned int  bit)
inline

Add trigger bit.

Parameters
bittrigger bit
Returns
trigger mask

Definition at line 165 of file JDAQTriggerMask.hh.

166  {
168 
169  return *this;
170  }

◆ hasTriggerBit()

bool KM3NETDAQ::JDAQTriggerMask::hasTriggerBit ( const unsigned int  bit) const
inline

Check trigger bit.

Parameters
bittrigger bit
Returns
true if bit is set; else false

Definition at line 179 of file JDAQTriggerMask.hh.

180  {
182  }

◆ valueOf()

static JDAQTriggerMask KM3NETDAQ::JDAQTriggerMask::valueOf ( const std::string &  buffer)
inlinestatic

Extract trigger mask.

Parameters
buffertrigger bit pattern (i.e. sequence of '0' and '1').
Returns
trigger mask

Definition at line 191 of file JDAQTriggerMask.hh.

192  {
194 
195  unsigned int bit = 0;
196 
197  for (std::string::const_reverse_iterator i = buffer.rbegin(); i != buffer.rend() && bit != NUMBER_OF_TRIGGER_BITS; ++i, ++bit) {
198  if (*i == '1') {
199  trigger_mask.addTriggerBit(bit);
200  }
201  }
202 
203  return trigger_mask;
204  }

◆ toString()

std::string KM3NETDAQ::JDAQTriggerMask::toString ( ) const
inline

Convert trigger mask.

Returns
trigger bit pattern (i.e. sequence of '0' and '1').

Definition at line 212 of file JDAQTriggerMask.hh.

213  {
214  std::string buffer(NUMBER_OF_TRIGGER_BITS, '0');
215 
216  unsigned int bit = 0;
217 
218  for (std::string::reverse_iterator i = buffer.rbegin(); i != buffer.rend() && bit != NUMBER_OF_TRIGGER_BITS; ++i, ++bit) {
219  if (hasTriggerBit(bit)) {
220  *i = '1';
221  }
222  }
223 
224  return buffer;
225  }

◆ sizeOf()

static int KM3NETDAQ::JDAQTriggerMask::sizeOf ( )
inlinestatic

Get size of object.

Returns
number of bytes

Definition at line 297 of file JDAQTriggerMask.hh.

298  {
299  return sizeof(JTriggerMask_t);
300  }

◆ ClassDef()

KM3NETDAQ::JDAQTriggerMask::ClassDef ( JDAQTriggerMask  ,
 
)

Friends And Related Function Documentation

◆ operator>> [1/2]

std::istream& operator>> ( std::istream &  in,
JDAQTriggerMask mask 
)
friend

Read JDAQTriggerMask from input stream.

Parameters
ininput stream
maskJDAQTriggerMask
Returns
input stream

Definition at line 235 of file JDAQTriggerMask.hh.

236  {
237  std::string buffer;
238 
239  if (in >> buffer) {
240  mask= JDAQTriggerMask::valueOf(buffer);
241  }
242 
243  return in;
244  }

◆ operator<< [1/2]

std::ostream& operator<< ( std::ostream &  out,
const JDAQTriggerMask mask 
)
friend

Write JDAQTriggerMask to output stream.

Parameters
outoutput stream
maskJDAQTriggerMask
Returns
output stream

Definition at line 254 of file JDAQTriggerMask.hh.

255  {
256  out << mask.toString();
257 
258  return out;
259  }

◆ operator>> [2/2]

JReader& operator>> ( JReader in,
JDAQTriggerMask mask 
)
friend

Read JDAQTriggerMask from input.

Parameters
inJReader
maskJDAQTriggerMask
Returns
JReader

Definition at line 269 of file JDAQTriggerMask.hh.

270  {
271  in >> mask.trigger_mask;
272 
273  return in;
274  }

◆ operator<< [2/2]

JWriter& operator<< ( JWriter out,
const JDAQTriggerMask mask 
)
friend

Write JDAQTriggerMask to output.

Parameters
outJWriter
maskJDAQTriggerMask
Returns
JWriter

Definition at line 284 of file JDAQTriggerMask.hh.

285  {
286  out << mask.trigger_mask;
287 
288  return out;
289  }

Member Data Documentation

◆ trigger_mask

JTriggerMask_t KM3NETDAQ::JDAQTriggerMask::trigger_mask
protected

Definition at line 307 of file JDAQTriggerMask.hh.


The documentation for this class was generated from the following file:
KM3NETDAQ::JTriggerMask_t
unsigned long long int JTriggerMask_t
Type definition of trigger mask.
Definition: JDAQTriggerMask.hh:25
KM3NETDAQ::JDAQTriggerMask::trigger_mask
JTriggerMask_t trigger_mask
Definition: JDAQTriggerMask.hh:307
KM3NETDAQ::JDAQTriggerMask::getTriggerMask
JTriggerMask_t getTriggerMask() const
Get trigger mask.
Definition: JDAQTriggerMask.hh:105
KM3NETDAQ::NUMBER_OF_TRIGGER_BITS
static const unsigned int NUMBER_OF_TRIGGER_BITS
Number of trigger bits.
Definition: JDAQTriggerMask.hh:31
KM3NETDAQ::JDAQTriggerMask::valueOf
static JDAQTriggerMask valueOf(const std::string &buffer)
Extract trigger mask.
Definition: JDAQTriggerMask.hh:191
KM3NETDAQ::getTriggerMask
JTriggerMask_t getTriggerMask(const unsigned int bit)
Convert trigger bit to trigger mask.
Definition: JDAQTriggerMask.hh:40
KM3NETDAQ::JDAQTriggerMask::JDAQTriggerMask
JDAQTriggerMask()
Default constructor.
Definition: JDAQTriggerMask.hh:57
KM3NETDAQ::JDAQTriggerMask::hasTriggerBit
bool hasTriggerBit(const unsigned int bit) const
Check trigger bit.
Definition: JDAQTriggerMask.hh:179