CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes | Friends
DTTFBitArray< N >::refToBit Class Reference

#include <DTTFBitArray.h>

Public Member Functions

refToBitflip ()
 
 operator int () const
 
refToBitoperator= (const int val)
 
refToBitoperator= (const refToBit &rtb)
 
int operator~ () const
 
 refToBit ()
 
 refToBit (DTTFBitArray &b, int pos)
 
 ~refToBit ()
 

Private Attributes

int _pos
 
unsigned * _word
 

Friends

class DTTFBitArray
 

Detailed Description

template<int N>
class DTTFBitArray< N >::refToBit

Definition at line 37 of file DTTFBitArray.h.

Constructor & Destructor Documentation

template<int N>
DTTFBitArray< N >::refToBit::refToBit ( )
inline

Definition at line 43 of file DTTFBitArray.h.

43 {}
template<int N>
DTTFBitArray< N >::refToBit::refToBit ( DTTFBitArray b,
int  pos 
)
inline

Definition at line 44 of file DTTFBitArray.h.

References DTTFBitArray< N >::refToBit::_pos, DTTFBitArray< N >::refToBit::_word, DTTFBitArray< N >::getPosInWord(), and DTTFBitArray< N >::getWord().

44  {
45  _word = &b.getWord(pos);
47  }
static int getPosInWord(const int pos)
Definition: DTTFBitArray.h:148
unsigned & getWord(const int pos)
Definition: DTTFBitArray.h:138
template<int N>
DTTFBitArray< N >::refToBit::~refToBit ( )
inline

Definition at line 48 of file DTTFBitArray.h.

48 {}

Member Function Documentation

template<int N>
refToBit& DTTFBitArray< N >::refToBit::flip ( )
inline

Definition at line 72 of file DTTFBitArray.h.

References DTTFBitArray< N >::refToBit::_pos, DTTFBitArray< N >::refToBit::_word, and DTTFBitArray< N >::getPosMask().

72  {
74  return *this;
75  }
static unsigned getPosMask(const int pos)
Definition: DTTFBitArray.h:154
template<int N>
DTTFBitArray< N >::refToBit::operator int ( ) const
inline

Definition at line 70 of file DTTFBitArray.h.

References DTTFBitArray< N >::refToBit::_pos, DTTFBitArray< N >::refToBit::_word, and DTTFBitArray< N >::getPosMask().

70 { return ((*_word)&getPosMask(_pos))!=0; }
static unsigned getPosMask(const int pos)
Definition: DTTFBitArray.h:154
template<int N>
refToBit& DTTFBitArray< N >::refToBit::operator= ( const int  val)
inline

Definition at line 50 of file DTTFBitArray.h.

References DTTFBitArray< N >::refToBit::_pos, DTTFBitArray< N >::refToBit::_word, and DTTFBitArray< N >::getPosMask().

50  {
51  if(val) {
52  *_word |= getPosMask(_pos);
53  } else {
54  *_word &= ~(getPosMask(_pos));
55  }
56  return *this;
57  }
static unsigned getPosMask(const int pos)
Definition: DTTFBitArray.h:154
template<int N>
refToBit& DTTFBitArray< N >::refToBit::operator= ( const refToBit rtb)
inline

Definition at line 59 of file DTTFBitArray.h.

References DTTFBitArray< N >::refToBit::_pos, DTTFBitArray< N >::refToBit::_word, and DTTFBitArray< N >::getPosMask().

59  {
60  if( (*(rtb._word) & getPosMask(rtb._pos)) ) {
61  *_word |= getPosMask(_pos);
62  } else {
63  *_word &= ~getPosMask(_pos);
64  }
65  return *this;
66  }
static unsigned getPosMask(const int pos)
Definition: DTTFBitArray.h:154
template<int N>
int DTTFBitArray< N >::refToBit::operator~ ( ) const
inline

Definition at line 68 of file DTTFBitArray.h.

References DTTFBitArray< N >::refToBit::_pos, DTTFBitArray< N >::refToBit::_word, and DTTFBitArray< N >::getPosMask().

68 { return ((*_word)&getPosMask(_pos))==0; }
static unsigned getPosMask(const int pos)
Definition: DTTFBitArray.h:154

Friends And Related Function Documentation

template<int N>
friend class DTTFBitArray
friend

Definition at line 38 of file DTTFBitArray.h.

Member Data Documentation

template<int N>
int DTTFBitArray< N >::refToBit::_pos
private
template<int N>
unsigned* DTTFBitArray< N >::refToBit::_word
private