Atlassian uses cookies to improve your browsing experience, perform analytics and research, and conduct advertising. Accept all cookies to indicate that you agree to our use of cookies on your device. Atlassian cookies and tracking notice, (opens new window)

Enlighten API 3.10 Documentation
Results will update as you type.
  • class Geo GeoBlueNoiseDiskPalette
  • class Geo GeoBlueNoiseRayPalette
  • class Geo GeoBoundingBox
  • class Geo GeoBoundingSphere
  • class Geo GeoBufferedFileStream
  • class Geo GeoBufferedInputStream
  • class Geo GeoCriticalSection
  • class Geo GeoDebugAllocator
  • class Geo GeoDelegateDestructor
  • class Geo GeoDeleteArrayDestructor
  • class Geo GeoDeleteDestructor
  • class Geo GeoDepthCubeMap
  • class Geo GeoEmbreeContext
  • class Geo GeoEqualCString
  • class Geo GeoEvent
  • class Geo GeoFileManager
  • class Geo GeoFileStream
  • class Geo GeoFixedBinarySearchMap
  • class Geo GeoFixedBinarySearchMapCompare
  • class Geo GeoFixedPoolAllocator
  • class Geo GeoFixedString
  • class Geo GeoFlattenAndPackResults
  • class Geo GeoFp16Texture
  • class Geo GeoFpControl
  • class Geo GeoFrameTime
  • class Geo GeoFreeDestructor
  • class Geo GeoGenericTexture
  • class Geo GeoGuid
  • class Geo GeoHalf
  • class Geo GeoHashConstHandle
  • class Geo GeoHashCString
  • class Geo GeoHashDefault
  • class Geo GeoHashHandle
  • class Geo GeoHashMap
  • class Geo GeoHashString
  • class Geo GeoImmutableArray
  • class Geo GeoInputEvent
  • class Geo GeoInstanceCount
  • class Geo GeoIntRange
  • class Geo GeoIntrusivePtr
  • class Geo GeoKeyValueArray
  • class Geo GeoLineSegment
  • class Geo GeoList
  • class Geo GeoMap
  • class Geo GeoMemoryDefault
  • class Geo GeoMemoryPool
  • class Geo GeoMemoryStream
  • class Geo GeoNonAABoundingBox
  • class Geo GeoNoopDestructor
  • class Geo GeoPair
  • class Geo GeoParametrisedPlane3
  • class Geo GeoPriorityQueue
  • class Geo GeoProgress
  • class Geo GeoQueue
  • class Geo GeoQueueEnumInterface
  • class Geo GeoRefArrayPtr
  • class Geo GeoRefCount
  • class Geo GeoRefPtr
  • class Geo GeoRefReleasePtr
  • class Geo GeoReleaseDestructor
  • class Geo GeoRGBXTexture
  • class Geo GeoScopedCSection
  • class Geo GeoSingleton
  • class Geo GeoSpatialHash
  • class Geo GeoString
  • class Geo GeoTimer
  • class Geo GeoTokenList
  • class Geo GeoTokenStream
  • class Geo GeoTriangle
  • class Geo GeoTriple
  • class Geo GeoUniqueDelegatePtr
  • class Geo GeoUniquePtr
  • class Geo GeoUniqueReleasePtr
  • class Geo GeoV128Texture
  • class Geo GeoVariant
  • class Geo GeoVirtualPageAllocator
  • class Geo GeoZLibFileStream
  • class Geo GoodRNG
  • class Geo IdentDataCompare
  • class Geo IdentVertLinkBuilder
  • class Geo IdxLink
    Calendars

You‘re viewing this with anonymous access, so some content might be blocked.
/
class Geo GeoKeyValueArray

    This is the documentation for Enlighten.

    class Geo GeoKeyValueArray

    Nov 21, 2019

    template<typename, typename>
    class Geo::GeoKeyValueArray

    A fast implementation of a set associative container, this one using a sorted array of key values to lookup a similar array of value pointers.

    • Requires that the key type support both operator< and operator<=. This could be removed by a small refactor of the binary search loop.

    • Requires that the value type be stored on the heap, as this class only stores pointers. Fixing this would require changing the class to work with iterators (to allow a sentinel value such as end() to represent a missing value).

    Functions

    Name Description
    Clear()

    Removes all entries from the collection. Remember, this object did not take ownership.

    Find(const TKey &)

    Find a value in the collection with TKey key.

    FindIndex(const TKey &)

    Find the index of a given key.

    GetKey(s32)

    Get the key at index i.

    GetSize()

    Returns the number of entries in the collection.

    GetValue(s32)

    Get the value at index i.

    GetValue(s32)

    Get the value at index i.

    Insert(const TKey &, TValue *)

    Insert an pointer to a TValue item into the container.

    operator[](s32)

    Get the value at index i.

    operator[](s32)

    Get the value at index i.

    Remove(const TKey &, s32 &)

    Remove the entry referenced to by key.

    Remove(const TKey &)

    Remove the entry referenced to by key.


    void Geo::GeoKeyValueArray< TKey, TValue >::Clear


    public: void Clear()


    Removes all entries from the collection. Remember, this object did not take ownership.


    TValue * Geo::GeoKeyValueArray< TKey, TValue >::Find


    public: TValue * Find
    (
        const TKey & key
    ) const


    Find a value in the collection with TKey key.

    O(logN) operation.

    Returns

    NULL on failure.


    s32 Geo::GeoKeyValueArray< TKey, TValue >::FindIndex


    public: s32 FindIndex
    (
        const TKey & key
    ) const


    Find the index of a given key.

    O(logN) operation.

    Returns

    -1 on failure.


    TKey Geo::GeoKeyValueArray< TKey, TValue >::GetKey


    public: TKey GetKey
    (
        s32 i
    ) const


    Get the key at index i.


    s32 Geo::GeoKeyValueArray< TKey, TValue >::GetSize


    public: s32 GetSize() const


    Returns the number of entries in the collection.


    const TValue* Geo::GeoKeyValueArray< TKey, TValue >::GetValue


    public: const TValue * GetValue
    (
        s32 i
    ) const


    Get the value at index i.


    TValue* Geo::GeoKeyValueArray< TKey, TValue >::GetValue


    public: TValue * GetValue
    (
        s32 i
    )


    Get the value at index i.


    s32 Geo::GeoKeyValueArray< TKey, TValue >::Insert


    public: s32 Insert
    (
        const TKey & key,
        TValue * value
    )


    Insert an pointer to a TValue item into the container.

    O(logN) operation.

    Returns

    -1 on failure.


    const TValue* Geo::GeoKeyValueArray< TKey, TValue >::operator[]


    public: const TValue * operator[]
    (
        s32 i
    ) const


    Get the value at index i.


    TValue* Geo::GeoKeyValueArray< TKey, TValue >::operator[]


    public: TValue * operator[]
    (
        s32 i
    )


    Get the value at index i.


    TValue * Geo::GeoKeyValueArray< TKey, TValue >::Remove


    public: TValue * Remove
    (
        const TKey & key,
        s32 & removedIndex
    )


    Remove the entry referenced to by key.

    removedIndex will be filled by previous index value (note that all indices are of course invalidated).

    Returns

    NULL if not found in collection, otherwise the value object.


    TValue* Geo::GeoKeyValueArray< TKey, TValue >::Remove


    public: TValue * Remove
    (
        const TKey & key
    )


    Remove the entry referenced to by key.

    Returns

    NULL if not found in collection, otherwise the value object.

    , multiple selections available,
    {"serverDuration": 9, "requestCorrelationId": "7c038ccb3e03425594cfd54bac9e6e62"}