Regina Calculation Engine
|
Represents a particular 3-manifold. More...
#include <manifold/manifold.h>
Public Member Functions | |
virtual | ~Manifold () |
A destructor that does nothing. More... | |
std::string | name () const |
Returns the common name of this 3-manifold as a human-readable string. More... | |
std::string | TeXName () const |
Returns the common name of this 3-manifold in TeX format. More... | |
std::string | structure () const |
Returns details of the structure of this 3-manifold that might not be evident from its common name. More... | |
virtual Triangulation< 3 > * | construct () const |
Returns a triangulation of this 3-manifold, if such a construction has been implemented. More... | |
virtual AbelianGroup * | homology () const |
Returns the first homology group of this 3-manifold, if such a routine has been implemented. More... | |
AbelianGroup * | homologyH1 () const |
Returns the first homology group of this 3-manifold, if such a routine has been implemented. More... | |
virtual bool | isHyperbolic () const =0 |
Returns whether or not this is a finite-volume hyperbolic manifold. More... | |
bool | operator< (const Manifold &compare) const |
Determines in a fairly ad-hoc fashion whether this representation of this 3-manifold is "smaller" than the given representation of the given 3-manifold. More... | |
virtual std::ostream & | writeName (std::ostream &out) const =0 |
Writes the common name of this 3-manifold as a human-readable string to the given output stream. More... | |
virtual std::ostream & | writeTeXName (std::ostream &out) const =0 |
Writes the common name of this 3-manifold in TeX format to the given output stream. More... | |
virtual std::ostream & | writeStructure (std::ostream &out) const |
Writes details of the structure of this 3-manifold that might not be evident from its common name to the given output stream. More... | |
void | writeTextShort (std::ostream &out) const |
Writes a short text representation of this object 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 | 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... | |
Represents a particular 3-manifold.
The triangulation of this 3-manifold that may be in use is not of interest.
Subclasses corresponding to the different types of 3-manifold must (of course) override all pure virtual functions. They must not override writeTextShort() or writeTextLong(), since these routines are not virtual, and are provided by the base class Manifold.
|
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.
|
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.
__str__()
.
|
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.