regina::NComponent Class Reference
[Triangulations]

Represents a component of a triangulation. More...

#include <ncomponent.h>

Inheritance diagram for regina::NComponent:

regina::ShareableObject regina::NMarkedElement regina::boost::noncopyable

List of all members.

Public Member Functions

virtual ~NComponent ()
 Default destructor.
unsigned long getNumberOfTetrahedra () const
 Returns the number of tetrahedra in this component.
unsigned long getNumberOfFaces () const
 Returns the number of faces in this component.
unsigned long getNumberOfEdges () const
 Returns the number of edges in this component.
unsigned long getNumberOfVertices () const
 Returns the number of vertices in this component.
unsigned long getNumberOfBoundaryComponents () const
 Returns the number of boundary components in this component.
NTetrahedrongetTetrahedron (unsigned long index) const
 Returns the requested tetrahedron in this component.
NFacegetFace (unsigned long index) const
 Returns the requested face in this component.
NEdgegetEdge (unsigned long index) const
 Returns the requested edge in this component.
NVertexgetVertex (unsigned long index) const
 Returns the requested vertex in this component.
NBoundaryComponentgetBoundaryComponent (unsigned long index) const
 Returns the requested boundary component in this component.
bool isIdeal () const
 Determines if this component is ideal.
bool isOrientable () const
 Determines if this component is orientable.
bool isClosed () const
 Determines if this component is closed.
void writeTextShort (std::ostream &out) const
 Writes this object in short text format to the given output stream.

Friends

class NTriangulation
 Allow access to private members.


Detailed Description

Represents a component of a triangulation.

Components are highly temporary; once a triangulation changes, all its component objects will be deleted and new ones will be created.


Constructor & Destructor Documentation

regina::NComponent::~NComponent (  )  [inline, virtual]

Default destructor.


Member Function Documentation

NBoundaryComponent * regina::NComponent::getBoundaryComponent ( unsigned long  index  )  const [inline]

Returns the requested boundary component in this component.

Parameters:
index the index of the requested boundary component in this component. This should be between 0 and getNumberOfBoundaryComponents()-1 inclusive. Note that the index of a boundary component in the component need not be the index of the same boundary component in the entire triangulation.
Returns:
the requested boundary component.

NEdge * regina::NComponent::getEdge ( unsigned long  index  )  const [inline]

Returns the requested edge in this component.

Parameters:
index the index of the requested edge in the component. This should be between 0 and getNumberOfEdges()-1 inclusive. Note that the index of an edge in the component need not be the index of the same edge in the entire triangulation.
Returns:
the requested edge.

NFace * regina::NComponent::getFace ( unsigned long  index  )  const [inline]

Returns the requested face in this component.

Parameters:
index the index of the requested face in the component. This should be between 0 and getNumberOfFaces()-1 inclusive. Note that the index of a face in the component need not be the index of the same face in the entire triangulation.
Returns:
the requested face.

unsigned long regina::NComponent::getNumberOfBoundaryComponents (  )  const [inline]

Returns the number of boundary components in this component.

Returns:
the number of boundary components.

unsigned long regina::NComponent::getNumberOfEdges (  )  const [inline]

Returns the number of edges in this component.

Returns:
the number of edges.

unsigned long regina::NComponent::getNumberOfFaces (  )  const [inline]

Returns the number of faces in this component.

Returns:
the number of faces.

unsigned long regina::NComponent::getNumberOfTetrahedra (  )  const [inline]

Returns the number of tetrahedra in this component.

Returns:
the number of tetrahedra.

unsigned long regina::NComponent::getNumberOfVertices (  )  const [inline]

Returns the number of vertices in this component.

Returns:
the number of vertices.

NTetrahedron * regina::NComponent::getTetrahedron ( unsigned long  index  )  const [inline]

Returns the requested tetrahedron in this component.

Parameters:
index the index of the requested tetrahedron in the component. This should be between 0 and getNumberOfTetrahedra()-1 inclusive. Note that the index of a tetrahedron in the component need not be the index of the same tetrahedron in the entire triangulation.
Returns:
the requested tetrahedron.

NVertex * regina::NComponent::getVertex ( unsigned long  index  )  const [inline]

Returns the requested vertex in this component.

Parameters:
index the index of the requested vertex in the component. This should be between 0 and getNumberOfVertices()-1 inclusive. Note that the index of a vertex in the component need not be the index of the same vertex in the entire triangulation.
Returns:
the requested vertex.

bool regina::NComponent::isClosed (  )  const [inline]

Determines if this component is closed.

This is the case if and only if it has no boundary. Note that ideal components are not closed.

Returns:
true if and only if this component is closed.

bool regina::NComponent::isIdeal (  )  const [inline]

Determines if this component is ideal.

This is the case if and only if it contains an ideal vertex as described by NVertex::isIdeal().

Returns:
true if and only if this component is ideal.

bool regina::NComponent::isOrientable (  )  const [inline]

Determines if this component is orientable.

Returns:
true if and only if this component is orientable.

void regina::NComponent::writeTextShort ( std::ostream &  out  )  const [inline, virtual]

Writes this object in short text format to the given output stream.

The output should fit on a single line and no newline should be written.

Python:
The parameter out does not exist; standard output will be used.
Parameters:
out the output stream to which to write.

Implements regina::ShareableObject.


Friends And Related Function Documentation

friend class NTriangulation [friend]

Allow access to private members.


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

Copyright © 1999-2009, Ben Burton
This software is released under the GNU General Public License.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@debian.org).