Regina Calculation Engine
|
Represents an arbitrary handlebody. More...
#include <manifold/nhandlebody.h>
Public Member Functions | |
NHandlebody (unsigned long newHandles, bool newOrientable) | |
Creates a new handlebody with the given parameters. More... | |
NHandlebody (const NHandlebody &cloneMe) | |
Creates a clone of the given handlebody. More... | |
virtual | ~NHandlebody () |
Destroys this handlebody. More... | |
unsigned long | getHandles () const |
Returns the number of handles of this handlebody. More... | |
bool | isOrientable () const |
Returns whether this handlebody is orientable. More... | |
bool | operator== (const NHandlebody &compare) const |
Determines whether this and the given handlebody represent the same 3-manifold. More... | |
NAbelianGroup * | getHomologyH1 () const |
Returns the first homology group of this 3-manifold, if such a routine has been implemented. More... | |
std::ostream & | writeName (std::ostream &out) const |
Writes the common name of this 3-manifold as a human-readable string to the given output stream. More... | |
std::ostream & | writeTeXName (std::ostream &out) const |
Writes the common name of this 3-manifold in TeX format to the given output stream. More... | |
![]() | |
virtual | ~NManifold () |
A destructor that does nothing. More... | |
std::string | getName () const |
Returns the common name of this 3-manifold as a human-readable string. More... | |
std::string | getTeXName () const |
Returns the common name of this 3-manifold in TeX format. More... | |
std::string | getStructure () const |
Returns details of the structure of this 3-manifold that might not be evident from its common name. More... | |
virtual NTriangulation * | construct () const |
Returns a triangulation of this 3-manifold, if such a construction has been implemented. More... | |
bool | operator< (const NManifold &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 & | 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... | |
virtual void | writeTextShort (std::ostream &out) const |
Writes this object in short text format to the given output stream. More... | |
virtual void | writeTextLong (std::ostream &out) const |
Writes this object in long text format to the given output stream. More... | |
![]() | |
ShareableObject () | |
Default constructor that does nothing. More... | |
virtual | ~ShareableObject () |
Default destructor that does nothing. More... | |
std::string | str () const |
Returns the output from writeTextShort() as a string. More... | |
std::string | toString () const |
A deprecated alias for str(), which returns the output from writeTextShort() as a string. More... | |
std::string | detail () const |
Returns the output from writeTextLong() as a string. More... | |
std::string | toStringLong () const |
A deprecated alias for detail(), which returns the output from writeTextLong() as a string. More... | |
Additional Inherited Members | |
![]() | |
noncopyable () | |
A constructor which does nothing. More... | |
~noncopyable () | |
A destructor which does nothing. More... | |
Represents an arbitrary handlebody.
All optional NManifold routines except for NManifold::construct() are implemented for this class.
|
inline |
Creates a new handlebody with the given parameters.
newHandles | the number of handles of the handlebody. |
newOrientable | true if the handlebody is to be orientable or false if the handlebody is to be non-orientable. This must be true if the handlebody has no handles. |
|
inline |
Creates a clone of the given handlebody.
cloneMe | the handlebody to clone. |
|
inlinevirtual |
Destroys this handlebody.
|
inline |
Returns the number of handles of this handlebody.
|
virtual |
Returns the first homology group of this 3-manifold, if such a routine has been implemented.
If the calculation of homology has not yet been implemented for this 3-manifold then this routine will return 0.
The details of which 3-manifolds have homology calculation routines can be found in the notes for the corresponding subclasses of NManifold. The default implemention of this routine returns 0.
The homology group will be newly allocated and must be destroyed by the caller of this routine.
Reimplemented from regina::NManifold.
|
inline |
Returns whether this handlebody is orientable.
true
if this handlebody is orientable, or false
if this handlebody is non-orientable.
|
inline |
Determines whether this and the given handlebody represent the same 3-manifold.
compare | the handlebody with which this will be compared. |
true
if and only if this and the given handlebody are homeomorphic.
|
virtual |
Writes the common name of this 3-manifold as a human-readable string to the given output stream.
out | the output stream to which to write. |
Implements regina::NManifold.
|
virtual |
Writes the common name of this 3-manifold in TeX format to the given output stream.
No leading or trailing dollar signs will be included.
out | the output stream to which to write. |
Implements regina::NManifold.