Jpp  15.0.1
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Protected Attributes | Friends | List of all members
JTRIGGER::JPMTMask Class Reference

Auxiliary class for pmt mask. More...

#include <JPMTMask.hh>

Public Member Functions

 JPMTMask ()
 Default constructor. More...
 
 JPMTMask (const JPMTMask_t mask)
 Constructor. More...
 
 JPMTMask (const std::string &buffer)
 Constructor. More...
 
virtual ~JPMTMask ()
 Virtual destructor. More...
 
JPMTMask_t getPMTMask () const
 Get pmt bit pattern. More...
 
JPMTMaskaddPMTMask (const JPMTMask_t mask)
 Add pmt pmt mask. More...
 
JPMTMaskaddPMTMask (const JPMTMask &mask)
 Add pmt pmt mask. More...
 
JPMTMaskaddPMTBit (const unsigned int bit)
 Add pmt bit. More...
 
JPMTMaskaddPMT (const JPMTReadoutAddress &channel)
 Add pmt channel. More...
 
bool hasPMTBit (const unsigned int bit) const
 Check pmt bit. More...
 
bool hasPMT (const JPMTReadoutAddress &channel) const
 check pmt More...
 
std::string toString () const
 Convert pmt mask. More...
 
virtual JReaderread (JReader &in)
 
virtual JWriterwrite (JWriter &out) const
 

Static Public Member Functions

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

Protected Attributes

JPMTMask_t pmt_mask
 

Friends

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

Detailed Description

Auxiliary class for pmt mask.

Definition at line 57 of file JPMTMask.hh.

Constructor & Destructor Documentation

JTRIGGER::JPMTMask::JPMTMask ( )
inline

Default constructor.

Definition at line 62 of file JPMTMask.hh.

62  :
63  pmt_mask(0)
64  {}
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
JTRIGGER::JPMTMask::JPMTMask ( const JPMTMask_t  mask)
inline

Constructor.

Parameters
maskpmt mask

Definition at line 72 of file JPMTMask.hh.

72  :
73  pmt_mask(mask)
74  {}
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
JTRIGGER::JPMTMask::JPMTMask ( const std::string &  buffer)
inline

Constructor.

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

Definition at line 82 of file JPMTMask.hh.

82  :
83  pmt_mask(valueOf(buffer).getPMTMask())
84  {}
JPMTMask_t getPMTMask() const
Get pmt bit pattern.
Definition: JPMTMask.hh:99
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
static JPMTMask valueOf(const std::string &buffer)
Extract pmt mask.
Definition: JPMTMask.hh:183
virtual JTRIGGER::JPMTMask::~JPMTMask ( )
inlinevirtual

Virtual destructor.

Definition at line 90 of file JPMTMask.hh.

91  {}

Member Function Documentation

JPMTMask_t JTRIGGER::JPMTMask::getPMTMask ( ) const
inline

Get pmt bit pattern.

Returns
pmt mask

Definition at line 99 of file JPMTMask.hh.

100  {
101  return pmt_mask;
102  }
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
JPMTMask& JTRIGGER::JPMTMask::addPMTMask ( const JPMTMask_t  mask)
inline

Add pmt pmt mask.

Parameters
maskpmt mask
Returns
pmt mask

Definition at line 111 of file JPMTMask.hh.

112  {
113  pmt_mask |= mask;
114 
115  return *this;
116  }
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
JPMTMask& JTRIGGER::JPMTMask::addPMTMask ( const JPMTMask mask)
inline

Add pmt pmt mask.

Parameters
maskpmted mask
Returns
pmted mask

Definition at line 125 of file JPMTMask.hh.

126  {
127  return addPMTMask(mask.getPMTMask());
128  }
JPMTMask_t getPMTMask() const
Get pmt bit pattern.
Definition: JPMTMask.hh:99
JPMTMask & addPMTMask(const JPMTMask_t mask)
Add pmt pmt mask.
Definition: JPMTMask.hh:111
JPMTMask& JTRIGGER::JPMTMask::addPMTBit ( const unsigned int  bit)
inline

Add pmt bit.

Parameters
bitpmt bit
Returns
pmt mask

Definition at line 136 of file JPMTMask.hh.

137  {
139 
140  return *this;
141  }
JPMTMask_t getPMTMask(const unsigned int bit)
Convert pmt bit to pmt mask.
Definition: JPMTMask.hh:45
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
JPMTMask& JTRIGGER::JPMTMask::addPMT ( const JPMTReadoutAddress channel)
inline

Add pmt channel.

Parameters
channelpmt readout channel
Returns
pmt mask

Definition at line 149 of file JPMTMask.hh.

150  {
151  return addPMTBit(channel.getTDC());
152  }
JPMTMask & addPMTBit(const unsigned int bit)
Add pmt bit.
Definition: JPMTMask.hh:136
bool JTRIGGER::JPMTMask::hasPMTBit ( const unsigned int  bit) const
inline

Check pmt bit.

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

Definition at line 161 of file JPMTMask.hh.

162  {
163  return pmt_mask & JTRIGGER::getPMTMask(bit);
164  }
JPMTMask_t getPMTMask(const unsigned int bit)
Convert pmt bit to pmt mask.
Definition: JPMTMask.hh:45
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
bool JTRIGGER::JPMTMask::hasPMT ( const JPMTReadoutAddress channel) const
inline

check pmt

Parameters
channelPMT channel
Returns
true if PMT is selected; else false

Definition at line 172 of file JPMTMask.hh.

173  {
174  return hasPMTBit(channel.getTDC());
175  }
bool hasPMTBit(const unsigned int bit) const
Check pmt bit.
Definition: JPMTMask.hh:161
static JPMTMask JTRIGGER::JPMTMask::valueOf ( const std::string &  buffer)
inlinestatic

Extract pmt mask.

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

Definition at line 183 of file JPMTMask.hh.

184  {
186 
187  unsigned int bit = 0;
188 
189  for (std::string::const_reverse_iterator i = buffer.rbegin(); i != buffer.rend() && bit != NUMBER_OF_PMT_BITS; ++i, ++bit) {
190  if (*i == '1') {
191  pmt_mask.addPMTBit(bit);
192  }
193  }
194 
195  return pmt_mask;
196  }
Auxiliary class for pmt mask.
Definition: JPMTMask.hh:57
JPMTMask & addPMTBit(const unsigned int bit)
Add pmt bit.
Definition: JPMTMask.hh:136
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
static const unsigned int NUMBER_OF_PMT_BITS
Number of pmt bits.
Definition: JPMTMask.hh:36
std::string JTRIGGER::JPMTMask::toString ( ) const
inline

Convert pmt mask.

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

Definition at line 204 of file JPMTMask.hh.

205  {
206  std::string buffer(NUMBER_OF_PMT_BITS, '0');
207 
208  unsigned int bit = 0;
209 
210  for (std::string::reverse_iterator i = buffer.rbegin(); i != buffer.rend() && bit != NUMBER_OF_PMT_BITS; ++i, ++bit) {
211  if (hasPMTBit(bit)) {
212  *i = '1';
213  }
214  }
215 
216  return buffer;
217  }
bool hasPMTBit(const unsigned int bit) const
Check pmt bit.
Definition: JPMTMask.hh:161
static const unsigned int NUMBER_OF_PMT_BITS
Number of pmt bits.
Definition: JPMTMask.hh:36
virtual JReader& JTRIGGER::JPMTMask::read ( JReader in)
inlinevirtual

Definition at line 276 of file JPMTMask.hh.

277  {
278  in>>this->pmt_mask;
279 
280  return in;
281 
282  }
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
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 source JAcoustics sh $DETECTOR_ID CHECK_EXIT_CODE typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in
Definition: JCanberra.sh:41
virtual JWriter& JTRIGGER::JPMTMask::write ( JWriter out) const
inlinevirtual

Definition at line 285 of file JPMTMask.hh.

286  {
287  out << this->pmt_mask;
288 
289  return out;
290  }
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
static int JTRIGGER::JPMTMask::sizeOf ( )
inlinestatic

Get size of object.

Returns
number of bytes

Definition at line 298 of file JPMTMask.hh.

299  {
300  return sizeof(JPMTMask_t);
301  }
unsigned int JPMTMask_t
Type definition of pmt mask.
Definition: JPMTMask.hh:30

Friends And Related Function Documentation

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

Read pmt mask from input.

Parameters
ininput stream
maskpmt mask
Returns
input stream

Definition at line 227 of file JPMTMask.hh.

228  {
229  return in >> mask.pmt_mask;
230  }
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
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 source JAcoustics sh $DETECTOR_ID CHECK_EXIT_CODE typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in
Definition: JCanberra.sh:41
std::ostream& operator<< ( std::ostream &  out,
const JPMTMask mask 
)
friend

Write pmt mask to output.

Parameters
outoutput stream
maskpmt mask
Returns
output stream

Definition at line 240 of file JPMTMask.hh.

241  {
242  return out << mask.pmt_mask;
243  }
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
JReader& operator>> ( JReader in,
JPMTMask mask 
)
friend

Read JPMTMask from input.

Parameters
inJReader
maskJPMTMask
Returns
JReader

Definition at line 253 of file JPMTMask.hh.

254  {
255  in >> mask.pmt_mask;
256 
257  return in;
258  }
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306
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 source JAcoustics sh $DETECTOR_ID CHECK_EXIT_CODE typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in
Definition: JCanberra.sh:41
JWriter& operator<< ( JWriter out,
const JPMTMask mask 
)
friend

Write JPMTMask to output.

Parameters
outJWriter
maskJPMTMask
Returns
JWriter

Definition at line 268 of file JPMTMask.hh.

269  {
270  out << mask.pmt_mask;
271 
272  return out;
273  }
JPMTMask_t pmt_mask
Definition: JPMTMask.hh:306

Member Data Documentation

JPMTMask_t JTRIGGER::JPMTMask::pmt_mask
protected

Definition at line 306 of file JPMTMask.hh.


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