Regina Calculation Engine
Classes | Namespaces | Typedefs | Enumerations | Functions
normalsurfaces.h File Reference

Contains a packet representing a collection of normal surfaces in a 3-manifold. More...

#include <algorithm>
#include <iterator>
#include <vector>
#include "regina-core.h"
#include "enumerate/enumconstraints.h"
#include "packet/packet.h"
#include "surfaces/normalsurface.h"
#include "surfaces/normalflags.h"
#include "surfaces/normalcoords.h"
#include "surfaces/normalspec-impl.h"

Classes

class  regina::NormalSurfaces
 A packet representing a collection of normal surfaces in a 3-manifold. More...
 
class  regina::NormalSurfaces::VectorIterator
 A bidirectional iterator that runs through the raw vectors for surfaces in this list. More...
 
struct  regina::NormalSurfaces::SurfaceInserter
 An output iterator used to insert surfaces into an NormalSurfaces. More...
 

Namespaces

 regina
 Contains the entire Regina calculation engine.
 

Typedefs

typedef NormalSurfaces regina::NNormalSurfaceList
 Deprecated typedef for backward compatibility. More...
 

Enumerations

enum  regina::SurfaceExportFields {
  regina::surfaceExportName = 0x0001 , regina::surfaceExportEuler = 0x0002 , regina::surfaceExportOrient = 0x0004 , regina::surfaceExportSides = 0x0008 ,
  regina::surfaceExportBdry = 0x0010 , regina::surfaceExportLink = 0x0020 , regina::surfaceExportType = 0x0040 , regina::surfaceExportNone = 0 ,
  regina::surfaceExportAllButName = 0x007e , regina::surfaceExportAll = 0x007f
}
 Used to describe a field, or a set of fields, that can be exported alongside a normal surface list. More...
 

Functions

NormalSurfaceVector * regina::makeZeroVector (const Triangulation< 3 > *triangulation, NormalCoords coords)
 Returns a new normal surface vector of the appropriate length for the given triangulation and the given coordinate system. More...
 
MatrixInt * regina::makeMatchingEquations (const Triangulation< 3 > *triangulation, NormalCoords coords)
 Creates a new set of normal surface matching equations for the given triangulation using the given coordinate system. More...
 
EnumConstraints * regina::makeEmbeddedConstraints (const Triangulation< 3 > *triangulation, NormalCoords coords)
 Creates a new set of validity constraints representing the condition that normal surfaces be embedded. More...
 

Detailed Description

Contains a packet representing a collection of normal surfaces in a 3-manifold.


Copyright © 1999-2021, 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@maths.uq.edu.au).