regina::AugTriSolidTorus Class Reference
Standard Triangulations and Subcomplexes

Represents an augmented triangular solid torus component of a triangulation. More...

`#include <subcomplex/augtrisolidtorus.h>`

Inheritance diagram for regina::AugTriSolidTorus:

## Public Member Functions

virtual | ~AugTriSolidTorus ()
| Destroys this augmented solid torus; note that the corresponding triangular and layered solid tori will also be destroyed. More...
AugTriSolidTorus * | clone () const
| Returns a newly created clone of this structure. More...
const TriSolidTorus & | core () const
| Returns the triangular solid torus at the core of this triangulation. More...
const LayeredSolidTorus * | augTorus (int annulus) const
| Returns the layered solid torus attached to the requested annulus on the boundary of the core triangular solid torus. More...
Perm< 4 > | edgeGroupRoles (int annulus) const
| Returns a permutation describing the role played by each top level edge group of the layered solid torus glued to the requested annulus of the core triangular solid torus. More...
unsigned long | chainLength () const
| Returns the number of tetrahedra in the layered chain linking two of the boundary annuli of the core triangular solid torus. More...
int | chainType () const
| Returns the way in which a layered chain links two of the boundary annuli of the core triangular solid torus. More...
int | torusAnnulus () const
| Returns the single boundary annulus of the core triangular solid torus to which a layered solid torus is attached. More...
bool | hasLayeredChain () const
| Determines whether the core triangular solid torus has two of its boundary annuli linked by a layered chain as described in the general class notes. More...
Manifold * | manifold () const
| Returns the 3-manifold represented by this triangulation, if such a recognition routine has been implemented. More...
std::ostream & | writeName (std::ostream &out) const
| Writes the name of this triangulation as a human-readable string to the given output stream. More...
std::ostream & | writeTeXName (std::ostream &out) const
| Writes the name of this triangulation in TeX format to the given output stream. More...
void | writeTextLong (std::ostream &out) const
| Writes a detailed text representation of this object to the given output stream. More...
std::string | name () const
| Returns the name of this specific triangulation as a human-readable string. More...
std::string | TeXName () const
| Returns the name of this specific triangulation in TeX format. More...
virtual AbelianGroup * | homology () const
| Returns the expected first homology group of this triangulation, if such a routine has been implemented. More...
AbelianGroup * | homologyH1 () const
| Returns the expected first homology group of this triangulation, if such a routine has been implemented. More...
virtual void | writeTextShort (std::ostream &out) const
| Writes a short text representation of this object to the given output stream. More...
std::string | str () const
| Returns a short text representation of this object. More...
std::string | utf8 () const
| Returns a short text representation of this object using unicode characters. More...
std::string | detail () const
| Returns a detailed text representation of this object. More...

## Static Public Member Functions

static AugTriSolidTorus * | isAugTriSolidTorus (const Component< 3 > *comp)
| Determines if the given triangulation component is an augmented triangular solid torus. More...
static StandardTriangulation * | isStandardTriangulation (Component< 3 > *component)
| Determines whether the given component represents one of the standard triangulations understood by Regina. More...
static StandardTriangulation * | isStandardTriangulation (Triangulation< 3 > *tri)
| Determines whether the given triangulation represents one of the standard triangulations understood by Regina. More...

## Static Public Attributes

static const int | CHAIN_NONE
| Indicates that this augmented triangular solid torus contains no layered chain. More...
static const int | CHAIN_MAJOR
| Indicates that this augmented triangular solid torus contains a layered chain attached as described by TriSolidTorus::areAnnuliLinkedMajor(). More...
static const int | CHAIN_AXIS
| Indicates that this augmented triangular solid torus contains a layered chain attached as described by TriSolidTorus::areAnnuliLinkedAxis(). More...

## Detailed Description

Represents an augmented triangular solid torus component of a triangulation.

Such a component is obtained as follows. Begin with a three-tetrahedron triangular solid torus (as described by TriSolidTorus). Observe that the three axis edges divide the boundary into three annuli. Then take one of the following actions.

- To each of these annuli, glue a layered solid torus. Note that the degenerate (2,1,1) layered solid torus (i.e., a one-triangle mobius strip) is allowed and corresponds to simply gluing the two triangles of the annulus together.
- To one of these annuli, glue a layered solid torus as described above. Join the other two annuli with a layered chain in either the manner described by TriSolidTorus::areAnnuliLinkedMajor() or the manner described by TriSolidTorus::areAnnuliLinkedAxis().

It will be assumed that all layered solid tori other than the degenerate (2,1,1) will have (3,2,1) layered solid tori at their bases. That is, layered solid tori that begin with the degenerate (2,1,1) and layer over the boundary of the mobius strip are not considered in this class.

Note that (unless a (1,1,0) layered solid torus is used with the 0 edge glued to an axis edge) the resulting space will be a Seifert fibred space over the 2-sphere with at most three exceptional fibres.

Of the optional StandardTriangulation routines, manifold() is implemented for most augmented triangular solid tori and homology() is not implemented at all.

## Member Function Documentation

## detail()

std::string regina::Output< StandardTriangulation , false >::detail | ( |  | ) | const

inherited

Returns a detailed text representation of this object.

This text may span many lines, and should provide the user with all the information they could want. It should be human-readable, should not contain extremely long lines (which cause problems for users reading the output in a terminal), and should end with a final newline. There are no restrictions on the underlying character set.

Returns
  a detailed text representation of this object.

## str()

std::string regina::Output< StandardTriangulation , false >::str | ( |  | ) | const

inherited

Returns a short text representation of this object.

This text should be human-readable, should fit on a single line, and should not end with a newline. Where possible, it should use plain ASCII characters.

Python:\n In addition to str(), this is also used as the
  Python "stringification" function `__str__()`.

Returns
  a short text representation of this object.

## utf8()

std::string regina::Output< StandardTriangulation , false >::utf8 | ( |  | ) | const

inherited

Returns a short text representation of this object using unicode characters.

Like str(), this text should be human-readable, should fit on a single line, and should not end with a newline. In addition, it may use unicode characters to make the output more pleasant to read. This string will be encoded in UTF-8.

Returns
  a short text representation of this object.

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

- subcomplex/augtrisolidtorus.h

Copyright © 1999-2016, The Regina development team
This software is released under the GNU General Public License, with some additional permissions; see the source code for details.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@maths.uq.edu.au).