regina::NIsomorphismIndexed Class Reference
[Triangulations]

An isomorphism in which face permutations are stored as indices into the allPermsS4 array. More...

#include <nisomorphism.h>

Inheritance diagram for regina::NIsomorphismIndexed:

regina::NIsomorphism regina::ShareableObject regina::boost::noncopyable

List of all members.

Public Member Functions

 NIsomorphismIndexed (unsigned newSourceTetrahedra)
 Creates a new isomorphism with no initialisation.
 NIsomorphismIndexed (const NIsomorphismIndexed &cloneMe)
 Creates a new isomorphism identical to the given isomorphism.
virtual ~NIsomorphismIndexed ()
 Destroys this isomorphism.
virtual NPerm facePerm (unsigned sourceTet) const
 Determines the permutation that is applied to the four faces of the given source tetrahedron under this isomorphism.
int & facePermIndex (unsigned sourceTet)
 Returns a read-write reference to the index into array allPermsS4 that points to the permutation that is applied to the four faces of the given source tetrahedron under this isomorphism.
int facePermIndex (unsigned sourceTet) const
 Returns the index into the array allPermsS4 that points to the permutation that is applied to the four faces of the given source tetrahedron under this isomorphism.


Detailed Description

An isomorphism in which face permutations are stored as indices into the allPermsS4 array.

It is easy to iterate through possible face permutations, but there is no direct write-access to the permutations themselves.

See the NIsomorphism class notes for further details on the types of isomorphism that can be represented.

Python:
Not present.

Constructor & Destructor Documentation

regina::NIsomorphismIndexed::NIsomorphismIndexed ( unsigned  newSourceTetrahedra  )  [inline]

Creates a new isomorphism with no initialisation.

Parameters:
newSourceTetrahedra the number of tetrahedra in the source triangulation associated with this isomorphism; this may be zero.

regina::NIsomorphismIndexed::NIsomorphismIndexed ( const NIsomorphismIndexed cloneMe  ) 

Creates a new isomorphism identical to the given isomorphism.

Parameters:
cloneMe the isomorphism upon which to base the new isomorphism.

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

Destroys this isomorphism.


Member Function Documentation

NPerm regina::NIsomorphismIndexed::facePerm ( unsigned  sourceTet  )  const [inline, virtual]

Determines the permutation that is applied to the four faces of the given source tetrahedron under this isomorphism.

Face i of source tetrahedron sourceTet will be mapped to face facePerm(sourceTet)[i] of tetrahedron tetImage(sourceTet).

Parameters:
sourceTet the index of the source tetrahedron containing the original four faces; this must be between 0 and getSourceTetrahedra()-1 inclusive.
Returns:
the permutation applied to the four faces of the source tetrahedron.

Implements regina::NIsomorphism.

int regina::NIsomorphismIndexed::facePermIndex ( unsigned  sourceTet  )  const [inline]

Returns the index into the array allPermsS4 that points to the permutation that is applied to the four faces of the given source tetrahedron under this isomorphism.

Face i of tetrahedron sourceTet will be mapped to face allPermsS4[facePermIndex(sourceTet)][i] of tetrahedron tetImage(sourceTet).

Parameters:
sourceTet the index of the source tetrahedron containing the original four faces; this must be between 0 and getSourceTetrahedra()-1 inclusive.
Returns:
the corresponding array index.

int & regina::NIsomorphismIndexed::facePermIndex ( unsigned  sourceTet  )  [inline]

Returns a read-write reference to the index into array allPermsS4 that points to the permutation that is applied to the four faces of the given source tetrahedron under this isomorphism.

Face i of tetrahedron sourceTet will be mapped to face allPermsS4[facePermIndex(sourceTet)][i] of tetrahedron tetImage(sourceTet).

Parameters:
sourceTet the index of the source tetrahedron containing the original four faces; this must be between 0 and getSourceTetrahedra()-1 inclusive.
Returns:
a read-write reference to the corresponding array index.


The documentation for this class 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).