awUtil.BitFieldAuto Class Reference


Detailed Description

awUtil.BitFieldAuto acts as an array of booleans with no maximum size.

It will automatically resize when you set the items. Note that the penalty for the automatic resize is that some operations do not make sense (operator~() or setAll() for example).

#include <classaw_util_1_1_bit_field_auto.h>

List of all members.

Public Member Functions

  __init__ ()
  The default constructor.
  __init__ (int reserveSize)
  Allocate enough space for resSize bits.
  __del__ ()
  __init__ (BitFieldAuto)
BitFieldAuto  operator= (BitFieldAuto)
  reserveSize (int)
  resetAll ()
int  maxAvailableBits ()
  This value will change as the bitfield grows.
BitRefAuto  operator[] (int)
  Index operator that returns a reference appropriate for LHS usage.
bool  operator[] (int)
  Constant version of the index operator behaving as testBit(i).
bool  operator== (BitFieldAuto)
bool  operator!= (BitFieldAuto)
  Not-equals operator uses the operator== to reduce code duplication.
BitFieldAuto  setBit (int, bool)
bool  testBit (int)
  Return true if the bit is set, false otherwise.
bool  anySet ()
BitFieldAuto  operator^ (BitFieldAuto mask)
BitFieldAuto  operator& (BitFieldAuto mask)
BitFieldAuto  operator| (BitFieldAuto mask)
BitFieldAuto  operator^= (BitFieldAuto mask)
BitFieldAuto  operator&= (BitFieldAuto mask)
BitFieldAuto  operator|= (BitFieldAuto mask)
bool  testBits (BitFieldAuto)

Member Function Documentation

awUtil.BitFieldAuto.__init__ ( )

The default constructor.

Allocate a single element, so that we will have 8 * sizeof(unsigned int) bits ready to go. If you have a better size hint, use the other constructor.

awUtil.BitFieldAuto.__init__ ( int  reserveSize )

Allocate enough space for resSize bits.

None are set, and this will not change the behaviour of the class, but would potentially optimize the memory allocation.

awUtil.BitFieldAuto.__del__ ( )
awUtil.BitFieldAuto.__init__ ( BitFieldAuto  )
BitFieldAuto awUtil.BitFieldAuto.operator= ( BitFieldAuto  )
awUtil.BitFieldAuto.reserveSize ( int  )
awUtil.BitFieldAuto.resetAll ( )
int awUtil.BitFieldAuto.maxAvailableBits ( )

This value will change as the bitfield grows.

BitRefAuto awUtil.BitFieldAuto.operator[] ( int  )

Index operator that returns a reference appropriate for LHS usage.

This is why you can do "bits[8] = true;" or something like that.

bool awUtil.BitFieldAuto.operator[] ( int  )

Constant version of the index operator behaving as testBit(i).

bool awUtil.BitFieldAuto.operator== ( BitFieldAuto  )
bool awUtil.BitFieldAuto.operator!= ( BitFieldAuto  )

Not-equals operator uses the operator== to reduce code duplication.

BitFieldAuto awUtil.BitFieldAuto.setBit ( int  ,
bool   
)
bool awUtil.BitFieldAuto.testBit ( int  )

Return true if the bit is set, false otherwise.

Make sure that the argument is non-negative or bad things happen. If the value of the argument is beyond the allocated bit count, we happily return false.

bool awUtil.BitFieldAuto.anySet ( )
BitFieldAuto awUtil.BitFieldAuto.operator^ ( BitFieldAuto  mask )
BitFieldAuto awUtil.BitFieldAuto.operator& ( BitFieldAuto  mask )
BitFieldAuto awUtil.BitFieldAuto.operator| ( BitFieldAuto  mask )
BitFieldAuto awUtil.BitFieldAuto.operator^= ( BitFieldAuto  mask )
BitFieldAuto awUtil.BitFieldAuto.operator&= ( BitFieldAuto  mask )
BitFieldAuto awUtil.BitFieldAuto.operator|= ( BitFieldAuto  mask )
bool awUtil.BitFieldAuto.testBits ( BitFieldAuto  )

awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto
awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto awUtil.BitFieldAuto