Regina Calculation Engine
|
Splitting surfaces in triangulations. More...
Classes | |
class | regina::NSigCensus |
A utility class used by formSigCensus(). More... | |
class | regina::NSigPartialIsomorphism |
Represents a partial isomorphism between two splitting surface signatures. More... | |
class | regina::NSignature |
Represents a signature of a splitting surface in a closed 3-manifold triangulation. More... | |
Typedefs | |
typedef std::list < NSigPartialIsomorphism * > | regina::NSigIsoList |
A list of partial isomorphisms on splitting surface signatures. More... | |
typedef void(* | regina::UseSignature )(const NSignature &, const NSigIsoList &, void *) |
A routine used to do arbitrary processing upon a splitting surface signature and its automorphisms. More... | |
Functions | |
REGINA_API unsigned long | regina::formSigCensus (unsigned order, UseSignature use, void *useArgs=0) |
Forms a census of all splitting surface signatures of the given order. More... | |
Splitting surfaces in triangulations.
typedef std::list<NSigPartialIsomorphism*> regina::NSigIsoList |
A list of partial isomorphisms on splitting surface signatures.
typedef void(* regina::UseSignature)(const NSignature &, const NSigIsoList &, void *) |
A routine used to do arbitrary processing upon a splitting surface signature and its automorphisms.
Such routines are used to process signatures found when running a signature census.
The first parameter passed should be a splitting surface signature. The second parameter should be a list of all automorphisms of this signature. The third parameter may contain arbitrary data as passed to formSigCensus().
REGINA_API unsigned long regina::formSigCensus | ( | unsigned | order, |
UseSignature | use, | ||
void * | useArgs = 0 |
||
) |
Forms a census of all splitting surface signatures of the given order.
The order of a signature is the number of quads in the corresponding splitting surface.
Each signature will be produced precisely once up to equivalence. Signatures are considered equivalent if they are related by some combination of:
Each signature produced will have its cycles ordered by decreasing length. Each cycle will have at least half of its symbols lower-case.
For each signature that is generated, routine use (as passed to this function) will be called with that signature and its automorphisms as arguments.
order | the order of signatures to generate. |
use | the function to call upon each signature that is found. The first parameter passed to this function will be a splitting surface signature. The second parameter will be a list of all its automorphisms. The third parameter will be parameter useArgs as was passed to this routine. |
useArgs | the pointer to pass as the final parameter for the function use which will be called upon each signature found. |