class AArray : public ABaseElement
Base array object. Functions as a BYTE array.
Method Description
BYTE &operator []
(
   int iBYTEPos
) public
Access member that will retrieve a reference to the BYTE and allow assignment of data.
Returns: Modifiable reference to the actual data element.
AArray &operator =
(
   const AArray &aSource
) public
Copy operator.

Returns: Reference to the current object.
virtual int aGetAt
(
   int iPos
) public
Retrieves element number {iPos}.

Returns: Value of the element.
virtual void aSetAt
(
   int iPos,
   int iState,
   int iMode=BLIT_COPY
) public
Sets the {iPos} element to {iState} using {iMode} logical operation.
{iMode}={BLIT_COPY, BLIT_AND, BLIT_OR, BLIT_XOR}

Returns: Nothing.
virtual int aIsSet
(
   int iPos
) public
Checks the state of element {iPos}.

Returns: Non-zero if set.
void aSetRange
(
   int iState=0x0,
   int iMode=BLIT_COPY,
   int iStart=0x0,
   int iEnd=-0x1
) public
Performs a set operation on a range of the array. Default behavior sets all elements to 0x0.

Returns: Nothing.
void aSetBYTEAt
(
   int iBYTEPos,
   BYTE bMask,
   int iMode = BLIT_COPY
) public
BYTE specific access method. Useful for setting BYTEs from child objects.

Returns: Nothing.
BYTE aGetBYTEAt
(
   int iBYTEPos
) public
BYTE specific access method. Useful for accessing BYTEs from child-objects.

Returns: Retrieves the BYTE at {iBYTEPos}.
virtual void aSetFrom
(
   const void *pcvSource,
   int iLength
) public
Given {pcvSource} and its size {iLength}, the current object is created from this source.

Returns: Nothing.
virtual int aSetSize
(
   int iNewSize,
   int iRealloc=0x0
) public
Dynamically resizes the array. If {iRealloc} is true and the new array is created from a new block; otherwise if a new size is smaller reallocation is not performed. You may want to force reallocation if the new size is appreciably smaller and the memory is to be freed up.

Returns: Non-zero if allocation/resize was successful.
const BYTE *aGetArray
(
void
) public
Access method to the actual internal buffer.

Returns: Pointer to the constant internal buffer.
int aGetAllocSize
(
void
) public
Access method to the actual allocated size of the buffer. The size of the object may be smaller if it was resized and not forced to reallocate.

Returns: Allocated buffer size.
virtual int aGetSize
(
   void
)
Access method to the objects working size.
Returns: Object's size.
virtual void aBlit
(
   int iMyStart,
   AArray &aSource,
   int iSourceStart,
   int iLength=-1,
   int iMode=BLIT_COPY
) public
Method for blitting contents of this objects at {iMyStart} with another AArray-derived object at {iSOurceStart}. {iLength} elements will be blitted (object specific), using {iMode} for logical operation. If AArray is blitted with ABitArray, the source will contain BYTE values of 0s and 1s, however if ABitArray is blitted with AArray, then a value at a given offset in AArray will be truncated to a 0 or 1.

Returns: Nothing.
virtual void doOut
(
   AStreamOutput *pasOut
) public
Method inherited from ABaseElement. Outputs to {*pasOut} all members in hex form separated by a comma.

Returns: Nothing.
void aDoXBitmap
(
   AStreamOutput *pasOut
) public
Outputs to {*pasOut} the elements of this array in a format compatible with an X11 bitmap. Performs the necessary formatting and bit mirroring.

Returns: Nothing.
class ABitArray : public AArray
This object allows manipulation of a bit array as if it was an actual array. Methods from AArray have been overloaded to reflect bit-wise manipulation. Internally this is an array of BYTEs in size, and was created to conserve space when dealing with a bit-wise arrays.
Method Description
ABitArray &operator =
(
   const ABitArray &baSource
) public
Object specific copy operator.

Returns: Reference to this object.