Deluge Firmware
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
OrderedResizeableArray Class Reference

#include <OrderedResizeableArray.h>

Inheritance diagram for OrderedResizeableArray:
Inheritance graph
Collaboration diagram for OrderedResizeableArray:
Collaboration graph

Public Member Functions

 OrderedResizeableArray (int newElementSize, int keyNumBits, int newKeyOffset=0, int newMaxNumEmptySpacesToKeep=16, int newNumExtraSpacesToAllocate=15)
 
int search (int32_t key, int comparison, int rangeBegin, int rangeEnd)
 
int search (int32_t key, int comparison, int rangeBegin=0)
 
int searchExact (int32_t key)
 
int insertAtKey (int32_t key, bool isDefinitelyLast=false)
 
void deleteAtKey (int32_t key)
 
void test ()
 
void testSequentiality (char const *errorCode)
 
void testDuplicates ()
 
int32_t getKeyAtIndex (int i)
 
void setKeyAtIndex (int32_t key, int i)
 
- Public Member Functions inherited from ResizeableArray
 ResizeableArray (int newElementSize, int newMaxNumEmptySpacesToKeep=16, int newNumExtrarSpacesToAllocate=15)
 
 ~ResizeableArray ()
 
void init ()
 
bool cloneFrom (ResizeableArray *other)
 
void empty ()
 
void swapStateWith (ResizeableArray *other)
 
void deleteAtIndex (int i, int numToDelete=1, bool mayShortenMemoryAfter=true)
 
bool ensureEnoughSpaceAllocated (int numAdditionalElementsNeeded)
 
int insertAtIndex (int i, int numToInsert=1, void *thingNotToStealFrom=NULL)
 
void swapElements (int i1, int i2)
 
void repositionElement (int iFrom, int iTo)
 
int beenCloned ()
 
void setMemory (void *newMemory, int newMemorySize)
 
void setStaticMemory (void *newMemory, int newMemorySize)
 
void moveElementsLeft (int oldStartIndex, int oldStopIndex, int distance)
 
void moveElementsRight (int oldStartIndex, int oldStopIndex, int distance)
 
void * getElementAddress (int index)
 
int getNumElements ()
 

Protected Member Functions

int32_t getKeyAtMemoryLocation (void *address)
 
void setKeyAtMemoryLocation (int32_t key, void *address)
 

Additional Inherited Members

- Public Attributes inherited from ResizeableArray
unsigned int elementSize
 
bool emptyingShouldFreeMemory
 
uint32_t staticMemoryAllocationSize
 
- Protected Attributes inherited from ResizeableArray
void * memory
 
int numElements
 
int memorySize
 
int memoryStart
 
bool lock
 

Constructor & Destructor Documentation

◆ OrderedResizeableArray()

OrderedResizeableArray::OrderedResizeableArray ( int  newElementSize,
int  keyNumBits,
int  newKeyOffset = 0,
int  newMaxNumEmptySpacesToKeep = 16,
int  newNumExtraSpacesToAllocate = 15 
)

Member Function Documentation

◆ deleteAtKey()

void OrderedResizeableArray::deleteAtKey ( int32_t  key)

◆ getKeyAtIndex()

int32_t OrderedResizeableArray::getKeyAtIndex ( int  i)
inline

◆ getKeyAtMemoryLocation()

int32_t OrderedResizeableArray::getKeyAtMemoryLocation ( void *  address)
inlineprotected

◆ insertAtKey()

int OrderedResizeableArray::insertAtKey ( int32_t  key,
bool  isDefinitelyLast = false 
)

◆ search() [1/2]

int OrderedResizeableArray::search ( int32_t  key,
int  comparison,
int  rangeBegin,
int  rangeEnd 
)

◆ search() [2/2]

int OrderedResizeableArray::search ( int32_t  key,
int  comparison,
int  rangeBegin = 0 
)
inline

◆ searchExact()

int OrderedResizeableArray::searchExact ( int32_t  key)

◆ setKeyAtIndex()

void OrderedResizeableArray::setKeyAtIndex ( int32_t  key,
int  i 
)
inline

◆ setKeyAtMemoryLocation()

void OrderedResizeableArray::setKeyAtMemoryLocation ( int32_t  key,
void *  address 
)
inlineprotected

◆ test()

void OrderedResizeableArray::test ( )

◆ testDuplicates()

void OrderedResizeableArray::testDuplicates ( )

◆ testSequentiality()

void OrderedResizeableArray::testSequentiality ( char const *  errorCode)

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