algebra | |
nabeliangroup.h | Deals with finitely generated abelian groups |
ngrouppresentation.h | Deals with finite presentations of groups |
nhomgrouppresentation.h | Deals with finite presentations of groups |
nmarkedabeliangroup.h | Deals with abelian groups given by chain complexes |
nxmlalgebrareader.h | Deals with parsing XML data for various algebraic structures |
angle | |
nanglestructure.h | Deals with angle structures on triangulations |
nanglestructurelist.h | Contains a packet representing a collection of angle structures on a triangulation |
nxmlanglestructreader.h | Deals with parsing XML data for angle structure lists |
census | |
dim2census.h | Deals with forming a census of all 2-manifold triangulations of a given size |
dim2edgepairing.h | Deprecated header |
dim2gluingperms.h | Deals with selecting gluing permutations to complement a particular pairing of triangle edges |
dim2gluingpermsearcher.h | Supports searching through all possible sets of triangle gluing permutations for a given triangle edge pairing |
dim4gluingperms.h | Deals with selecting gluing permutations to complement a particular pairing of pentachoron facets |
dim4gluingpermsearcher.h | Supports searching through all possible sets of pentachoron gluing permutations for a given pentachoron facet pairing |
ncensus.h | Provides facilities for looking up 3-manifold triangulations in Regina's in-built census databases |
nfacepairing.h | Deprecated header |
ngenericfacetpairing.h | Deprecated header |
ngenericgluingperms.h | Deals with selecting gluing permutations to complement a particular pairing of facets of simplices in an n-manifold triangulation |
ngluingperms.h | Deals with selecting gluing permutations to complement a particular pairing of tetrahedron faces |
ngluingpermsearcher.h | Supports searching through all possible sets of tetrahedron gluing permutations for a given tetrahedron face pairing |
dim2 | |
dim2boundarycomponent.h | Deals with boundary components of a 2-manifold triangulation |
dim2component.h | Deals with connected components of a 2-manifold triangulation |
dim2edge.h | Deals with edges in the 1-skeleton of a 2-manifold triangulation |
dim2edgepairing.h | Deals with dual graphs of 2-manifold triangulations |
dim2exampletriangulation.h | Offers several example 2-manifold triangulations as starting points for testing code or getting used to Regina |
dim2isomorphism.h | Deals with combinatorial isomorphisms of 2-manifold triangulations |
dim2triangle.h | Deals with triangular faces in a 2-manifold triangulation |
dim2triangulation.h | Deals with 2-dimensional triangulations |
dim2vertex.h | Deals with vertices in a 2-manifold triangulation |
nxmldim2trireader.h | Deals with parsing XML data for 2-dimensional triangulation packets |
dim4 | |
dim4boundarycomponent.h | Deals with components of the boundary of a 4-manifold triangulation |
dim4component.h | Deals with connected components of a 4-manifold triangulation |
dim4edge.h | Deals with edges in a 4-manifold triangulation |
dim4exampletriangulation.h | Offers some example 4-manifold triangulations as starting points for testing code or getting used to Regina |
dim4facetpairing.h | Deals with dual graphs of 4-manifold triangulations |
dim4isomorphism.h | Deals with combinatorial isomorphisms of 4-manifold triangulations |
dim4pentachoron.h | Deals with 4-dimensional simplices in a 4-manifold triangulation |
dim4tetrahedron.h | Deals with tetrahedra in the 3-skeleton of a 4-manifold triangulation |
dim4triangle.h | Deals with triangles in a 4-manifold triangulation |
dim4triangulation.h | Deals with 4-dimensional triangulations |
dim4vertex.h | Deals with vertices in a 4-manifold triangulation |
nxmldim4trireader.h | Deals with parsing XML data for 4-dimensional triangulation packets |
enumerate | |
ndoubledescription.h | Provides a modified double description method for polytope vertex enumeration |
ndoubledescriptor.h | Provides a modified double description method for polytope vertex enumeration |
nenumconstraint.h | Deals with validity constraints in polytope vertex enumeration |
nhilbertcd.h | Provides a modified Contejean-Devie algorithm for Hilbert basis enumeration |
nhilbertdual.h | Provides a modified dual algorithm for Hilbert basis enumeration |
nhilbertprimal.h | Provides a modified primal algorithm for Hilbert basis enumeration |
nmaxadmissible.h | Provides an algorithm for enumerating maximal faces of a polyhedral cone that satisfy a set of admissibility constraints |
ntreeconstraint.h | Constraint classes for use with tree traversal enumeration methods |
ntreelp.h | Linear programming code for tree traversal enumeration methods |
ntreetraversal.h | Tree traversal methods for normal surface and angle structure enumeration and optimisation |
ntypetrie.h | A supporting data structure for tree traversal enumeration methods |
ordering.h | Provides different ways of sorting hyperplanes (or matching equations) when performing normal surface enumeration |
file | |
nfileinfo.h | Deals with determining information about Regina data files |
nglobaldirs.h | Gives information about system installation directories |
nxmlfile.h | Deprecated header that deals with storing program data (including packet trees) in XML data files |
foreign | |
csvsurfacelist.h | Deprecated header that exports normal surface lists to plain text CSV files |
dehydration.h | Allows reading lists of dehydrated triangulations |
isosig.h | Allows reading lists of isomorphism signatures |
orb.h | Allows reading Orb / Casson triangulation files |
pdf.h | Deprecated header that allows reading and writing PDF documents |
recogniser.h | Deprecated header that allows exports to Matveev's 3-manifold recogniser |
snappea.h | Deprecated header that allows reading and writing SnapPea files |
generic | |
alias | |
face.h | Provides dimension-specific aliases for dimension-agnostic routines |
facenumber.h | Provides dimension-specific aliases for dimension-agnostic routines |
simplex.h | Provides dimension-specific aliases for dimension-agnostic routines |
detail | |
component.h | Implementation details for connected components of triangulations |
face.h | Implementation details for lower-dimensional faces of triangulations |
facenumbering.h | Implementation details for describing how subdim-faces are numbered within a dim-dimensional simplex |
facetpairing.h | Implementation details for dual graphs of dim-dimensional triangulations |
isomorphism.h | Implementation details for combinatorial isomorphisms between triangulations |
simplex.h | Implementation details for top-dimensional simplices in a triangulation |
triangulation.h | Implementation details for triangulations of arbitrary dimension |
xmltrireader.h | Implementation details for parsing XML data for triangulation packets |
component.h | Deals with connected components of triangulations |
dimtraits.h | Deprecated header |
face.h | Deals with lower-dimensional faces of triangulations |
facenumbering.h | Describes the way in which subdim-faces are numbered within a dim-dimensional simplex |
facetpairing.h | Deals with dual graphs of n-dimensional triangulations |
facetspec.h | Allows lightweight representation of individual facets of simplices |
isomorphism.h | Deals with combinatorial isomorphisms between triangulations |
nfacetspec.h | Deprecated header |
simplex.h | Deals with top-dimensional simplices in a triangulation |
triangulation.h | Deals with triangulations of arbitrary dimension |
xmltrireader.h | Deals with parsing XML data for triangulation packets |
hypersurface | |
hscoordregistry.h | Provides access to a registry of all coordinate systems that can be used to create and store normal hypersurfaces in 4-manifold triangulations |
hypercoords.h | Defines constants for normal hypersurface coordinate systems |
hyperflags.h | Defines constants and flags for normal hypersurface enumeration |
nhsmirrored.h | Provides a normal hypersurface vector that is mirrored in another coordinate system to avoid frequent lengthy calculations |
nhsstandard.h | Implements normal hypersurface vectors using standard tetrahedron-prism coordinates |
nnormalhypersurface.h | Deals with an individual normal hypersurface in a 4-manifold triangulation |
nnormalhypersurfacelist.h | Contains a packet representing a collection of normal hypersurfaces in a 4-manifold triangulation |
nxmlhypersurfacereader.h | Deals with parsing XML data for normal hypersurface lists |
manifold | |
ngraphloop.h | Deals with graph manifolds formed from self-identified Seifert fibred spaces |
ngraphpair.h | Deals with graph manifolds formed from pairs of Seifert fibred spaces |
ngraphtriple.h | Deals with graph manifolds formed from sequences of three Seifert fibred spaces |
nhandlebody.h | Deals with arbitrary handlebodies |
nlensspace.h | Deals with general lens spaces |
nmanifold.h | Deals with the underlying 3-manifolds of triangulations |
notation.h | Explains notation used for describing various types of 3-manifold |
nsfs.h | Deals with general Seifert fibred spaces |
nsfsaltset.h | Assists with providing different representations of the same Seifert fibred space |
nsimplesurfacebundle.h | Deals with simple closed surface bundles |
nsnappeacensusmfd.h | Deals with 3-manifolds from the SnapPea census |
ntorusbundle.h | Deals with torus bundles over the circle |
maths | |
approx.h | Provides facilities for working around rounding errors when dealing with real numbers |
matrixops.h | Provides various complex matrix calculations |
ncyclotomic.h | Implements exact arithmetic in cyclotomic fields |
ninteger.h | Provides arbitrary-precision and fixed-precision integer types |
nlargeinteger.h | A deprecated header for dealing with arbitrary precision integers |
nmatrix.h | Deals with matrices of elements of various types |
nmatrix2.h | Deals with 2x2 integer matrices |
nmatrixint.h | Deals with matrices of arbitrary precision integers |
nperm.h | Deals with permutations of {0,1,...,n-1} |
nperm2.h | Deals with permutations of {0,1} |
nperm3.h | Deals with permutations of {0,1,2} |
nperm4.h | Deals with permutations of {0,1,2,3} |
nperm5.h | Deals with permutations of {0,1,2,3,4} |
npolynomial.h | Implements single variable polynomials over arbitrary rings |
nprimes.h | Support for finding primes and factorising integers |
nrational.h | Deals with artibrary precision rational numbers |
nray.h | Provides a fast class for rational rays rooted at the origin |
numbertheory.h | Provides miscellaneous number theory routines |
nvector.h | Provides a fast and generic vector class |
permconv.h | Conversions between various permutation classes |
packet | |
ncontainer.h | Contains a packet whose entire life purpose is to contain other packets |
npacket.h | Deals with packets of information that form the working data objects |
npacketlistener.h | Deals with objects that can listen for packet events |
npdf.h | A packet that contains a PDF document |
nscript.h | Contains a packet representing a script |
ntext.h | Contains a packet representing a text string |
nxmlpacketreader.h | Deals with parsing XML data for individual packets |
nxmlpacketreaders.h | Deals with parsing XML data for various basic packet types |
nxmltreeresolver.h | Support for resolving dangling packet references after a complete packet tree has been read from file |
packetregistry.h | Provides access to a registry of all packet types known to Regina |
packettype.h | Defines constants for the various packet types known to Regina |
progress | |
nprogresstracker.h | Facilitates progress tracking and cancellation for long operations |
python | |
globalarray.h | Allows global C++ arrays to be wrapped neatly in Python |
snappea | |
nexamplesnappeatriangulation.h | Offers several ready-made example SnapPea triangulations |
nsnappeatriangulation.h | Provides access to the SnapPea kernel |
nxmlsnappeareader.h | Deals with parsing XML data for SnapPea triangulations |
split | |
nsigcensus.h | Deals with forming a census of splitting surface signatures |
nsigisomorphism.h | Deals with full and partial isomorphisms of splitting surface signatures |
nsignature.h | Deals with signatures of splitting surfaces |
subcomplex | |
naugtrisolidtorus.h | Deals with augmented triangular solid torus components of a triangulation |
nblockedsfs.h | Supports Seifert fibred spaces that are triangulated using saturated blocks |
nblockedsfsloop.h | Supports self-identified Seifert fibred spaces that are triangulated using saturated blocks |
nblockedsfspair.h | Supports joined pairs of Seifert fibred spaces that are triangulated using saturated blocks |
nblockedsfstriple.h | Supports joined sequences of three Seifert fibred spaces that are triangulated using saturated blocks |
nl31pillow.h | Deals with triangular pillow L(3,1) components of a triangulation |
nlayeredchain.h | Deals with layered chains in a triangulation |
nlayeredchainpair.h | Deals with layered chain pair components of a triangulation |
nlayeredlensspace.h | Deals with layered lens space components of a triangulation |
nlayeredloop.h | Deals with layered loop components of a triangulation |
nlayeredsolidtorus.h | Deals with layered solid tori in a triangulation |
nlayeredsurfacebundle.h | Deals with layered surface bundle triangulations |
nlayering.h | Assists with the analysis of layerings upon a torus boundary |
npillowtwosphere.h | Deals with 2-spheres made from two triangles glued along their three edges |
npluggedtorusbundle.h | Supports self-identified Seifert fibred spaces that are triangulated using a combination of thin I-bundles and saturated blocks |
nplugtrisolidtorus.h | Deals with plugged triangular solid torus components of a triangulation |
nsatannulus.h | Deals with saturated two-triangle annuli within a Seifert fibred space |
nsatblock.h | Deals with saturated blocks in triangulations of Seifert fibred spaces |
nsatblockstarter.h | Provides a hard-coded list of saturated blocks to use as starting points for recognising larger Seifert fibred spaces |
nsatblocktypes.h | Describes several types of saturated blocks within Seifert fibred space triangulations |
nsatregion.h | Supports connected regions of saturated blocks in triangulations of Seifert fibred spaces |
nsnappeacensustri.h | Deals with 3-manifold triangulations from the SnapPea census |
nsnappedball.h | Deals with snapped 3-balls in a triangulation |
nsnappedtwosphere.h | Deals with 2-spheres made from two snapped 3-balls in a triangulation |
nspiralsolidtorus.h | Deals with spiralled solid tori in a triangulation |
nstandardtri.h | Deals with triangulations whose structures are well-understood |
ntrisolidtorus.h | Deals with triangular solid tori in a triangulation |
ntrivialtri.h | Deals with a few specific hard-coded trivial triangulations |
ntxicore.h | Provides various triangulations of the product of the torus and the interval |
surfaces | |
coordregistry.h | Provides access to a registry of all normal coordinate systems that can be used to create and store normal surfaces in 3-manifold triangulations |
filterregistry.h | Provides access to a registry of all normal surface filter classes that can be used to filter lists of normal surfaces in 3-manifold triangulations |
flavourregistry.h | Deprecated header |
ndisc.h | Deals with individual normal discs and sets of normal discs in a normal surface |
ndisctype.h | Deals with normal and almost normal disc types |
nnormalsurface.h | Deals with an individual normal surface in a 3-manifold triangulation |
nnormalsurfacelist.h | Contains a packet representing a collection of normal surfaces in a 3-manifold |
normalcoords.h | Defines constants for normal surface coordinate systems |
normalflags.h | Defines constants and flags for normal surface enumeration |
nprism.h | Deals with triangular prisms defined by slicing along normal quads in a tetrahedron |
nsanstandard.h | Implements almost normal surface vectors using standard triangle-quad-oct coordinates |
nsmirrored.h | Provides a normal surface vector that is mirrored in another coordinate system to avoid frequent lengthy calculations |
nsoriented.h | Implements normal surface vectors using transversly oriented normal surface coordinates |
nsorientedquad.h | Implements normal surface vectors using transversely oriented quad coordinates |
nsquad.h | Implements normal surface vectors using quad coordinates |
nsquadoct.h | Implements almost normal surface vectors using quad-oct coordinates |
nsstandard.h | Implements normal surface vectors using standard triangle-quad coordinates |
nsurfacefilter.h | Contains a packet that filters through normal surfaces |
nsurfacesubset.h | Provides subsets of normal surface sets |
nxmlfilterreader.h | Deals with parsing XML data for normal surface filters |
nxmlsurfacereader.h | Deals with parsing XML data for normal surface lists |
sfcombination.h | Contains a normal surface filter that simply combines other filters |
sfproperties.h | Contains a normal surface filter that filters by basic properties |
surfacefiltertype.h | Defines constants for normal surface filter types |
treewidth | |
ntreedecomposition.h | Deals with treewidth and tree decompositions, in particular for facet pairing graphs |
triangulation | |
dimtraits.h | Deprecated header |
nboundarycomponent.h | Deals with components of the boundary of a triangulation |
ncomponent.h | Deals with connected components of a 3-manifold triangulation |
nedge.h | Deals with edges in a triangulation |
nexampletriangulation.h | Offers several example 3-manifold triangulations as starting points for testing code or getting used to Regina |
nface.h | Deprecated header |
nfacepair.h | Deals with simple pairs of face numbers |
nfacepairing.h | Deals with dual graphs of 3-manifold triangulations |
nfacetspec.h | Deprecated header |
ngenericisomorphism.h | Deprecated header |
nhomologicaldata.h | Deals with all the details of the cellular homology of a manifold |
nisomorphism.h | Deals with combinatorial isomorphisms of 3-manifold triangulations |
npermit.h | Provides utilities for iterating through permutations |
ntetface.h | Deprecated header |
ntetrahedron.h | Deals with tetrahedra in a triangulation |
ntriangle.h | Deals with triangles in a triangulation |
ntriangulation.h | Deals with 3-dimensional triangulations |
nvertex.h | Deals with vertices in a triangulation |
nxmltrireader.h | Deals with parsing XML data for 3-dimensional triangulation packets |
pachner.h | Explains terminology used with Pachner moves on triangulations |
utilities | |
base64.h | Routines for base64 encoding and decoding taken and modified from the Base64 project at base64.sourceforge.net |
bitmanip.h | Optimised classes for bitwise analysis and manipulation of native data types |
flags.h | A template class for handling bitwise combinations of enum flags |
i18nutils.h | Various classes and routines for working with internationalisation and character encodings |
intrusiverefcounter.h | Provides a temporary replacement for boost::intrusive_ref_counter |
intutils.h | Miscellaneous utility classes for analysing the built-in integer types at compile time |
memutils.h | Provides object creation and deletion functions for use with the Standard Template Library |
nbitmask.h | Provides optimised bitmasks of arbitrary length |
nbooleans.h | Provides various types that extend the standard boolean |
nlistoncall.h | Provides lists of expensive objects that are only created when required |
nmarkedvector.h | Provides space-efficient arrays with fast object-to-index lookup |
nproperty.h | Deals with calculable properties of individual objects |
nqitmask.h | Provides optimised "base 4 bitmasks" of fixed length |
nthread.h | Provides very basic thread handling |
ntrieset.h | Provides a trie-like structure for storing sets |
ntritmask.h | Provides optimised "ternary bitmasks" of fixed length |
nxmlcallback.h | Deals with parsing XML program data at the file level |
nxmlelementreader.h | Deals with parsing XML program data at the tag level |
osutils.h | Provides miscellaneous helper routines that are specific to particular operating systems |
ptrutils.h | Provides function objects for use in the Standard Template Library that take pointers as arguments but work with the pointees instead |
registryutils.h | Miscellaneous utility classes for working with registries of packet types, normal coordinate systems, and so on |
safepointeebase.h | Provides a base class for objects pointable by SafePtr |
safeptr.h | Provides a smart pointer that is safe in the sense that it cannot be dangling |
saferemnant.h | Implementation details for safe pointers |
sequence.h | Support for temporary lightweight sequences |
stringutils.h | Provides various routines for use with C++ strings |
xmlutils.h | Various classes and routines for XML manipulation, some taken or modified from the libxml++ library. The libxml2 library is used to do most of the underlying work |
docs.h | Contains miscellaneous documentation |
engine.h | Provides global routines for interfacing with the Regina calculation engine |
output.h | Provides a common interface for human-readable text output |
regina-core.h | Core definitions that must be included in every Regina header file |