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 "packet/packet.h"`
`#include "surfaces/normalsurface.h"`
`#include "surfaces/normalflags.h"`
`#include "surfaces/normalcoords.h"`
`#include "utilities/memutils.h"`
`#include "surfaces/normalspec-impl.h"`

## Classes

class | regina::MatrixIntDomain< T >
| Represents a matrix of elements from a given integral domain T. More...
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-2016, 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).