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 GeoAutoPtr
  • class Geo GeoAutoReleaseArray
  • class Geo GeoAutoReleaseMap
  • class Geo GeoAutoReleasePtr
  • class Geo GeoBitArray
  • class Geo GeoBitStore
  • class Geo GeoBlueNoise
  • 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
    Calendars

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

    This is the documentation for Enlighten.

    class Geo GeoHashMap

    Nov 21, 2019

    template<typename, typename, typename, typename>
    class Geo::GeoHashMap

    The hash table.

    It's a straight forward key/value hash table where every key has one associated value (so it's a hash map, rather than a hash multi map).

    Typedefs

    Name Description
    GeoHashConstHandle< GeoHashMap > ConstHandle

    A const handle to an entry in the container.

    const DataType & DataParamType

    The Data type stored internally when passed as a parameter.

    GeoPair< KeyType, ValueType > DataType

    The Data type stored internally.

    GeoHashHandle< GeoHashMap > Handle

    A handle to an entry in the container.

    tHashFunctor HashFunctor

    The specified Hash Functor type.

    tKeyCmp KeyCompareFunctor

    The specified Key Compare type.

    const KeyType & KeyParamType

    The Key type when passed as a parameter.

    tKey KeyType

    The specified Key type.

    const ValueType & ValueParamType

    The Value type when passed as a parameter.

    tValue ValueType

    The specified Value type.

    Variables

    Name Description
    const u32 MemoryAlignment = GEO_ALIGN_OF(DataType) > GEO_ALIGN_OF(u32) ? GEO_ALIGN_OF(DataType) : GEO_ALIGN_OF(u32)

    The required alignment of the memory block passed to the appropriate GeoHashMap constructor.

    Functions

    Name Description
    ~GeoHashMap()

    Delete.

    CalcMemoryUsage(s32)

    Gets the amount of memory (in bytes) required by a GeoHashMap with the given capacity.

    Clear()

    Clears the table.

    Exists(KeyParamType)

    This returns true if the key exists.

    GeoHashMap(s32, float, HashFunctor, KeyCompareFunctor)

    Construct a hash table.

    GeoHashMap(void *, s32, HashFunctor, KeyCompareFunctor)

    Construct a hash table using the given block of memory for storage. The given block must be at least the size returned by CalcMemoryUsage() and be 4-byte aligned.

    GeoHashMap(const GeoHashMap &)

    Copy-constructor.

    GeoHashMap(GeoHashMap &&)

    Move constructor.

    operator=(const GeoHashMap &)

    Assignment operator.

    operator=(GeoHashMap &&)

    Move assignment operator.

    Remove(KeyParamType)

    Removes the key/value pair indexed by this key.

    Remove(Handle)

    Removes the key/value pair reference by the handle.

    Swap(GeoHashMap &)

    Swap places with another table.


    Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::~GeoHashMap


    public: ~GeoHashMap()


    Delete.

    This will erase everything from the table.

    Warning

    Invalidates all existing handles.


    static s32 Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::CalcMemoryUsage


    public: s32 CalcMemoryUsage
    (
        s32 capacity
    )


    Gets the amount of memory (in bytes) required by a GeoHashMap with the given capacity.

    This is the size of the memory block which must be passed to the appropriate GeoHashMap constructor.


    void Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::Clear


    public: void Clear()


    Clears the table.

    Warning

    Invalidates all existing handles.


    bool Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::Exists


    public: bool Exists
    (
        KeyParamType key
    ) const


    This returns true if the key exists.

    Note

    If you intend to access the value if it does exist it's more efficient to use Find().


    Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::GeoHashMap


    public: GeoHashMap
    (
        s32 capacity,
        float loadLimit,
        HashFunctor h,
        KeyCompareFunctor cmp
    )


    Construct a hash table.

    The last two parameters are optional and you won't need to specify them unless you are using a non-default hash or key compare functor that needs to be constructed with something other than the default constructor.

    Parameters
    [in] capacity

    This is the minimum size of the table.

    [in] loadLimit

    The load factor at which the table will grow (recommended value: 0.5. Specifying zero disables growth)

    [in] h

    The hashing function (can be ignored)

    [in] cmp

    The key comparison function (can be ignored)


    Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::GeoHashMap


    public: GeoHashMap
    (
        void * memory,
        s32 capacity,
        HashFunctor h,
        KeyCompareFunctor cmp
    )


    Construct a hash table using the given block of memory for storage. The given block must be at least the size returned by CalcMemoryUsage() and be 4-byte aligned.


    Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::GeoHashMap


    public: GeoHashMap
    (
        const GeoHashMap & rhs
    )


    Copy-constructor.


    Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::GeoHashMap


    public: GeoHashMap
    (
        GeoHashMap && rhs
    )


    Move constructor.


    GeoHashMap& Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::operator=


    public: GeoHashMap & operator=
    (
        const GeoHashMap & rhs
    )


    Assignment operator.

    Warning

    Invalidates all existing handles.


    GeoHashMap& Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::operator=


    public: GeoHashMap & operator=
    (
        GeoHashMap && rhs
    )


    Move assignment operator.

    Warning

    Invalidates all existing handles.


    bool Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::Remove


    public: bool Remove
    (
        KeyParamType key
    )


    Removes the key/value pair indexed by this key.

    Returns

    Returns true if the key was found and removed, otherwise false if the key doesn't exist.

    Warning

    Invalidates all existing handles.


    void Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::Remove


    public: void Remove
    (
        Handle h
    )


    Removes the key/value pair reference by the handle.

    Warning

    Invalidates all existing handles.


    void Geo::GeoHashMap< tKey, tValue, tHashFunctor, tKeyCmp >::Swap


    public: void Swap
    (
        GeoHashMap & other
    )


    Swap places with another table.

    Warning

    Invalidates all existing handles.

    , multiple selections available,
    {"serverDuration": 9, "requestCorrelationId": "ff5819acabc444559dc1c67f79e3aacc"}