Regina Calculation Engine
Public Member Functions
regina::NDiscSetSurfaceData< T > Class Template Reference

Stores data of type T for every normal disc within a particular normal surface. More...

#include <surfaces/ndisc.h>

Inheritance diagram for regina::NDiscSetSurfaceData< T >:
regina::NDiscSetSurface

List of all members.

Public Member Functions

 NDiscSetSurfaceData (const NNormalSurface &surface)
 Creates a new disc set corresponding to the discs of the given normal surface.
 NDiscSetSurfaceData (const NNormalSurface &surface, const T &initValue)
 Creates a new disc set corresponding to the discs of the given normal surface.
T & data (const NDiscSpec &disc)
 Retrieves a reference to the data corresponding to the given normal disc.
- Public Member Functions inherited from regina::NDiscSetSurface
 NDiscSetSurface (const NNormalSurface &surface)
 Creates a new disc set corresponding to the discs of the given normal surface.
virtual ~NDiscSetSurface ()
 Destroys this set of discs and deallocates all associated memory.
unsigned long nTets () const
 Returns the number of tetrahedra in the underlying triangulation.
unsigned long nDiscs (unsigned long tetIndex, int type) const
 Determines the number of discs of the given type inside the given tetrahedron.
NDiscSetTettetDiscs (unsigned long tetIndex) const
 Returns the specific set of discs living inside the given tetrahedron.
NDiscSpecadjacentDisc (const NDiscSpec &disc, NPerm4 arc, NPerm4 &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.

Additional Inherited Members

- Protected Member Functions inherited from regina::NDiscSetSurface
 NDiscSetSurface (const NNormalSurface &surface, bool b)
 Creates a new disc set corresponding to the discs of the given normal surface.
- Protected Attributes inherited from regina::NDiscSetSurface
NDiscSetTet ** discSets
 The disc sets corresponding to each tetrahedron.
NTriangulationtriangulation
 The triangulation in which the normal surface lives.

Detailed Description

template<class T>
class regina::NDiscSetSurfaceData< T >

Stores data of type T for every normal disc within a particular normal surface.

This data is stored using an array of NDiscSetTetData<T> objects, one for each tetrahedron (thus the inherited member function tetDiscs() will return an object of class NDiscSetTetData<T>).

Warning:
This class converts the number of normal discs of a given type from NLargeInteger 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.
Type T has a default constructor and an assignment operator. That is, if a and b are of type T, then a can be declared with no parameters and can then receive the value of b using a=b.
Python:
Not present.

Constructor & Destructor Documentation

template<class T >
regina::NDiscSetSurfaceData< T >::NDiscSetSurfaceData ( const NNormalSurface surface)
inline

Creates a new disc set corresponding to the discs of the given normal surface.

The data for each disc will remain uninitialised.

Parameters:
surfacethe normal surface whose discs we shall use.
template<class T >
regina::NDiscSetSurfaceData< T >::NDiscSetSurfaceData ( const NNormalSurface surface,
const T &  initValue 
)
inline

Creates a new disc set corresponding to the discs of the given normal surface.

The data for each disc will be initialised to the given value.

Parameters:
surfacethe normal surface whose discs we shall use.
initValuethe value with which to initialise the data corresponding to each disc.

Member Function Documentation

template<class T >
T& regina::NDiscSetSurfaceData< T >::data ( const NDiscSpec disc)
inline

Retrieves a reference to the data corresponding to the given normal disc.

Parameters:
discthe disc whose data we require; this must refer to a disc within this disc set.
Returns:
a reference to the data corresponding to the given normal disc.

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

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).