Zen API
 All Classes Files Functions Variables Typedefs Friends Macros Modules Pages
kBitArray Class Reference

Description

Represents a 1D array of bits.

The kBitArray class represents a 1D array of bits. kBitArray is similar in spirit to kArray1<kBool>, but is optimized for space and provides a set of convenient bitwise operations.

kBitArray supports the kObject_Clone, kObject_Dispose, kObject_Equals, and kObject_Size methods.

kBitArray supports the kdat6 serialization protocol.

Inheritance diagram for kBitArray:
Inheritance graph

Public Member Functions

kStatus kBitArray_Allocate (kBitArray array, kSize length)
 Reallocates the array item buffer. More...
 
kStatus kBitArray_And (kBitArray array, kBitArray other)
 Performs bitwise-and over all bits from the specified arrays. More...
 
kStatus kBitArray_Assign (kBitArray array, kBitArray source)
 Copies the source array. More...
 
kBool kBitArray_At (kBitArray array, kSize index)
 Returns the specified item in the array. More...
 
kStatus kBitArray_Construct (kBitArray *array, kSize length, kAlloc allocator)
 Constructs a kBitArray object. More...
 
k64u kBitArray_FalseCount (kBitArray array)
 Counts the number of bits in the array that are set to kFALSE. More...
 
kStatus kBitArray_Item (kBitArray array, kSize index, kBool *value)
 Gets the value of an item. More...
 
kSize kBitArray_Length (kBitArray array)
 Returns the array length, in bits. More...
 
kStatus kBitArray_Not (kBitArray array)
 Inverts all bits. More...
 
kStatus kBitArray_Or (kBitArray array, kBitArray other)
 Performs bitwise-or over all bits from the specified arrays. More...
 
kStatus kBitArray_Resize (kBitArray array, kSize length)
 Resizes the internal array item buffer. More...
 
kStatus kBitArray_SetAll (kBitArray array, kBool value)
 Sets all array elements to the specified value. More...
 
kStatus kBitArray_SetItem (kBitArray array, kSize index, kBool value)
 Sets the value of the specified item. More...
 
k64u kBitArray_TrueCount (kBitArray array)
 Counts the number of bits in the array that are set to kTRUE. More...
 
kStatus kBitArray_Xor (kBitArray array, kBitArray other)
 Performs bitwise-xor over all bits from the specified arrays. More...
 
- Public Member Functions inherited from kObject
kAlloc kObject_Alloc (kObject object)
 Gets the memory allocator associated with this object. More...
 
kAllocTrait kObject_AllocTraits (kObject object)
 Gets the bitset of allocator traits for any allocators used within this object, including aggregated child elements. More...
 
kStatus kObject_Clone (kObject *object, kObject source, kAlloc objectAllocator)
 Constructs a new object by copying an existing object, including any aggregated child elements. More...
 
kStatus kObject_Clone (kObject *object, kObject source, kAlloc objectAllocator, kAlloc valueAllocator, kObject context=kNULL)
 Constructs a new object by copying an existing object, including any aggregated child elements. More...
 
kStatus kObject_Destroy (kObject object)
 Destroys the object. More...
 
kStatus kObject_Dispose (kObject object)
 Destroys the object and any aggregated child elements. More...
 
kBool kObject_Equals (kObject object, kObject other)
 Determines whether the object is equal to another object. More...
 
kBool kObject_HasForeignData (kObject object)
 Reports whether the object, including aggregated child elements, contains any foreign memory references. More...
 
kSize kObject_HashCode (kObject object)
 Gets a hash code representing the state of this object. More...
 
kBool kObject_HasShared (kObject object)
 Reports whether an object or any of its aggregated child elements has a reference count greater than one. More...
 
kBool kObject_Is (kObject object, kType type)
 Determines whether this object is an instance of the specified type. More...
 
kBool kObject_IsShared (kObject object)
 Reports whether the object is currently shared (reference count greater than one). More...
 
kStatus kObject_SetPool (kObject object, kObjectPool pool)
 Sets the object pool associated with this object. More...
 
kStatus kObject_Share (kObject object)
 Increments the reference count associated with this object. More...
 
kSize kObject_Size (kObject object)
 Estimates the memory consumed by this object, including any aggregated child elements. More...
 
kType kObject_Type (kObject object)
 Returns the type of the object. More...
 

Additional Inherited Members

- Protected Member Functions inherited from kObject
kStatus kObject_FreeMem (kObject object, void *mem)
 Protected method called by derived classes to free memory using the object's allocator. More...
 
kStatus kObject_FreeMemRef (kObject object, void *mem)
 Protected method called by derived classes to free memory (and reset the provided memory pointer to kNULL) using the object's allocator. More...
 
kStatus kObject_GetMem (kObject object, kSize size, void *mem)
 Protected method called by derived classes to allocate memory using the object's allocator. More...
 
kStatus kObject_GetMemZero (kObject object, kSize size, void *mem)
 Protected method called by derived classes to allocate and zero memory using the object's allocator. More...
 
kStatus kObject_Init (kObject object, kType type, kAlloc alloc)
 Protected method called by derived classes to initialize the kObject base class. More...
 
kAllocTrait kObject_VAllocTraits (kObject object)
 Protected virtual method that gets the bitset of allocator traits for any allocators used within this object, including aggregated child elements. More...
 
kStatus kObject_VClone (kObject object, kObject source, kAlloc valueAllocator, kObject context)
 Protected virtual method that clones (makes a deep copy of) the specified source object. More...
 
kStatus kObject_VDisposeItems (kObject object)
 Protected virtual method that destroys any aggregated child objects associated with a collection. More...
 
kBool kObject_VEquals (kObject object, kObject other)
 Protected virtual method that compares two objects for equality. More...
 
kSize kObject_VHashCode (kObject object)
 Protected virtual method that calculates a hash code representing the object instance. More...
 
kBool kObject_VHasShared (kObject object)
 Protected virtual method that reports whether an object or any of its aggregated child elements has a reference count greater than one. More...
 
kStatus kObject_VRelease (kObject object)
 Protected virtual method that deallocates any resources owned by the object. More...
 
kSize kObject_VSize (kObject object)
 Protected virtual method that calculates the total size (in bytes) of the object instance. More...
 

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