RPtrHashSet Class Reference
class RPtrHashSet : public RHashTableBase
|
A templated class which implements an unordered extensional set of objects of type T using a probe-sequence hash table. The objects are not copied into the set when they are added; rather the set stores pointers to the contained objects.
Nested Classes and Structures
Inherited Functions
|
|
RHashTableBase::ConsistencyCheck(TUint32 *,TUint32 *,TUint32,TUint32 *)
|
|
RHashTableBase::Find(const TAny *,TInt)const
|
|
RHashTableBase::FindL(const TAny *,TInt)const
|
|
RHashTableBase::Insert(const TAny *,TAny *&)
|
|
RHashTableBase::PtrInsert(const TAny *,const TAny *)
|
|
RHashTableBase::PtrInsertL(const TAny *,const TAny *)
|
|
RHashTableBase::RHashTableBase(TGeneralHashFunction32,TGeneralIdentityRelation,TInt,TInt)
|
|
RHashTableBase::Remove(const TAny *)
|
|
RHashTableBase::ValueInsert(const TAny *,TInt,const TAny *,TInt,TInt)
|
|
RHashTableBase::ValueInsertL(const TAny *,TInt,const TAny *,TInt,TInt)
|
Constructor & Destructor Documentation
RPtrHashSet(const THashFunction32< T > &, const TIdentityRelation< T > &)
Construct a set of objects of type T using a specified hash function and identity relation. The set is initially empty.
Parameters
const
THashFunction32
< T > & aHash
|
The hash function used to hash the objects of type T.
|
const
TIdentityRelation
< T > & aIdentity
|
The identity relation used to determine if two objects of type T should be considered identical.
|
RPtrHashSet()
Construct a set of objects of type T using a default hash function and identity relation. The set is initially empty.
Member Functions Documentation
Close()
Free all memory used by this set. Returns the set to the same state it had following construction.
Count()
TInt
|
Count
|
(
|
)
|
const [inline]
|
Query the number of elements in the set.
Find(const T &)
const T *
|
Find
|
(
|
const T &
|
aKey
|
)
|
const [inline]
|
Locate a specified element in the set.
Parameters
const T & aKey
|
The object of type T to search for.
|
Find(const T &)
T *
|
Find
|
(
|
const T &
|
aKey
|
)
|
[inline]
|
Locate a specified element in the set.
Parameters
const T & aKey
|
The object of type T to search for.
|
FindL(const T &)
const T &
|
FindL
|
(
|
const T &
|
aKey
|
)
|
const [inline]
|
Locate a specified element in the set.
-
leave
-
KErrNotFound if the specified object is not a member of this set.
Parameters
const T & aKey
|
The object of type T to search for.
|
FindL(const T &)
T &
|
FindL
|
(
|
const T &
|
aKey
|
)
|
[inline]
|
Locate a specified element in the set.
-
leave
-
KErrNotFound if the specified object is not a member of this set.
Parameters
const T & aKey
|
The object of type T to search for.
|
Insert(const T *)
TInt
|
Insert
|
(
|
const T *
|
aKey
|
)
|
[inline]
|
Insert an element into the set.
If the specified object is not currently a member of the set, a pointer to the object is added to the set and KErrNone is returned. If the specified object is currently a member of the set, the existing pointer to the object is replaced by the provided pointer and KErrNone is returned. In both cases only a pointer to the object is stored - the object is never copied.
Parameters
const T * aKey
|
A pointer to the object of type T to add to the set.
|
InsertL(const T *)
void
|
InsertL
|
(
|
const T *
|
aKey
|
)
|
[inline]
|
Insert an element into the set.
If the specified object is not currently a member of the set, a pointer to the object is added to the set and KErrNone is returned. If the specified object is currently a member of the set, the existing pointer to the object is replaced by the provided pointer and KErrNone is returned. In both cases only a pointer to the object is stored - the object is never copied.
-
leave
-
KErrNoMemory if memory could not be allocated to store the pointer to the new object.
Parameters
const T * aKey
|
A pointer to the object of type T to add to the set.
|
Remove(const T *)
TInt
|
Remove
|
(
|
const T *
|
aKey
|
)
|
[inline]
|
Remove an element from the set.
Parameters
const T * aKey
|
A pointer to the object to be removed.
|
Reserve(TInt)
Expand the set to accommodate a specified number of elements. If the set already has enough space for the specified number of elements, no action is taken. Any elements already in the set are retained.
Parameters
TInt
aCount
|
The number of elements for which space should be allocated.
|
ReserveL(TInt)
void
|
ReserveL
|
(
|
TInt
|
aCount
|
)
|
[inline]
|
Expand the set to accommodate a specified number of elements. If the set already has enough space for the specified number of elements, no action is taken. Any elements already in the set are retained.
-
leave
-
KErrNoMemory if sufficient memory could not be allocated.
Parameters
TInt
aCount
|
The number of elements for which space should be allocated.
|
ResetAndDestroy()
Deletes all the objects of type T to which pointers are stored in this set. Then frees all the memory used by the set and returns the set to the same state as immediately following construction.
Member Type Definitions Documentation
Typedef TIter
A class which allows iteration over the elements of a RPtrHashSet<T> class.
The set being iterated over may not be modified while an iteration is in progress or the iteration operations may malfunction or panic.
TPtrHashSetIter<T>
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.