Regina Calculation Engine
|
Helper class that stores whether the link of a face is orientable. More...
#include <generic/detail/face.h>
Public Member Functions | |
bool | isLinkOrientable () const |
Determines if the link of this face is orientable. More... | |
Protected Member Functions | |
FaceOrientability () | |
Initialises the link of this face as orientable. More... | |
void | markLinkNonorientable () |
Marks the link of this face as non-orientable. More... | |
Helper class that stores whether the link of a face is orientable.
Every class Face<dim, subdim> inherits from this class.
This class takes a template argument to allow optimisation for those dimensions in which face links are always orientable. In particular, if allowsNonorientable is false
, then this class assumes that all faces will always have orientable links, and it optimises away all the implementation details to leave no overhead at all.
allowsNonorientable | true when this is used for dimensions in which face links could potentially be non-orientable, or false when this is used for dimensions in which face links are always orientable. |
|
protected |
Initialises the link of this face as orientable.
bool regina::detail::FaceOrientability< allowsNonorientable >::isLinkOrientable | ( | ) | const |
Determines if the link of this face is orientable.
This routine is fast: it uses pre-computed information, and does not need to build a full triangulation of the link.
true
if and only if the link is orientable.
|
protected |
Marks the link of this face as non-orientable.