5 #ifndef BALL_STRUCTURE_GRAPHVERTEX_H
6 #define BALL_STRUCTURE_GRAPHVERTEX_H
12 #ifndef BALL_DATATYPE_HASHSET_H
19 template <
typename Vertex,
typename Edge,
typename Face>
22 template <
typename Vertex,
typename Edge,
typename Face>
25 template <
typename Vertex,
typename Edge,
typename Face>
31 template <
typename Vertex,
typename Edge,
typename Face>
97 void set(const GraphVertex<Vertex,Edge,Face>& vertex,
bool deep = false)
105 GraphVertex<Vertex,Edge,Face>& operator =
106 (const GraphVertex<Vertex,Edge,Face>& vertex)
168 bool join(const Vertex& vertex)
189 virtual
bool operator == (const Vertex&) const
195 virtual
bool operator != (const Vertex&) const
201 virtual
bool operator *= (const Vertex&) const
208 Face*
has(Face* face) const
215 Edge*
has(Edge* edge) const
235 ConstEdgeIterator beginEdge() const
239 ConstEdgeIterator endEdge() const
243 ConstFaceIterator beginFace() const
247 ConstFaceIterator endFace() const
274 template <typename Vertex, typename Edge, typename Face>
275 GraphVertex<Vertex,Edge,Face>::GraphVertex()
284 template <
typename Vertex,
typename Edge,
typename Face>
300 template <
typename Vertex,
typename Edge,
typename Face>
307 template <
typename Vertex,
typename Edge,
typename Face>
324 template <
typename Vertex,
typename Edge,
typename Face>
339 template <
typename Vertex,
typename Edge,
typename Face>
347 template <
typename Vertex,
typename Edge,
typename Face>
355 template <
typename Vertex,
typename Edge,
typename Face>
363 template <
typename Vertex,
typename Edge,
typename Face>
371 template <
typename Vertex,
typename Edge,
typename Face>
379 template <
typename Vertex,
typename Edge,
typename Face>
387 template <
typename Vertex,
typename Edge,
typename Face>
395 template <
typename Vertex,
typename Edge,
typename Face>
403 template <
typename Vertex,
typename Edge,
typename Face>
407 if (*
this *= *vertex)
412 (*e)->substitute((
Vertex*)
this,vertex);
417 (*f)->substitute((
Vertex*)
this,vertex);
425 template <
typename Vertex,
typename Edge,
typename Face>
432 for (e = vertex.edges_.begin(); e != vertex.edges_.end(); e++)
437 for (f = vertex.faces_.begin(); f != vertex.faces_.end(); f++)
450 template <
typename Vertex,
typename Edge,
typename Face>
466 template <
typename Vertex,
typename Edge,
typename Face>
482 template <
typename Vertex,
typename Edge,
typename Face>
490 template <
typename Vertex,
typename Edge,
typename Face>
498 template <
typename Vertex,
typename Edge,
typename Face>
507 template <
typename Vertex,
typename Edge,
typename Face>
516 template <
typename Vertex,
typename Edge,
typename Face>
525 template <
typename Vertex,
typename Edge,
typename Face>
534 template <
typename Vertex,
typename Edge,
typename Face>
543 template <
typename Vertex,
typename Edge,
typename Face>
552 template <
typename Vertex,
typename Edge,
typename Face>
561 template <
typename Vertex,
typename Edge,
typename Face>
570 template <
typename Vertex,
typename Edge,
typename Face>
578 template <
typename Vertex,
typename Edge,
typename Face>
586 template <
typename Vertex,
typename Edge,
typename Face>
595 #endif // BALL_STRUCTURE_GRAPHVERTEX_H
#define BALL_CREATE(name)
std::pair< Iterator, bool > insert(const ValueType &item)
void setIndex(Index index)
Position numberOfFaces() const
bool substitute(Vertex *vertex)
Position numberOfEdges() const
void set(const GraphVertex< Vertex, Edge, Face > &vertex, bool deep=false)
HashSet< Triangle * >::ConstIterator ConstFaceIterator
virtual bool operator==(const Vertex &) const
HashSet< TriangleEdge * >::Iterator EdgeIterator
Face * has(Face *face) const
Size erase(const KeyType &key)
virtual bool operator!=(const Vertex &) const
virtual bool operator*=(const Vertex &) const
HashSet< TriangleEdge * >::ConstIterator ConstEdgeIterator
HashSet< Triangle * >::Iterator FaceIterator
bool join(const Vertex &vertex)