Regina Calculation Engine
|
Represents a subset of a normal surface list. More...
#include <surfaces/nsurfacesubset.h>
Public Member Functions | |
NSurfaceSubset (const NNormalSurfaceList &list, const NSurfaceFilter &filter) | |
Creates a new normal surface subset. More... | |
virtual | ~NSurfaceSubset () |
Destroys this normal surface subset. More... | |
NormalCoords | getFlavour () const |
Returns the coordinate system being used by the surfaces stored in this set. More... | |
NormalCoords | coords () const |
Returns the coordinate system being used by the surfaces stored in this set. More... | |
bool | allowsAlmostNormal () const |
Determines if the coordinate system being used allows for almost normal surfaces, that is, allows for octagonal discs. More... | |
bool | allowsSpun () const |
Determines if the coordinate system being used allows for spun normal surfaces. More... | |
bool | allowsOriented () const |
Determines if the coordinate system being used allows for transversely oriented normal surfaces. More... | |
bool | isEmbeddedOnly () const |
Returns whether this set is known to contain only embedded normal surfaces. More... | |
NTriangulation * | getTriangulation () const |
Returns the triangulation in which these normal surfaces live. More... | |
unsigned long | getNumberOfSurfaces () const |
Returns the number of surfaces stored in this set. More... | |
const NNormalSurface * | getSurface (unsigned long index) const |
Returns the surface at the requested index in this set. More... | |
void | writeAllSurfaces (std::ostream &out) const |
Writes the number of surfaces in this set followed by the details of each surface 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... | |
Input and Output | |
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... | |
Represents a subset of a normal surface list.
This subset merely contains pointers to some of the normal surfaces stored in the original list.
If the surfaces in the original list should change, the surfaces in this subset will thus change also. If the original list is deleted, this subset will become invalid.
regina::NSurfaceSubset::NSurfaceSubset | ( | const NNormalSurfaceList & | list, |
const NSurfaceFilter & | filter | ||
) |
Creates a new normal surface subset.
The surfaces included in the subset will be those from the given set that are accepted by the given filter.
list | the surface list for which this will be a subset. |
filter | the filter that defines which surfaces in list will be included in this subset. |
|
inlinevirtual |
Destroys this normal surface subset.
|
inline |
Determines if the coordinate system being used allows for almost normal surfaces, that is, allows for octagonal discs.
true
if and only if almost normal surfaces are allowed.
|
inline |
Determines if the coordinate system being used allows for transversely oriented normal surfaces.
true
if and only if transverse orientations are supported.
|
inline |
Determines if the coordinate system being used allows for spun normal surfaces.
true
if and only if spun normal surface are supported.
|
inline |
Returns the coordinate system being used by the surfaces stored in this set.
|
inherited |
Returns the output from writeTextLong() as a string.
|
inline |
Returns the coordinate system being used by the surfaces stored in this set.
|
inline |
Returns the number of surfaces stored in this set.
|
inline |
Returns the surface at the requested index in this set.
index | the index of the requested surface in this set; this must be between 0 and getNumberOfSurfaces()-1 inclusive. |
|
inline |
Returns the triangulation in which these normal surfaces live.
|
inline |
Returns whether this set is known to contain only embedded normal surfaces.
If it is possible that there are non-embedded surfaces in this set but it is not known whether any are actually present or not, this routine should return false
.
true
if it is known that only embedded normal surfaces exist in this list, or false
if immersed and/or singular normal surfaces might be present.
|
inherited |
Returns the output from writeTextShort() as a string.
__str__()
function.
|
inlineinherited |
A deprecated alias for str(), which returns the output from writeTextShort() as a string.
|
inlineinherited |
A deprecated alias for detail(), which returns the output from writeTextLong() as a string.
void regina::NSurfaceSubset::writeAllSurfaces | ( | std::ostream & | out | ) | const |
Writes the number of surfaces in this set followed by the details of each surface to the given output stream.
Output will be over many lines.
out | the output stream to which to write. |
|
inlinevirtual |
Writes this object in long text format to the given output stream.
The output should provide the user with all the information they could want. The output should be human-readable, should not contain extremely long lines (so users can read the output in a terminal), and should end with a final newline.
The default implementation of this routine merely calls writeTextShort() and adds a newline.
out | the output stream to which to write. |
Reimplemented from regina::ShareableObject.
|
inlinevirtual |
Writes this object in short text format to the given output stream.
The output should be human-readable, should fit on a single line, and should not end with a newline.
out | the output stream to which to write. |
Implements regina::ShareableObject.