CCUserAttrMap Class Reference

#include <attraggl.h>

Inheritance diagram for CCUserAttrMap:

CMap< const StringBase *, const StringBase *, NodeAttribute *, NodeAttribute * > List of all members.

Public Member Functions

 CCUserAttrMap (INT32 nBlockSize=10)
virtual ~CCUserAttrMap ()
BOOL SetAt (const StringBase *key, NodeAttribute *pNewAttributeNode)
void RemoveAll ()
NodePointerFindFirst () const
NodePointerFindNext (const NodePointer *const pPrevious) const

Private Types

typedef CMap< const StringBase *,
const StringBase *, NodeAttribute *,
NodeAttribute * > 
BaseMap

Private Attributes

List m_NodeAttributes

Detailed Description

Definition at line 155 of file attraggl.h.


Member Typedef Documentation

typedef CMap<const StringBase*, const StringBase*, NodeAttribute*, NodeAttribute*> CCUserAttrMap::BaseMap [private]
 

Definition at line 157 of file attraggl.h.


Constructor & Destructor Documentation

CCUserAttrMap::CCUserAttrMap INT32  nBlockSize = 10  )  [inline]
 

Definition at line 159 of file attraggl.h.

00159                                          : 
00160         BaseMap(nBlockSize)
00161         {}

CCUserAttrMap::~CCUserAttrMap  )  [virtual]
 

Definition at line 154 of file attraggl.cpp.

00155 {
00156     m_NodeAttributes.DeleteAll();
00157 }


Member Function Documentation

NodePointer * CCUserAttrMap::FindFirst  )  const
 

Definition at line 191 of file attraggl.cpp.

00192 {
00193     NodePointer* const pNodePointer = (NodePointer*)m_NodeAttributes.GetHead();
00194     ENSURE_KIND(pNodePointer, NodePointer);
00195 
00196     return pNodePointer;
00197 }

NodePointer * CCUserAttrMap::FindNext const NodePointer *const   pPrevious  )  const
 

Definition at line 199 of file attraggl.cpp.

00200 {
00201     NodePointer* const pNodePointer = (NodePointer*)m_NodeAttributes.GetNext(pPrevious);
00202     ENSURE_KIND(pNodePointer, NodePointer);
00203 
00204     return pNodePointer;
00205 }

void CCUserAttrMap::RemoveAll  ) 
 

Reimplemented from CMap< const StringBase *, const StringBase *, NodeAttribute *, NodeAttribute * >.

Definition at line 208 of file attraggl.cpp.

00209 {
00210     BaseMap::RemoveAll();
00211 
00212     m_NodeAttributes.DeleteAll();
00213 }

BOOL CCUserAttrMap::SetAt const StringBase key,
NodeAttribute pNewAttributeNode
 

Reimplemented from CMap< const StringBase *, const StringBase *, NodeAttribute *, NodeAttribute * >.

Definition at line 159 of file attraggl.cpp.

00160 {
00161     ENSURE_NOT_NULL(pKey);
00162     ENSURE_NOT_NULL(pNewAttributeNode);
00163 
00164     BOOL Ok = TRUE;
00165 
00166     try
00167     {
00168         BaseMap::SetAt(pKey, pNewAttributeNode);
00169     }
00170     catch (...)
00171     {
00172         Ok = FALSE;
00173     }       
00174 
00175     if (Ok)
00176     {
00177         NodePointer* const pNewItem = new NodePointer(*pNewAttributeNode, *pKey);
00178         if (pNewItem != NULL)
00179         {
00180             m_NodeAttributes.AddTail(pNewItem);
00181         }
00182         else
00183         {
00184             Ok = FALSE;
00185         }
00186     }
00187 
00188     return Ok;
00189 }


Member Data Documentation

List CCUserAttrMap::m_NodeAttributes [private]
 

Definition at line 172 of file attraggl.h.


The documentation for this class was generated from the following files:
Generated on Sat Nov 10 03:52:13 2007 for Camelot by  doxygen 1.4.4