Regina Calculation Engine
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
regina::DiscSetSurface Class Reference

Represents the set of all normal discs forming a normal surface. More...

#include <surfaces/disc.h>

Inheritance diagram for regina::DiscSetSurface:
regina::DiscSetSurfaceData< T >

Public Member Functions

 DiscSetSurface (const NormalSurface &surface)
 Creates a new disc set corresponding to the discs of the given normal surface. More...
 
virtual ~DiscSetSurface ()
 Destroys this set of discs and deallocates all associated memory. More...
 
size_t nTets () const
 Returns the number of tetrahedra in the underlying triangulation. More...
 
unsigned long nDiscs (size_t tetIndex, int type) const
 Determines the number of discs of the given type inside the given tetrahedron. More...
 
DiscSetTettetDiscs (size_t tetIndex) const
 Returns the specific set of discs living inside the given tetrahedron. More...
 
DiscSpecadjacentDisc (const DiscSpec &disc, Perm< 4 > arc, Perm< 4 > &adjArc) const
 Determines which normal disc is adjacent to the given normal disc along the given directed normal arc in the surface described by this disc set. More...
 
DiscSpecIterator begin () const
 Returns an iterator at the beginning of the range of all normal discs in the underlying normal surface. More...
 
DiscSpecIterator end () const
 Returns an iterator at the end of the range of all normal discs in the underlying normal surface. More...
 
 DiscSetSurface (const DiscSetSurface &)=delete
 
DiscSetSurfaceoperator= (const DiscSetSurface &)=delete
 

Protected Member Functions

 DiscSetSurface (const NormalSurface &surface, bool b)
 Creates a new disc set corresponding to the discs of the given normal surface. More...
 

Protected Attributes

DiscSetTet ** discSets
 The disc sets corresponding to each tetrahedron. More...
 
const Triangulation< 3 > * triangulation
 The triangulation in which the normal surface lives. More...
 

Detailed Description

Represents the set of all normal discs forming a normal surface.

These are stored as an array of DiscSetTet objects, one for each tetrahedron.

Warning
This class converts the number of normal discs of a given type from LargeInteger to unsigned long. See the precondition below.
Precondition
The number of normal discs of a particular type in a particular tetrahedron can be represented by a long integer.
This class should only be used with embedded normal surfaces.

The documentation for this class was generated from the following file:

Copyright © 1999-2018, 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).