Regina Calculation Engine
File List
Here is a list of all documented files with brief descriptions:
docs.hContains miscellaneous documentation
engine.hProvides global routines for interfacing with the Regina calculation engine
regina-core.hCore definitions that must be included in every Regina header file
shareableobject.hDeals with objects that can be shared from the calculation engine with the outside world
algebra/nabeliangroup.hDeals with finitely generated abelian groups
algebra/ngrouppresentation.hDeals with finite presentations of groups
algebra/nmarkedabeliangroup.hDeals with abelian groups given by chain complexes
algebra/nxmlalgebrareader.hDeals with parsing XML data for various algebraic structures
angle/nanglestructure.hDeals with angle structures on triangulations
angle/nanglestructurelist.hContains a packet representing a collection of angle structures on a triangulation
angle/nxmlanglestructreader.hDeals with parsing XML data for angle structure lists
census/ncensus.hDeals with forming a census of all 3-manifold triangulations of a given size
census/nfacepairing.hDeals with pairing off tetrahedron faces in a triangulation census
census/ngluingperms.hDeals with selecting gluing permutations to complement a particular pairing of tetrahedron faces
census/ngluingpermsearcher.hSupports searching through all possible sets of tetrahedron gluing permutations for a given tetrahedron face pairing
enumerate/ndoubledescription.hProvides a modified double description method for polytope vertex enumeration
enumerate/ndoubledescriptor.hProvides a modified double description method for polytope vertex enumeration
enumerate/nenumconstraint.hDeals with validity constraints in polytope vertex enumeration
enumerate/nhilbertcd.hProvides a modified Contejean-Devie algorithm for Hilbert basis enumeration
enumerate/nhilbertdual.hProvides a modified dual algorithm for Hilbert basis enumeration
enumerate/nhilbertprimal.hProvides a modified primal algorithm for Hilbert basis enumeration
enumerate/nmaxadmissible.hProvides an algorithm for enumerating maximal faces of a polyhedral cone that satisfy a set of admissibility constraints
enumerate/ordering.hProvides different ways of sorting hyperplanes (or matching equations) when performing normal surface enumeration
file/nfile.hDeals with reading and writing packet trees to and from old-style binary files
file/nfileinfo.hDeals with determining information about Regina data files
file/nfilepropertyreader.hDeals with reading individual properties of objects from old-style binary files
file/nglobaldirs.hGives information about system installation directories
file/nresources.hProvides methods for accessing old-style binary file-like resources
file/nxmlcallback.hDeals with parsing XML program data at the file level
file/nxmlelementreader.hDeals with parsing XML program data at the tag level
file/nxmlfile.hDeals with storing program data (including packet trees) in XML data files
foreign/csvsurfacelist.hExports normal surface lists to plain text CSV files
foreign/dehydration.hAllows reading lists of dehydrated triangulations
foreign/isosig.hAllows reading lists of isomorphism signatures
foreign/orb.hAllows reading Orb / Casson triangulation files
foreign/pdf.hAllows reading and writing PDF documents
foreign/recogniser.hAllows exports to Matveev's 3-manifold recogniser
foreign/snappea.hAllows reading and writing SnapPea files
manifold/ngraphloop.hDeals with graph manifolds formed from self-identified Seifert fibred spaces
manifold/ngraphpair.hDeals with graph manifolds formed from pairs of Seifert fibred spaces
manifold/ngraphtriple.hDeals with graph manifolds formed from sequences of three Seifert fibred spaces
manifold/nhandlebody.hDeals with arbitrary handlebodies
manifold/nlensspace.hDeals with general lens spaces
manifold/nmanifold.hDeals with the underlying 3-manifolds of triangulations
manifold/notation.hExplains notation used for describing various types of 3-manifold
manifold/nsfs.hDeals with general Seifert fibred spaces
manifold/nsfsaltset.hAssists with providing different representations of the same Seifert fibred space
manifold/nsimplesurfacebundle.hDeals with simple closed surface bundles
manifold/nsnappeacensusmfd.hDeals with 3-manifolds from the SnapPea census
manifold/ntorusbundle.hDeals with torus bundles over the circle
maths/approx.hProvides facilities for working around rounding errors when dealing with real numbers
maths/matrixops.hProvides various complex matrix calculations
maths/nlargeinteger.hDeals with arbitrary precision integers
maths/nmatrix.hDeals with matrices of elements of various types
maths/nmatrix2.hDeals with 2x2 integer matrices
maths/nmatrixint.hDeals with matrices of arbitrary precision integers
maths/nperm3.hDeals with permutations of {0,1,2}
maths/nperm4.hDeals with permutations of {0,1,2,3}
maths/nperm5.hDeals with permutations of {0,1,2,3,4}
maths/nprimes.hSupport for finding primes and factorising integers
maths/nrational.hDeals with artibrary precision rational numbers
maths/nray.hProvides a fast class for rational rays rooted at the origin
maths/numbertheory.hProvides miscellaneous number theory routines
maths/nvector.hProvides a fast and generic vector class
maths/permconv.hConversions between various permutation classes
packet/ncontainer.hContains a packet whose entire life purpose is to contain other packets
packet/npacket.hDeals with packets of information that form the working data objects
packet/npacketlistener.hDeals with objects that can listen for packet events
packet/npdf.hA packet that contains a PDF document
packet/nscript.hContains a packet representing a script
packet/ntext.hContains a packet representing a text string
packet/nxmlpacketreader.hDeals with parsing XML data for individual packets
packet/nxmlpacketreaders.hDeals with parsing XML data for various basic packet types
packet/packetregistry.hContains a registry of packet types known to the engine
progress/nprogress.hAllows external interfaces to obtain progress reports when running long calculations
progress/nprogressmanager.hFacilitates sharing NProgress objects between an operation thread and an external interface
progress/nprogresstypes.hProvides specific methods of representing progress reports
snappea/nsnappeatriangulation.hAllows Regina triangulations to interact with the SnapPea kernel
split/nsigcensus.hDeals with forming a census of splitting surface signatures
split/nsigisomorphism.hDeals with full and partial isomorphisms of splitting surface signatures
split/nsignature.hDeals with signatures of splitting surfaces
subcomplex/naugtrisolidtorus.hDeals with augmented triangular solid torus components of a triangulation
subcomplex/nblockedsfs.hSupports closed Seifert fibred spaces that are triangulated using saturated blocks
subcomplex/nblockedsfsloop.hSupports self-identified Seifert fibred spaces that are triangulated using saturated blocks
subcomplex/nblockedsfspair.hSupports joined pairs of Seifert fibred spaces that are triangulated using saturated blocks
subcomplex/nblockedsfstriple.hSupports joined sequences of three Seifert fibred spaces that are triangulated using saturated blocks
subcomplex/nl31pillow.hDeals with triangular pillow L(3,1) components of a triangulation
subcomplex/nlayeredchain.hDeals with layered chains in a triangulation
subcomplex/nlayeredchainpair.hDeals with layered chain pair components of a triangulation
subcomplex/nlayeredlensspace.hDeals with layered lens space components of a triangulation
subcomplex/nlayeredloop.hDeals with layered loop components of a triangulation
subcomplex/nlayeredsolidtorus.hDeals with layered solid tori in a triangulation
subcomplex/nlayeredsurfacebundle.hDeals with layered surface bundle triangulations
subcomplex/nlayering.hAssists with the analysis of layerings upon a torus boundary
subcomplex/npillowtwosphere.hDeals with 2-spheres made from two faces glued along their three edges
subcomplex/npluggedtorusbundle.hSupports self-identified Seifert fibred spaces that are triangulated using a combination of thin I-bundles and saturated blocks
subcomplex/nplugtrisolidtorus.hDeals with plugged triangular solid torus components of a triangulation
subcomplex/nsatannulus.hDeals with saturated two-face annuli within a Seifert fibred space
subcomplex/nsatblock.hDeals with saturated blocks in triangulations of Seifert fibred spaces
subcomplex/nsatblockstarter.hProvides a hard-coded list of saturated blocks to use as starting points for recognising larger Seifert fibred spaces
subcomplex/nsatblocktypes.hDescribes several types of saturated blocks within Seifert fibred space triangulations
subcomplex/nsatregion.hSupports connected regions of saturated blocks in triangulations of Seifert fibred spaces
subcomplex/nsnappeacensustri.hDeals with 3-manifold triangulations from the SnapPea census
subcomplex/nsnappedball.hDeals with snapped 3-balls in a triangulation
subcomplex/nsnappedtwosphere.hDeals with 2-spheres made from two snapped 3-balls in a triangulation
subcomplex/nspiralsolidtorus.hDeals with spiralled solid tori in a triangulation
subcomplex/nstandardtri.hDeals with triangulations whose structures are well-understood
subcomplex/ntrisolidtorus.hDeals with triangular solid tori in a triangulation
subcomplex/ntrivialtri.hDeals with a few specific hard-coded trivial triangulations
subcomplex/ntxicore.hProvides various triangulations of the product of the torus and the interval
surfaces/filterregistry.hContains a registry of normal surface filtering classes known to the engine. Each such class should be a subclass of NSurfaceFilter
surfaces/flavourregistry.hContains a registry of coordinate system flavours known to the engine that can actually be used to create and store normal surfaces in 3-manifold triangulations
surfaces/ndisc.hDeals with individual normal discs and sets of normal discs in a normal surface
surfaces/ndisctype.hDeals with normal and almost normal disc types
surfaces/nnormalsurface.hDeals with an individual normal surface in a 3-manifold triangulation
surfaces/nnormalsurfacelist.hContains a packet representing a collection of normal surfaces in a 3-manifold
surfaces/nprism.hDeals with triangular prisms defined by slicing along normal quads in a tetrahedron
surfaces/nsanstandard.hImplements almost normal surface vectors using standard triangle-quad-oct coordinates
surfaces/nsmirrored.hProvides a normal surface vector that is mirrored in another coordinate system to avoid frequent lengthy calculations
surfaces/nsoriented.hImplements normal surface vectors using transversly oriented normal surface coordinates
surfaces/nsorientedquad.hImplements normal surface vectors using transversely oriented quad coordinates
surfaces/nsquad.hImplements normal surface vectors using quad coordinates
surfaces/nsquadoct.hImplements almost normal surface vectors using quad-oct coordinates
surfaces/nsstandard.hImplements normal surface vectors using standard triangle-quad coordinates
surfaces/nsurfacefilter.hContains a packet that filters through normal surfaces
surfaces/nsurfaceset.hProvides access to a collection of normal surfaces
surfaces/nsurfacesubset.hProvides subsets of normal surface sets
surfaces/nxmlfilterreader.hDeals with parsing XML data for normal surface filters
surfaces/nxmlsurfacereader.hDeals with parsing XML data for normal surface lists
surfaces/sfcombination.hContains a normal surface filter that simply combines other filters
surfaces/sfproperties.hContains a normal surface filter that filters by basic properties
triangulation/nboundarycomponent.hDeals with components of the boundary of a triangulation
triangulation/ncomponent.hDeals with components of a triangulation
triangulation/nedge.hDeals with edges in a triangulation
triangulation/nexampletriangulation.hOffers several example triangulations as starting points for testing code or getting used to Regina
triangulation/nface.hDeals with faces in a triangulation
triangulation/nfacepair.hDeals with simple pairs of face numbers
triangulation/nfacetspec.hAllows lightweight representation of individual facets of simplices
triangulation/nhomologicaldata.hDeals with all the details of the cellular homology of a manifold
triangulation/nisomorphism.hDeals with combinatorial isomorphisms of triangulations
triangulation/nperm.hA deprecated header for dealing with permutations of {0,1,2,3}
triangulation/npermit.hProvides utilities for iterating through permutations
triangulation/ntetface.hDeprecated header; please use nfacetspec.h instead
triangulation/ntetrahedron.hDeals with tetrahedra in a triangulation
triangulation/ntriangulation.hDeals with triangulations
triangulation/nvertex.hDeals with vertices in a triangulation
triangulation/nxmltrireader.hDeals with parsing XML data for triangulation packets
utilities/base64.hRoutines for base64 encoding and decoding taken from the gnulib library
utilities/bitmanip.hOptimised classes for bitwise analysis and manipulation of native data types
utilities/boostutils.hMiscellaneous utility classes taken or modified from the Boost C++ libraries
utilities/hashmap.hIncludes the Standard Template Library hash map header
utilities/hashset.hIncludes the Standard Template Library hash set header
utilities/hashutils.hProvides a variety of hash functions for use with the Standard Template Library
utilities/i18nutils.hVarious classes and routines for working with internationalisation and character encodings
utilities/memutils.hProvides object creation and deletion functions for use with the Standard Template Library
utilities/nbitmask.hProvides optimised bitmasks of arbitrary length
utilities/nbooleans.hProvides various types that extend the standard boolean
utilities/nindexedarray.hDeals with arrays of objects with fast object-to-index lookup
utilities/nlistoncall.hProvides lists of expensive objects that are only created when required
utilities/nmarkedvector.hProvides space-efficient arrays with fast object-to-index lookup
utilities/nproperty.hDeals with calculable properties of individual objects
utilities/nthread.hProvides very basic thread handling
utilities/ntrieset.hProvides a trie-like structure for storing sets
utilities/osutils.hProvides miscellaneous helper routines that are specific to particular operating systems
utilities/ptrutils.hProvides function objects for use in the Standard Template Library that take pointers as arguments but work with the pointees instead
utilities/stlutils.hMiscellaneous utility classes and routines taken or modified from the Standard Template Library
utilities/stringutils.hProvides various routines for use with C++ strings
utilities/xmlutils.hVarious 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
utilities/zstream.hProvides compressed I/O streams
python/globalarray.hAllows global C++ arrays to be wrapped neatly in Python

Copyright © 1999-2012, The Regina development team
This software is released under the GNU General Public License.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@debian.org).