regina::NPrismSpec Struct Reference
[Normal Surfaces]

Specifies a single triangular prism in a tetrahedron. More...

#include <nprism.h>

List of all members.

Public Member Functions

 NPrismSpec ()
 Creates a new uninitialised prism specifier.
 NPrismSpec (unsigned long newTetIndex, int newEdge)
 Creates a new prism specifier containing the given values.
 NPrismSpec (const NPrismSpec &cloneMe)
 Creates a new prism specifier that is a clone of the given specifier.
NPrismSpecoperator= (const NPrismSpec &cloneMe)
 Copies the values from the given prism specifier into this specifier.
bool operator== (const NPrismSpec &other) const
 Determines if this and the given prism specifier contain identical information.

Public Attributes

unsigned long tetIndex
 The index in the triangulation of the tetrahedron containing the prism.
int edge
 The edge of the tetrahedron that is contained in this prism.

Friends

std::ostream & operator<< (std::ostream &out, const NPrismSpec &spec)
 Writes the given prism specifier to the given output stream.


Detailed Description

Specifies a single triangular prism in a tetrahedron.

If a tetrahedron contains normal quads, slicing along these quads splits the tetrahedron into two triangular prisms (and possibly some additional product regions). Each triangular prism contains two of the vertices and one of the edges of the original tetrahedron.

Precondition:
This class should only be used with embedded normal surfaces.

Constructor & Destructor Documentation

regina::NPrismSpec::NPrismSpec (  )  [inline]

Creates a new uninitialised prism specifier.

regina::NPrismSpec::NPrismSpec ( unsigned long  newTetIndex,
int  newEdge 
) [inline]

Creates a new prism specifier containing the given values.

Parameters:
newTetIndex the index in the triangulation of the tetrahedron containing the prism.
newEdge the edge of the tetrahedron that is contained in this prism; this must be between 0 and 5 inclusive.

regina::NPrismSpec::NPrismSpec ( const NPrismSpec cloneMe  )  [inline]

Creates a new prism specifier that is a clone of the given specifier.

Parameters:
cloneMe the prism specifier to clone.


Member Function Documentation

NPrismSpec & regina::NPrismSpec::operator= ( const NPrismSpec cloneMe  )  [inline]

Copies the values from the given prism specifier into this specifier.

Parameters:
cloneMe the prism specifier whose values should be copied.
Returns:
a reference to this prism specifier.

bool regina::NPrismSpec::operator== ( const NPrismSpec other  )  const [inline]

Determines if this and the given prism specifier contain identical information.

Parameters:
other the prism specifier to compare with this.
Returns:
true if and only if this and the given prism specifier contain identical information.


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  out,
const NPrismSpec spec 
) [friend]

Writes the given prism specifier to the given output stream.

The prism specifier will be written as a pair (tetIndex, edge).

Parameters:
out the output stream to which to write.
spec the prism specifier to write.
Returns:
a reference to out.


Member Data Documentation

The index in the triangulation of the tetrahedron containing the prism.

The edge of the tetrahedron that is contained in this prism.


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

Copyright © 1999-2008, 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).