TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
G3D::MeshEdgeTable::Iterator Class Reference

Public Member Functions

int i0 () const
 
int i1 () const
 
FaceIndexArrayfaceIndex ()
 
Iteratoroperator++ ()
 
bool isValid () const
 
bool hasMore () const
 

Private Member Functions

 Iterator (ET &a)
 

Private Attributes

int m_i0
 
int m_p
 
ETm_array
 
EdgeArraym_edgeArray
 
bool m_end
 

Friends

class MeshEdgeTable
 

Constructor & Destructor Documentation

G3D::MeshEdgeTable::Iterator::Iterator ( ET a)
inlineprivate
139  : m_i0(-1), m_p(-1), m_array(a), m_edgeArray(NULL), m_end(false) {
140  ++(*this);
141  }
arena_t NULL
Definition: jemalloc_internal.h:624
ET & m_array
Definition: MeshAlgAdjacency.cpp:90
bool m_end
Definition: MeshAlgAdjacency.cpp:92
int m_p
Definition: MeshAlgAdjacency.cpp:89
int m_i0
Definition: MeshAlgAdjacency.cpp:87
EdgeArray * m_edgeArray
Definition: MeshAlgAdjacency.cpp:91

Member Function Documentation

FaceIndexArray& G3D::MeshEdgeTable::Iterator::faceIndex ( )
inline
104  {
105  return (*m_edgeArray)[m_p].faceIndexArray;
106  }
int m_p
Definition: MeshAlgAdjacency.cpp:89
EdgeArray * m_edgeArray
Definition: MeshAlgAdjacency.cpp:91

+ Here is the caller graph for this function:

bool G3D::MeshEdgeTable::Iterator::hasMore ( ) const
inline
Deprecated:
Use isValid
133  {
134  return ! m_end;
135  }
bool m_end
Definition: MeshAlgAdjacency.cpp:92
int G3D::MeshEdgeTable::Iterator::i0 ( ) const
inline
96  {
97  return m_i0;
98  }
int m_i0
Definition: MeshAlgAdjacency.cpp:87

+ Here is the caller graph for this function:

int G3D::MeshEdgeTable::Iterator::i1 ( ) const
inline
100  {
101  return (*m_edgeArray)[m_p].i1;
102  }
int m_p
Definition: MeshAlgAdjacency.cpp:89
EdgeArray * m_edgeArray
Definition: MeshAlgAdjacency.cpp:91

+ Here is the caller graph for this function:

bool G3D::MeshEdgeTable::Iterator::isValid ( ) const
inline
128  {
129  return ! m_end;
130  }
bool m_end
Definition: MeshAlgAdjacency.cpp:92

+ Here is the caller graph for this function:

Iterator& G3D::MeshEdgeTable::Iterator::operator++ ( )
inline
108  {
109  if ((m_i0 >= 0) && (m_p < m_edgeArray->size() - 1)) {
110  ++m_p;
111  } else {
112  // Skip over elements with no face array
113  do {
114  ++m_i0;
115  if (m_i0 == m_array.size()) {
116  m_end = true;
117  return *this;
118  } else {
120  m_p = 0;
121  }
122  } while (m_edgeArray->size() == 0);
123  }
124 
125  return *this;
126  }
ET & m_array
Definition: MeshAlgAdjacency.cpp:90
bool m_end
Definition: MeshAlgAdjacency.cpp:92
int m_p
Definition: MeshAlgAdjacency.cpp:89
int size() const
Definition: Array.h:430
int size() const
Definition: SmallArray.h:37
int m_i0
Definition: MeshAlgAdjacency.cpp:87
EdgeArray * m_edgeArray
Definition: MeshAlgAdjacency.cpp:91

+ Here is the call graph for this function:

Friends And Related Function Documentation

friend class MeshEdgeTable
friend

Member Data Documentation

ET& G3D::MeshEdgeTable::Iterator::m_array
private
EdgeArray* G3D::MeshEdgeTable::Iterator::m_edgeArray
private
bool G3D::MeshEdgeTable::Iterator::m_end
private
int G3D::MeshEdgeTable::Iterator::m_i0
private
int G3D::MeshEdgeTable::Iterator::m_p
private

Pair index


The documentation for this class was generated from the following file: