Jpp
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | List of all members
KM3NETDAQ::JBit Struct Reference

Auxiliary data structure for single bit. More...

#include <JDAQ.hh>

Public Member Functions

 JBit ()
 Default constructor. More...
 
 JBit (int __bit)
 Constructor. More...
 
int get () const
 Get bit mask. More...
 
void set (int &mask) const
 Set bit in given bit mask. More...
 
void unset (int &mask) const
 Unset bit in given bit mask. More...
 
void set (int &mask, const bool value) const
 Set bit in given bit mask. More...
 
int write (const int value) const
 Write given value as bit mask. More...
 
int read (const int mask) const
 Read given bit mask as value. More...
 
bool has (const int mask) const
 Test bit. More...
 

Public Attributes

int bit
 bit More...
 

Detailed Description

Auxiliary data structure for single bit.

Definition at line 36 of file JDAQ.hh.

Constructor & Destructor Documentation

KM3NETDAQ::JBit::JBit ( )
inline

Default constructor.

Definition at line 40 of file JDAQ.hh.

40  :
41  bit(0)
42  {}
int bit
bit
Definition: JDAQ.hh:145
KM3NETDAQ::JBit::JBit ( int  __bit)
inline

Constructor.

Parameters
__bitbit [0, 31]

Definition at line 50 of file JDAQ.hh.

50  :
51  bit(__bit)
52  {
53  if (bit < 0 || bit > 31) {
54  throw JDAQException("JBit: illegal bit range.");
55  }
56  }
int bit
bit
Definition: JDAQ.hh:145

Member Function Documentation

int KM3NETDAQ::JBit::get ( ) const
inline

Get bit mask.

In the returned mask, the single bit at bit set to 1.

Returns
bit mask

Definition at line 66 of file JDAQ.hh.

67  {
68  return 1 << bit;
69  }
int bit
bit
Definition: JDAQ.hh:145
void KM3NETDAQ::JBit::set ( int &  mask) const
inline

Set bit in given bit mask.

Parameters
maskbit mask (I/O)

Definition at line 77 of file JDAQ.hh.

78  {
79  mask |= get();
80  }
void KM3NETDAQ::JBit::unset ( int &  mask) const
inline

Unset bit in given bit mask.

Parameters
maskbit mask (I/O)

Definition at line 88 of file JDAQ.hh.

89  {
90  mask &= ~get();
91  }
int get() const
Get bit mask.
Definition: JDAQ.hh:66
void KM3NETDAQ::JBit::set ( int &  mask,
const bool  value 
) const
inline

Set bit in given bit mask.

Parameters
maskbit mask (I/0)
valuebit status

Definition at line 100 of file JDAQ.hh.

101  {
102  if (value)
103  set (mask);
104  else
105  unset(mask);
106  }
void set(int &mask) const
Set bit in given bit mask.
Definition: JDAQ.hh:77
void unset(int &mask) const
Unset bit in given bit mask.
Definition: JDAQ.hh:88
int KM3NETDAQ::JBit::write ( const int  value) const
inline

Write given value as bit mask.

Parameters
valuevalue
Returns
bit mask

Definition at line 115 of file JDAQ.hh.

116  {
117  return (value << bit) & get();
118  }
int bit
bit
Definition: JDAQ.hh:145
int KM3NETDAQ::JBit::read ( const int  mask) const
inline

Read given bit mask as value.

Parameters
maskbit mask
Returns
value

Definition at line 127 of file JDAQ.hh.

128  {
129  return (mask & get()) >> bit;
130  }
int bit
bit
Definition: JDAQ.hh:145
bool KM3NETDAQ::JBit::has ( const int  mask) const
inline

Test bit.

Parameters
maskbit mask
Returns
true if bit set; else false

Definition at line 139 of file JDAQ.hh.

140  {
141  return (mask & get()) != 0;
142  }

Member Data Documentation

int KM3NETDAQ::JBit::bit

bit

Definition at line 145 of file JDAQ.hh.


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