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.

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.

RemoveIndex(s32)

Remove the entry referenced by index obtained by FindIndex (note that all indices are of course invalidated).


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.


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


public: TValue * RemoveIndex
(
    s32 index
)


Remove the entry referenced by index obtained by FindIndex (note that all indices are of course invalidated).

Returns

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