Regina Calculation Engine
|
A normal surface filter that filters by basic properties of the normal surface. More...
#include <surfaces/surfacefilter.h>
Public Types | |
typedef Packet | SafePointeeType |
The type of object being pointed to. More... | |
Public Member Functions | |
SurfaceFilterProperties () | |
Creates a new surface filter that accepts all normal surfaces. More... | |
SurfaceFilterProperties (const SurfaceFilterProperties &cloneMe) | |
Creates a new surface filter that is a clone of the given surface filter. More... | |
const std::set< LargeInteger > & | eulerChars () const |
Returns the set of allowable Euler characteristics. More... | |
size_t | countEulerChars () const |
Returns the number of allowable Euler characteristics. More... | |
LargeInteger | eulerChar (size_t index) const |
Returns the allowable Euler characteristic at the given index in the set. More... | |
BoolSet | orientability () const |
Returns the set of allowable orientabilities. More... | |
BoolSet | compactness () const |
Returns the set of allowable compactness properties. More... | |
BoolSet | realBoundary () const |
Returns the set of allowable has-real-boundary properties. More... | |
void | setEulerChars (const std::set< LargeInteger > &s) |
Sets the allowable Euler characteristics to the given set. More... | |
void | addEulerChar (const LargeInteger &ec) |
Adds the given Euler characteristic to the set of allowable Euler characteristics. More... | |
void | removeEulerChar (const LargeInteger &ec) |
Removes the given Euler characteristic from the set of allowable Euler characteristics. More... | |
void | removeAllEulerChars () |
Empties the set of allowable Euler characteristics. More... | |
void | setOrientability (const BoolSet &value) |
Sets the set of allowable orientabilities. More... | |
void | setCompactness (const BoolSet &value) |
Sets the set of allowable compactness properties. More... | |
void | setRealBoundary (const BoolSet &value) |
Sets the set of allowable has-real-boundary properties. More... | |
virtual bool | accept (const NormalSurface &surface) const override |
Decides whether or not the given normal surface is accepted by this filter. More... | |
virtual void | writeTextLong (std::ostream &out) const override |
Writes a detailed text representation of this object to the given output stream. More... | |
virtual SurfaceFilterType | filterType () const |
Returns the unique integer ID corresponding to the filtering method that is this particular subclass of SurfaceFilter. More... | |
virtual std::string | filterTypeName () const |
Returns a string description of the filtering method that is this particular subclass of SurfaceFilter. More... | |
virtual void | writeTextShort (std::ostream &out) const override |
Writes a short text representation of this object to the given output stream. More... | |
virtual bool | dependsOnParent () const override |
Determines if this packet depends upon its parent. 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... | |
bool | hasSafePtr () const |
Is there one or more SafePtr currently pointing to this object? More... | |
Static Public Member Functions | |
static XMLFilterReader * | xmlFilterReader (Packet *parent) |
static XMLPacketReader * | xmlReader (Packet *parent, XMLTreeResolver &resolver) |
Static Public Attributes | |
static constexpr const SurfaceFilterType | filterTypeID |
A compile-time constant that identifies this type of surface filter. More... | |
Protected Member Functions | |
virtual Packet * | internalClonePacket (Packet *parent) const override |
Makes a newly allocated copy of this packet. More... | |
virtual void | writeXMLFilterData (std::ostream &out) const override |
Writes a chunk of XML containing the details of this filter. More... | |
virtual void | writeXMLPacketData (std::ostream &out) const override |
Writes a chunk of XML containing the data for this packet only. More... | |
File I/O | |
bool | save (const char *filename, bool compressed=true) const |
Saves the subtree rooted at this packet to the given Regina data file, using Regina's native XML file format. More... | |
bool | save (std::ostream &s, bool compressed=true) const |
Writes the subtree rooted at this packet to the given output stream, in the format of a Regina XML data file. More... | |
void | writeXMLFile (std::ostream &out) const |
Writes the subtree rooted at this packet to the given output stream in Regina's native XML file format. More... | |
std::string | internalID () const |
Returns a unique string ID that identifies this packet. More... | |
bool | hasOwner () const |
Indicates whether some other object in the calculation engine is responsible for ultimately destroying this object. More... | |
void | writeXMLPacketTree (std::ostream &out) const |
Writes a chunk of XML containing the subtree with this packet as matriarch. More... | |
A normal surface filter that filters by basic properties of the normal surface.
If a property of the surface (such as Euler characteristic or orientability) cannot be determined, the surface will pass any test based on that particular property. For instance, say a surface is required to be both orientable and compact, and say that orientability cannot be determined. Then the surface will be accepted solely on the basis of whether or not it is compact.
|
inherited |
The type of object being pointed to.
|
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.
|
inlineinherited |
Is there one or more SafePtr currently pointing to this object?
|
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.