![]() |
Gray C++ Libraries
0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
|
#include <cArraySort.h>
Public Types | |
| typedef cArraySorted< TYPE, TYPE_PTR, TYPE_KEY > | SUPER_t |
| typedef SUPER_t::REF_t | REF_t |
| typedef SUPER_t::ELEM_t | ELEM_t |
Public Types inherited from Gray::cArraySorted< TYPE, TYPE, TYPE > | |
| typedef cArrayTyped< TYPE, TYPE > | SUPER_t |
| typedef TYPE | KEY_t |
| typedef SUPER_t::REF_t | REF_t |
Public Types inherited from Gray::cArrayTyped< TYPE, TYPE > | |
| typedef CArray< TYPE, TYPE > | SUPER_t |
| typedef cArrayTyped< TYPE, TYPE > | THIS_t |
| typedef ITERATE_t | iterator |
| typedef ITERATE_t | const_iterator |
| typedef TYPE | ELEM_t |
| What type is stored. More... | |
| typedef TYPE | REF_t |
| How to refer to this? value or ref or pointer? More... | |
Public Member Functions | |
| virtual | ~cArraySortFacade () |
| bool | IsValidIndex (ITERATE_t i) const noexcept |
| REF_t | GetAt (ITERATE_t index) const noexcept |
| REF_t | GetAtCheck (ITERATE_t nIndex) const |
| TYPE_PTR | FindArgForKey (TYPE_KEY key1) const noexcept |
| ITERATE_t | FindIForAC_BRUTEFORCE (const TYPE_PTR pData) const |
| ELEM_t | PopHead () |
| ELEM_t | PopTail () |
| void | DeleteAll () |
Public Member Functions inherited from Gray::cArraySorted< TYPE, TYPE, TYPE > | |
| virtual | ~cArraySorted () |
| ITERATE_t | FindINear (REF_t pNew, COMPARE_t &iCompareRes) const |
| ITERATE_t | FindINearKey (KEY_t key, COMPARE_t &iCompareRes) const |
| ITERATE_t | FindIForKey (KEY_t key) const |
| ITERATE_t | FindIFirstForKey (TYPE nKey) const |
| ITERATE_t | FindILastForKey (TYPE nKey) const |
| ITERATE_t | AddPresorted (ITERATE_t index, COMPARE_t iCompareRes, TYPE pNew) |
| bool | RemoveKey (TYPE key) |
| ITERATE_t | Add (TYPE pNew) |
| void | AddArray (const SUPER_t &a) |
Public Member Functions inherited from Gray::cArrayTyped< TYPE, TYPE > | |
| void | QSort () |
| cArrayTyped () noexcept | |
| cArrayTyped (const THIS_t &rArray) | |
| cArrayTyped (ITERATE_t iSize) | |
| virtual | ~cArrayTyped () |
| bool | isValidCheck () const noexcept |
| < memory allocation and structure definitions are valid. More... | |
| bool | IsValidIndex (ITERATE_t i) const noexcept |
| ITERATE_t | ClampValidIndex (ITERATE_t i) const noexcept |
| size_t | GetHeapStats (OUT ITERATE_t &iAllocCount) const noexcept |
| void | AssertValidIndex (ITERATE_t nIndex) const |
| const TYPE & | GetAtSecure (ITERATE_t nIndex) const |
| TYPE & | ElementAtSecure (ITERATE_t nIndex) |
| REF_t | ConstElementAt (ITERATE_t nIndex) const |
| TYPE & | operator[] (ITERATE_t nIndex) |
| const TYPE & | operator[] (ITERATE_t nIndex) const |
| TYPE & | Head () |
| TYPE & | Tail () |
| TYPE & | ElementAtHead () |
| TYPE & | ElementAtTail () |
| REF_t | ConstHead () const |
| REF_t | ConstTail () const |
| REF_t | GetAtTail () |
| void | UnLinkIndex (ITERATE_t nIndex) |
| void | Swap (ITERATE_t i, ITERATE_t j) |
| void | SetCopy (const cArrayTyped< TYPE, TYPE > &aValues) |
| const cArrayTyped< TYPE, TYPE > & | operator= (const cArrayTyped< TYPE, TYPE > &aValues) |
| ITERATE_t | FindIFor (TYPE arg) const |
| bool | HasArg (TYPE arg) const |
| void | RemoveLast () |
| ELEM_t | PopHead () |
| ELEM_t | PopTail () |
| bool | RemoveArg (TYPE arg) |
| void | UnLinkArg (TYPE arg) |
| ITERATE_t | AddTail (TYPE newElement) |
| ITERATE_t | PushTail (TYPE newElement) |
| void | AddHead (TYPE newElement) |
| TYPE * | get_DataWork () const |
| void | AddArray (const SUPER_t &src) |
| bool | IsEqualArray (const SUPER_t &aValues) const |
| bool | isArraySorted () const |
| bool | isArraySortedND () const |
Public Member Functions inherited from Gray::CArray< TYPE, ARG_TYPE > | |
| CArray () noexcept | |
| CArray (THIS_t &&ref) noexcept | |
| virtual | ~CArray () |
| bool | IsValidMallocSize () const noexcept |
| ITERATE_t | GetSize () const noexcept |
| ITERATE_t | GetUpperBound () const noexcept |
| bool | IsEmpty () const noexcept |
| void | SetSize (ITERATE_t nNewSize) |
| ITERATE_t | GetMallocSize () const noexcept |
| void | RemoveAll () |
| Clean up. More... | |
| const TYPE & | GetAt (ITERATE_t nIndex) const |
| TYPE & | ElementAt (ITERATE_t nIndex) |
| void | SetAt (ITERATE_t nIndex, ARG_TYPE newElement) |
| const TYPE * | GetData () const |
| TYPE * | GetData () |
| void | SetDataArrayPtr (TYPE *pData, ITERATE_t nSize) |
| void | SetAtGrow (ITERATE_t nIndex, ARG_TYPE newElement) |
| ITERATE_t | Add (ARG_TYPE newElement) |
| void | Copy (const CArray &src) |
| TYPE & | operator[] (ITERATE_t nIndex) |
| const TYPE & | operator[] (ITERATE_t nIndex) const |
| void | InsertAt (ITERATE_t nIndex, ARG_TYPE newElement) |
| void | RemoveAt (ITERATE_t nIndex) |
| void | RemoveAt (ITERATE_t nIndex, ITERATE_t iQty) |
| void | MoveElement (ITERATE_t iFrom, ITERATE_t iTo) |
Public Member Functions inherited from Gray::CObject | |
| virtual | ~CObject () |
| virtual void | AssertValid () const |
| < memory allocation and structure definitions are valid. More... | |
| virtual void | Serialize (cArchive &a) |
Protected Member Functions | |
| virtual COMPARE_t | CompareData (REF_t pData1, REF_t pData2) const noexcept override |
Protected Member Functions inherited from Gray::cArraySorted< TYPE, TYPE, TYPE > | |
| virtual COMPARE_t | CompareKey (KEY_t key1, REF_t Data2) const |
| bool | RemoveArgKey (REF_t pObj, KEY_t key) |
Protected Member Functions inherited from Gray::cArrayTyped< TYPE, TYPE > | |
| virtual COMPARE_t | CompareData (REF_t Data1, REF_t Data2) const noexcept |
| ITERATE_t | QSortPartition (ITERATE_t iLeft, ITERATE_t iRight) |
| void | QSort (ITERATE_t iLeft, ITERATE_t iRight) |
Protected Member Functions inherited from Gray::CArray< TYPE, ARG_TYPE > | |
| bool | IsValidIndex (ITERATE_t i) const noexcept |
Additional Inherited Members | |
Protected Attributes inherited from Gray::CArray< TYPE, ARG_TYPE > | |
| TYPE * | m_pData |
| the actual array of data More... | |
| ITERATE_t | m_nSize |
| Number of elements (upperBound - 1) More... | |
TYPE = the pointer or facade we are storing. A sorted array of some TYPE_PTR pointers. overload this Default Sort by memcmp()
| typedef SUPER_t::ELEM_t Gray::cArraySortFacade< TYPE, TYPE_PTR, TYPE_KEY >::ELEM_t |
| typedef SUPER_t::REF_t Gray::cArraySortFacade< TYPE, TYPE_PTR, TYPE_KEY >::REF_t |
| typedef cArraySorted<TYPE, TYPE_PTR, TYPE_KEY> Gray::cArraySortFacade< TYPE, TYPE_PTR, TYPE_KEY >::SUPER_t |
|
inlinevirtual |
|
inlineoverrideprotectedvirtualnoexcept |
default = Binary compare the whole thing. cValT::Compare(*pData1,*pData2) ??
Reimplemented in Gray::cArraySortName< TYPE, _TYPECH >, Gray::cArraySortName< GrayLib::cFileChangeElem >, Gray::cArraySortName< GrayGUI::cXCheckBox >, Gray::cArraySortName< GrayLib::cSyncOp >, Gray::cArraySortName< Gray3D::cXTextureFile >, Gray::cArraySortName< GrayLib::cSQLDriver, char >, Gray::cArraySortName< TYPE, TCHAR >, Gray::cArraySortName< GrayLib::cScriptablePropDynamic >, Gray::cArraySortName< GrayLib::cManifestElem >, Gray::cArraySortName< GrayLib::cLogFileTail >, Gray::cArraySortName< GrayLib::cTimeScheduleSpecialEval, char >, Gray::cArraySortName< Gray::cAtomDef, ATOMCHAR_t >, Gray::cArraySortValue< TYPE, TYPE_KEY >, Gray::cArraySortValue< Gray::cMemPage, UINT_PTR >, Gray::cArraySortValue< GrayLib::cTimerInst, TIMESYS_t >, Gray::cArraySortValue< cXObjEventSink, EVENTPRI_TYPE >, Gray::cArraySortValue< TYPE, ITERATE_t >, Gray::cArraySortHash< TYPE, _TYPE_HASH >, Gray::cArraySortHash< GrayGUI::cXDialogPlacementObj >, Gray::cArraySortHash< TYPE, HASHCODE_t >, Gray::cArraySortHash< GrayLib::cNetServerConnection >, Gray::cArraySortHash< GrayLib::cTimerInst, HASHCODE_t >, Gray::cArraySortHash< GrayLib::cNetHostRangeX4 >, Gray::cArraySortHash< GrayLib::cVarTuple, ATOMCODE_t >, Gray::cArraySortHash< GrayLib::cThread, THREADID_t >, Gray::cArraySortHash< GrayLib::cNetServerPort >, Gray::cArraySortHash< GrayJS::cJSXObject >, Gray::cArraySortHash< Gray::cAtomDef, ATOMCODE_t >, Gray::cArraySortPtrName< TYPE, _TYPECH >, Gray::cArraySortPtrName< const GrayLib::cScriptableProp, ATOMCHAR_t >, Gray::cArraySortFacadeHash< TYPE, TYPE_PTR, _TYPE_HASH >, Gray::cArraySortFacadeHash< TYPE *, TYPE *, TYPE_KEY >, Gray::cArraySortFacadeValue< TYPE, TYPE_PTR, TYPE_KEY >, and Gray::cArraySortFacadeValue< TYPE *, TYPE *, TYPE_KEY >.
|
inline |
|
inlinenoexcept |
|
inline |
Find the index of a specified entry. same as FindIFor() but arg is const TYPE*. Don't use this brute force version . Use the FindIForAK instead !
|
inlinenoexcept |
|
inline |
|
inlinenoexcept |
|
inline |
|
inline |