Regina Calculation Engine
Public Member Functions | Protected Member Functions | Friends | List of all members
regina::AngleStructure Class Reference

Represents an angle structure on a triangulation. More...

#include <angle/anglestructure.h>

Inheritance diagram for regina::AngleStructure:
regina::ShortOutput< AngleStructure > regina::Output< AngleStructure, false >

Public Member Functions

 AngleStructure (const Triangulation< 3 > *triang, AngleStructureVector *newVector)
 Creates a new angle structure on the given triangulation with the given coordinate vector. More...
 
 ~AngleStructure ()
 Destroys this angle structure. More...
 
AngleStructureclone () const
 Creates a newly allocated clone of this angle structure. More...
 
Rational angle (size_t tetIndex, int edgePair) const
 Returns the requested angle in this angle structure. More...
 
const Triangulation< 3 > * triangulation () const
 Returns the triangulation on which this angle structure lies. More...
 
bool isStrict () const
 Determines whether this is a strict angle structure. More...
 
bool isTaut () const
 Determines whether this is a taut angle structure. More...
 
bool isVeering () const
 Determines whether this is a veering structure. More...
 
const AngleStructureVectorrawVector () const
 Gives read-only access to the raw vector that sits beneath this angle structure. More...
 
void writeTextShort (std::ostream &out) const
 Writes a short text representation of this object to the given output stream. More...
 
void writeXMLData (std::ostream &out) const
 Writes a chunk of XML containing this angle structure and all of its properties. More...
 
void writeTextLong (std::ostream &out) const
 A default implementation for detailed output. 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...
 

Protected Member Functions

void calculateType () const
 Calculates the structure type (strict or taut) and stores it as a property. More...
 

Friends

class regina::XMLAngleStructureReader
 

Detailed Description

Represents an angle structure on a triangulation.

Once the underlying triangulation changes, this angle structure is no longer valid.

Member Function Documentation

◆ detail()

std::string regina::Output< AngleStructure , supportsUtf8 >::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< AngleStructure , supportsUtf8 >::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< AngleStructure , supportsUtf8 >::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.

◆ writeTextLong()

void regina::ShortOutput< AngleStructure , false >::writeTextLong ( std::ostream &  out) const
inlineinherited

A default implementation for detailed output.

This routine simply calls T::writeTextShort() and appends a final newline.

Python:\n Not present.
Parameters
outthe output stream to which to write.

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

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).