Regina Calculation Engine
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345]
 CBanConstraint
 Cregina::BanConstraintBaseA base class for additional banning and marking constraints that we can place on tree traversal algorithms
 Cregina::LPConstraintEuler::CoefficientsStores the extra coefficients in the tableaux associated with this constraint class (in this case, one extra integer per column)
 Cregina::LPConstraintNonSpun::CoefficientsStores the extra coefficients in the tableaux associated with this constraint class (in this case, two extra integers per column)
 Cregina::LPConstraintBase::CoefficientsStores the extra coefficients in a single column for the nConstraints additional rows that we add to the tableaux to describe the nConstraints additional linear equations or inequalities
 Cregina::LPConstraintNone::CoefficientsStores the extra coefficients in the tableaux associated with this constraint class (which for this class is a no-op, since in this case there are no extra coefficients)
 CCoefficients
 Cregina::Dim2CensusA utility class used to search for triangulations across one or more 2-manifold census databases
 Cregina::Dim2EdgeEmbeddingDetails how an edge in the 1-skeleton of a 2-manifold triangulation forms part of an individual triangle
 Cregina::Dim2ExampleTriangulationThis class offers routines for constructing sample 2-manifold triangulations of various types
 Cregina::Dim2VertexEmbeddingDetails how a vertex in the skeleton of a 2-manifold triangulation forms part of an individual triangle
 Cregina::DimTraits< dim >A template class that provides typedefs and other information about working in each of the supported dimensions
 Cregina::Flags< T >A class representing a bitwise combination of flags defined by an enumeration type
 Cregina::Flags< NormalAlgFlags >
 Cregina::Flags< NormalListFlags >
 Cregina::FuncDelete< T >An adaptable unary function used to deallocate objects
 Cregina::FuncNew< T >An adaptable generator used to create objects using default constructors
 Cregina::FuncNewClonePtr< T >An adaptable unary function used to create objects using the clone() method
 Cregina::FuncNewCopyPtr< T >An adaptable unary function used to create objects using copy constructors
 Cregina::FuncNewCopyRef< T >An adaptable unary function used to create objects using copy constructors
 Cregina::GenericBitManipulator< T, size >A generic class for bitwise analysis and manipulation of native data types
 Cregina::python::GlobalArray< T, ReturnValuePolicy >A template class that references a constant one-dimensional C++ array
 Cregina::python::GlobalArray2D< T, ReturnValuePolicy >A template class that references a constant two-dimensional C++ array
 Cregina::python::GlobalArray3D< T, ReturnValuePolicy >A template class that references a constant three-dimensional C++ array
 Cregina::InfinityBase< supportInfinity >Internal base classes for use with NIntegerBase, templated on whether we should support infinity as an allowed value
 Cregina::IntOfSize< bytes >Gives access to k-byte integer types, where k is a constant that is not known until compile time
 Cistream
 Citerator
 Cregina::LessDeref< T, Comp >An adaptable binary function used to compare the objects to which pointers are pointing
 Cregina::i18n::LocaleA simple class with static routines for querying information about the current locale
 Cregina::LPConstraintBaseA base class for additional linear constraints that we can add to the tableaux of normal surface or angle structure matching equations
 Cregina::LPData< LPConstraint, Integer >Stores an intermediate tableaux for the dual simplex method, and contains all of the core machinery for using the dual simplex method
 Cregina::LPInitialTableaux< LPConstraint >Stores an adjusted matrix of homogeneous linear matching equations based on a given triangulation, in sparse form
 Cregina::LPMatrix< Integer >A matrix class for use with linear programming
 Cmap
 Cregina::NMutex::MutexLockA utility class for locking and unlocking a mutex
 Cregina::NBitmaskA bitmask that can store arbitrarily many true-or-false bits
 Cregina::NBitmask1< T >A small but extremely fast bitmask class that can store up to 8 * sizeof(T) true-or-false bits
 Cregina::NBitmask2< T, U >A small but extremely fast bitmask class that can store up to 8 * sizeof(T) + 8 * sizeof(U) true-or-false bits
 Cregina::NBoolSetA set of booleans
 Cregina::NCensusA utility class used to search for triangulations across one or more 3-manifold census databases
 Cregina::NCensusDBStores the location and description of one of Regina's in-built census databases
 Cregina::NDiscSetSurfaceRepresents the set of all normal discs forming a normal surface
 Cregina::NDiscSetTetRepresents a set of normal discs inside a single tetrahedron
 Cregina::NDiscSpecSpecifies a single normal disc in a normal surface
 Cregina::NDiscSpecIteratorAn iterator used for running through all normal discs in a normal surface
 Cregina::NDiscTypeIdentifies a single normal or almost normal disc type within a triangulation
 Cregina::NDoubleDescriptionImplements a modified double description method for polytope vertex enumeration
 Cregina::NEdgeEmbeddingDetails how an edge in the skeleton forms part of an individual tetrahedron
 Cregina::NExampleTriangulationThis class offers routines for constructing sample 3-manifold triangulations of various types
 Cregina::NFacePairRepresents a pair of tetrahedron face numbers
 Cregina::NFacetSpec< dim >A lightweight class used to refer to a particular facet of a particular simplex in a triangulation
 Cregina::NGenericGluingPerms< dim >A dimension-agnostic base class that represents a specific set of gluing permutations to complement a particular pairwise matching of simplex facets
 Cregina::NGenericGluingPerms< 2 >
 Cregina::NGenericGluingPerms< 3 >
 Cregina::NGlobalDirsProvides global routines that return directories in which various components of Regina are installed on the system
 Cregina::NGroupExpressionTermRepresents a power of a generator in a group presentation
 Cregina::NHilbertCDImplements a modified Contejean-Devie algorithm for enumerating Hilbert bases
 Cregina::NHilbertDualImplements a modified dual algorithm for enumerating Hilbert bases
 Cregina::NHilbertPrimalImplements a modified primal algorithm for enumerating Hilbert bases
 Cregina::NMarkedElementA base class for elements of NMarkedVector
 Cregina::NMatrix< T >Represents a matrix of elements of the given type T
 Cregina::NMatrix2Represents a 2-by-2 integer matrix
 Cregina::NMatrix< NLargeInteger >
 Cregina::NMaxAdmissibleUsed to enumerate all maximal admissible faces of a polyhedral cone under a given set of admissibility constraints
 Cregina::NMutexA mutual exclusion device (mutex) used to ensure that different threads do not interfere when working with the same data
 Cregina::NNativeInteger< bytes >A wrapper class for a native, fixed-precision integer type of the given size
 Cregina::boost::noncopyableA base class that guarantees that derived classes cannot be copied
 Cregina::NormalInfo< coordType >A template that stores information about a particular normal coordinate system
 Cregina::NormalInfo< NS_AN_QUAD_OCT >Stores information about quad-oct almost normal coordinates
 Cregina::NormalInfo< NS_AN_STANDARD >Stores information about standard almost normal coordinates
 Cregina::NormalInfo< NS_ORIENTED >Stores information about transversely oriented standard normal coordinates
 Cregina::NormalInfo< NS_ORIENTED_QUAD >Stores information about transversely oriented quad normal coordinates
 Cregina::NormalInfo< NS_QUAD >Stores information about quad normal coordinates
 Cregina::NormalInfo< NS_STANDARD >Stores information about standard normal coordinates
 Cregina::NPacketListenerAn object that can be registered to listen for packet events
 Cregina::NPerm3Represents a permutation of {0,1,2}
 Cregina::NPerm4Represents a permutation of {0,1,2,3}
 Cregina::NPerm5Represents a permutation of {0,1,2,3,4}
 Cregina::NPermItS4An iterator class that runs through all 24 permutations of four elements
 Cregina::NPosOrderA comparison object that sorts hyperplanes by position vectors
 Cregina::NPrimesA helper class for finding primes and factorising integers
 Cregina::NPrismSetSurfaceRepresents the set of prisms defined by slicing along all the quads in a particular normal surface
 Cregina::NPrismSpecSpecifies a single triangular prism in a tetrahedron
 Cregina::NProgressStateNumericA simple structure used for passing around a numeric state of progress
 Cregina::NProgressTrackerManages progress tracking and cancellation polling for long operations
 Cregina::NPropertyBaseA base class that provides routines shared by all properties, regardless of their individual NProperty template parameters
 Cregina::NQitmask1< T >A small but extremely fast "base 4 bitmask" class that can store up to 8 * sizeof(T) "qits", each equal to 0, 1, 2 or 3
 Cregina::NQitmask2< T, U >A small but extremely fast "base 4 bitmask" class that can store up to 8 * sizeof(T) + 8 * sizeof(U) "qits", each equal to 0, 1, 2 or 3
 Cregina::NRationalRepresents an arbitrary precision rational number
 Cregina::NSatAnnulusRepresents an annulus formed from a pair of triangles in a Seifert fibred space
 Cregina::NSatBlockSpecDescribes how a single saturated block forms a part of a larger saturated region
 Cregina::NSatBlockStarterSearcherA helper class for locating and using starter blocks within a triangulation
 Cregina::NSFSAltSetProvides a variety of alternative representations of a single bounded Seifert fibred space
 Cregina::NSFSFibreRepresents an exceptional (alpha, beta) fibre in a Seifert fibred space
 Cregina::NSigCensusA utility class used by formSigCensus()
 Cregina::NSigPartialIsomorphismRepresents a partial isomorphism between two splitting surface signatures
 Cregina::NThreadProvides very basic thread handling
 Cregina::NTriangleEmbeddingDetails how a triangle in the skeleton forms part of an individual tetrahedron
 Cregina::NTriBoolA three-way extension of the boolean type
 Cregina::NTriBool_Illegal_Integer_ConversionAn exception thrown when an illegal integer conversion is attempted with NTriBool
 Cregina::NTrieSet< T >A trie-like data structure for storing and retriving sets
 Cregina::NTritmask1< T >A small but extremely fast "ternary bitmask" class that can store up to 8 * sizeof(T) "trits", each equal to 0, 1 or 2
 Cregina::NTritmask2< T, U >A small but extremely fast "ternary bitmask" class that can store up to 8 * sizeof(T) + 8 * sizeof(U) "trits", each equal to 0, 1 or 2
 Cregina::NTypeTrie< nTypes >A trie that stores a set of type vectors of a fixed length
 Cregina::NTypeTrie< 7 >
 Cregina::NVector< T >An optimised vector class of elements from a given ring T
 Cregina::NVector< NLargeInteger >
 Cregina::NVertexEmbeddingDetails how a vertex in the skeleton forms part of an individual tetrahedron
 Cregina::NXMLElementReaderUsed to read the contents of a single XML element
 Cregina::NXMLTreeResolutionTaskAn individual task for resolving dangling packet references after an XML data file has been read
 Cregina::NXMLTreeResolverProvides a mechanism to resolve dangling packet references after a complete packet tree has been read from an XML data file
 Costream
 Cregina::PacketInfo< packetType >A template that stores information about a particular type of packet
 Cregina::PacketInfo< PACKET_ANGLESTRUCTURELIST >Stores information about the angle structure list packet
 Cregina::PacketInfo< PACKET_CONTAINER >Stores information about the container packet
 Cregina::PacketInfo< PACKET_DIM2TRIANGULATION >Stores information about the 2-manifold triangulation packet
 Cregina::PacketInfo< PACKET_NORMALSURFACELIST >Stores information about the normal surface list packet
 Cregina::PacketInfo< PACKET_PDF >Stores information about the PDF packet
 Cregina::PacketInfo< PACKET_SCRIPT >Stores information about the script packet
 Cregina::PacketInfo< PACKET_SNAPPEATRIANGULATION >Stores information about the SnapPea triangulation packet
 Cregina::PacketInfo< PACKET_SURFACEFILTER >Stores information about the normal surface filter packet type
 Cregina::PacketInfo< PACKET_TEXT >Stores information about the text packet
 Cregina::PacketInfo< PACKET_TRIANGULATION >Stores information about the 3-manifold triangulation packet
 Cregina::boost::reference_wrapper< T >A wrapper allowing references to be passed through generic functions
 Cregina::boost::remove_pointer< T >A template class used to remove the indirection from a pointer type
 Cregina::Returns< ReturnType_ >A convenience base class for a function object, which does nothing beyond provide a ReturnType typedef
 Cregina::Returns< Base * >
 Cregina::SnapPeaExceptionA base class for all exceptions that are thrown from within the SnapPea kernel
 CStorage
 Cregina::StoreConstPtr< T >An NProperty storage policy indicating that the property should be held by constant pointer
 Cregina::StoreManagedPtr< T >An NProperty storage policy indicating that the property should be held by pointer and that the property wrapper will also take responsibility for memory management
 Cregina::StoreManagedPtr< regina::NAbelianGroup >
 Cregina::StoreManagedPtr< regina::NAngleStructure >
 Cregina::StoreManagedPtr< regina::NGroupPresentation >
 Cregina::StoreValue< T >An NProperty storage policy indicating that the property should be held by value
 Cstreambuf
 Cregina::SurfaceFilterInfo< filterType >A template that stores information about a particular type of normal surface filter
 Cregina::SurfaceFilterInfo< NS_FILTER_COMBINATION >Stores information about the combination surface filter
 Cregina::SurfaceFilterInfo< NS_FILTER_DEFAULT >Stores information about the default accept-all surface filter
 Cregina::SurfaceFilterInfo< NS_FILTER_PROPERTIES >Stores information about the property-based surface filter
 Cregina::NCompactSearcher::TetEdgeStateA structure used to track equivalence classes of tetrahedron edges as the gluing permutation set is constructed
 Cregina::NEulerSearcher::TetEdgeStateA structure used to track equivalence classes of tetrahedron edges as the gluing permutation set is constructed
 Cregina::NEulerSearcher::TetVertexStateA structure used to track equivalence classes of tetrahedron vertices as the gluing permutation set is constructed
 Cregina::NCompactSearcher::TetVertexStateA structure used to track equivalence classes of tetrahedron vertices as the gluing permutation set is constructed
 Cunary_function
 Cvector
 Cregina::xml::XMLParserUsed to parse an entire XML file
 Cregina::xml::XMLParserCallbackProvides the callbacks for an XMLParser

Copyright © 1999-2014, The Regina development team
This software is released under the GNU General Public License, with some additional permissions; see the source code for details.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@debian.org).