HashArray< TYPE, ARG_TYPE > Class Template Reference

#include <HashArra.h>

Inheritance diagram for HashArray< TYPE, ARG_TYPE >:

Inheritance graph
[legend]
Collaboration diagram for HashArray< TYPE, ARG_TYPE >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 HashArray ()
int GetSize () const
int GetUpperBound () const
void SetSize (int newsize, int growby=-1)
void FreeExtra ()
void RemoveAll ()
TYPE GetAt (int index) const
TYPE & ElementAt (int index)
void SetAt (int index, ARG_TYPE newElement)
void InsertAt (int nIndex, ARG_TYPE newElement, int nCount=1)
void RemoveAt (int index, int count=1)
TYPE operator[] (int index) const
TYPE & operator[] (int index)
TYPE * GetArray ()
void SetAtGrow (int index, ARG_TYPE newElement)
int Add (ARG_TYPE newElement)
void Push (ARG_TYPE newElement)
TYPE Pop ()
TYPE GetPushed () const
void SetGranularity (int granularity)
 ~HashArray ()

Protected Attributes

TYPE * m_data
int m_size
int m_maxsize
int m_growby

Detailed Description

template<class TYPE, class ARG_TYPE>
class HashArray< TYPE, ARG_TYPE >

Definition at line 65 of file HashArra.h.


Constructor & Destructor Documentation

template<class TYPE, class ARG_TYPE>
HashArray< TYPE, ARG_TYPE >::HashArray  ) 
 

Definition at line 135 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::m_data, HashArray< TYPE, ARG_TYPE >::m_growby, HashArray< TYPE, ARG_TYPE >::m_maxsize, and HashArray< TYPE, ARG_TYPE >::m_size.

template<class TYPE, class ARG_TYPE>
HashArray< TYPE, ARG_TYPE >::~HashArray  ) 
 

Definition at line 142 of file HashArra.h.

References DestructTheElements(), FreeExt(), HashArray< TYPE, ARG_TYPE >::m_data, and HashArray< TYPE, ARG_TYPE >::m_size.

Here is the call graph for this function:


Member Function Documentation

template<class TYPE, class ARG_TYPE>
int HashArray< TYPE, ARG_TYPE >::Add ARG_TYPE  newElement  )  [inline]
 

Definition at line 127 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::m_size, and HashArray< TYPE, ARG_TYPE >::SetAtGrow().

Referenced by UDCollection< TYPE, ARG_TYPE >::Add(), VectorCollection::Add(), and UDCollection< TYPE, ARG_TYPE >::AddForce().

Here is the call graph for this function:

template<class TYPE, class ARG_TYPE>
TYPE & HashArray< TYPE, ARG_TYPE >::ElementAt int  index  )  [inline]
 

Definition at line 118 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::m_data.

Referenced by VectorCollection::ElementAt(), VectorCollection::operator[](), IEPatch::~IEPatch(), and IEPoly::~IEPoly().

template<class TYPE, class ARG_TYPE>
void HashArray< TYPE, ARG_TYPE >::FreeExtra  ) 
 

Definition at line 204 of file HashArra.h.

References AllocExt(), FreeExt(), HashArray< TYPE, ARG_TYPE >::m_data, HashArray< TYPE, ARG_TYPE >::m_maxsize, and HashArray< TYPE, ARG_TYPE >::m_size.

Referenced by UDCollection< IEMap, IEMap & >::Shrink(), and VectorCollection::Shrink().

Here is the call graph for this function:

template<class TYPE, class ARG_TYPE>
TYPE * HashArray< TYPE, ARG_TYPE >::GetArray  )  [inline]
 

Definition at line 124 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::m_data.

Referenced by VectorCollection::GetArray().

template<class TYPE, class ARG_TYPE>
TYPE HashArray< TYPE, ARG_TYPE >::GetAt int  index  )  const [inline]
 

Definition at line 115 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::m_data.

Referenced by UDCollection< TYPE, ARG_TYPE >::Add(), VectorCollection::Add(), VectorCollection::GetAt(), UDCollection< TYPE, ARG_TYPE >::LookUp(), VectorCollection::LookUp(), VectorCollection::LookUpHashKey(), and VectorCollection::operator[]().

template<class TYPE, class ARG_TYPE>
TYPE HashArray< TYPE, ARG_TYPE >::GetPushed  )  const [inline]
 

Definition at line 312 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::m_data, and HashArray< TYPE, ARG_TYPE >::m_size.

template<class TYPE, class ARG_TYPE>
int HashArray< TYPE, ARG_TYPE >::GetSize  )  const [inline]
 

Definition at line 106 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::m_size.

Referenced by VectorCollection::Add(), VectorCollection::Empty(), IEPolyModel::FreeData(), IEPolyModel::GetNumFaces(), VectorCollection::GetSize(), VectorCollection::LookUp(), VectorCollection::LookUpHashKey(), IEPoly::operator=(), IEPatch::~IEPatch(), and IEPoly::~IEPoly().

template<class TYPE, class ARG_TYPE>
int HashArray< TYPE, ARG_TYPE >::GetUpperBound  )  const [inline]
 

Definition at line 109 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::m_size.

template<class TYPE, class ARG_TYPE>
void HashArray< TYPE, ARG_TYPE >::InsertAt int  nIndex,
ARG_TYPE  newElement,
int  nCount = 1
 

Definition at line 228 of file HashArra.h.

References HashConstructElements(), HashDestructElements(), HashArray< TYPE, ARG_TYPE >::m_data, HashArray< TYPE, ARG_TYPE >::m_size, and HashArray< TYPE, ARG_TYPE >::SetSize().

Here is the call graph for this function:

template<class TYPE, class ARG_TYPE>
TYPE& HashArray< TYPE, ARG_TYPE >::operator[] int  index  )  [inline]
 

Definition at line 84 of file HashArra.h.

template<class TYPE, class ARG_TYPE>
TYPE HashArray< TYPE, ARG_TYPE >::operator[] int  index  )  const [inline]
 

Definition at line 83 of file HashArra.h.

template<class TYPE, class ARG_TYPE>
TYPE HashArray< TYPE, ARG_TYPE >::Pop  ) 
 

Definition at line 294 of file HashArra.h.

References FALSE, HashDestructElements(), HashArray< TYPE, ARG_TYPE >::m_data, and HashArray< TYPE, ARG_TYPE >::m_size.

Here is the call graph for this function:

template<class TYPE, class ARG_TYPE>
void HashArray< TYPE, ARG_TYPE >::Push ARG_TYPE  newElement  )  [inline]
 

Definition at line 288 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::m_size, and HashArray< TYPE, ARG_TYPE >::SetAtGrow().

Here is the call graph for this function:

template<class TYPE, class ARG_TYPE>
void HashArray< TYPE, ARG_TYPE >::RemoveAll  )  [inline]
 

Definition at line 112 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::SetSize().

Referenced by VertexInfo::RemoveAll().

Here is the call graph for this function:

template<class TYPE, class ARG_TYPE>
void HashArray< TYPE, ARG_TYPE >::RemoveAt int  index,
int  count = 1
 

Definition at line 270 of file HashArra.h.

References HashDestructElements(), HashArray< TYPE, ARG_TYPE >::m_data, and HashArray< TYPE, ARG_TYPE >::m_size.

Here is the call graph for this function:

template<class TYPE, class ARG_TYPE>
void HashArray< TYPE, ARG_TYPE >::SetAt int  index,
ARG_TYPE  newElement
[inline]
 

Definition at line 121 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::m_data.

Referenced by VectorCollection::Add().

template<class TYPE, class ARG_TYPE>
void HashArray< TYPE, ARG_TYPE >::SetAtGrow int  index,
ARG_TYPE  newElement
 

Definition at line 220 of file HashArra.h.

References HashArray< TYPE, ARG_TYPE >::m_data, HashArray< TYPE, ARG_TYPE >::m_size, and HashArray< TYPE, ARG_TYPE >::SetSize().

Referenced by HashArray< TYPE, ARG_TYPE >::Add(), and HashArray< TYPE, ARG_TYPE >::Push().

Here is the call graph for this function:

template<class TYPE, class ARG_TYPE>
void HashArray< TYPE, ARG_TYPE >::SetGranularity int  granularity  )  [inline]
 

Definition at line 93 of file HashArra.h.

Referenced by IEPatch::IEPatch(), IEPoly::IEPoly(), IEPolyModel::IEPolyModel(), IETriModel::Init(), UDCollection< IEMap, IEMap & >::SetGranularity(), and VectorCollection::VectorCollection().

template<class TYPE, class ARG_TYPE>
void HashArray< TYPE, ARG_TYPE >::SetSize int  newsize,
int  growby = -1
 

Definition at line 151 of file HashArra.h.

References AllocExt(), ConstructTheElements(), DestructTheElements(), FreeExt(), HashArray< TYPE, ARG_TYPE >::m_data, HashArray< TYPE, ARG_TYPE >::m_growby, HashArray< TYPE, ARG_TYPE >::m_maxsize, and HashArray< TYPE, ARG_TYPE >::m_size.

Referenced by VectorCollection::Add(), VectorCollection::Empty(), HashArray< TYPE, ARG_TYPE >::InsertAt(), HashArray< TYPE, ARG_TYPE >::RemoveAll(), HashArray< TYPE, ARG_TYPE >::SetAtGrow(), IETriModel::SetNumFaces(), IEPolyModel::SetNumFaces(), UDCollection< IEMap, IEMap & >::SetSize(), VectorCollection::SetSize(), and VectorCollection::VectorCollection().

Here is the call graph for this function:


Member Data Documentation

template<class TYPE, class ARG_TYPE>
TYPE* HashArray< TYPE, ARG_TYPE >::m_data [protected]
 

Definition at line 96 of file HashArra.h.

Referenced by HashArray< TYPE, ARG_TYPE >::ElementAt(), HashArray< TYPE, ARG_TYPE >::FreeExtra(), HashArray< TYPE, ARG_TYPE >::GetArray(), HashArray< TYPE, ARG_TYPE >::GetAt(), HashArray< TYPE, ARG_TYPE >::GetPushed(), HashArray< TYPE, ARG_TYPE >::HashArray(), HashArray< TYPE, ARG_TYPE >::InsertAt(), HashArray< IEPatch *, IEPatch * >::operator[](), HashArray< TYPE, ARG_TYPE >::Pop(), HashArray< TYPE, ARG_TYPE >::RemoveAt(), HashArray< TYPE, ARG_TYPE >::SetAt(), HashArray< TYPE, ARG_TYPE >::SetAtGrow(), HashArray< TYPE, ARG_TYPE >::SetSize(), and HashArray< TYPE, ARG_TYPE >::~HashArray().

template<class TYPE, class ARG_TYPE>
int HashArray< TYPE, ARG_TYPE >::m_growby [protected]
 

Definition at line 99 of file HashArra.h.

Referenced by HashArray< TYPE, ARG_TYPE >::HashArray(), HashArray< IEPatch *, IEPatch * >::SetGranularity(), and HashArray< TYPE, ARG_TYPE >::SetSize().

template<class TYPE, class ARG_TYPE>
int HashArray< TYPE, ARG_TYPE >::m_maxsize [protected]
 

Definition at line 98 of file HashArra.h.

Referenced by HashArray< TYPE, ARG_TYPE >::FreeExtra(), HashArray< TYPE, ARG_TYPE >::HashArray(), and HashArray< TYPE, ARG_TYPE >::SetSize().

template<class TYPE, class ARG_TYPE>
int HashArray< TYPE, ARG_TYPE >::m_size [protected]
 

Definition at line 97 of file HashArra.h.

Referenced by HashArray< TYPE, ARG_TYPE >::Add(), HashArray< TYPE, ARG_TYPE >::FreeExtra(), HashArray< TYPE, ARG_TYPE >::GetPushed(), HashArray< TYPE, ARG_TYPE >::GetSize(), HashArray< TYPE, ARG_TYPE >::GetUpperBound(), HashArray< TYPE, ARG_TYPE >::HashArray(), HashArray< TYPE, ARG_TYPE >::InsertAt(), HashArray< TYPE, ARG_TYPE >::Pop(), HashArray< TYPE, ARG_TYPE >::Push(), HashArray< TYPE, ARG_TYPE >::RemoveAt(), HashArray< TYPE, ARG_TYPE >::SetAtGrow(), HashArray< TYPE, ARG_TYPE >::SetSize(), and HashArray< TYPE, ARG_TYPE >::~HashArray().


The documentation for this class was generated from the following file:
This A:M SDK v12.0 documentation is maintained by Hash Inc. Please address any comments concerning this documentation to AMReports. If you have any information, knowledge, or documentation to share with the A:M developer community, please post them on the Hash SDK forum.

Generated on Thu Oct 27 11:46:52 2005 with doxygen 1.4.5 written by Dimitri van Heesch, © 1997-2001