regina::NDiscSetTetData< T > Class Template Reference
[Normal Surfaces]

Stores data of type T for every normal disc inside a single tetrahedron. More...

#include <ndisc.h>

Inheritance diagram for regina::NDiscSetTetData< T >:

regina::NDiscSetTet

List of all members.

Public Types

typedef T * DataPtr
 A type that is a pointer to the data stored with each disc.

Public Member Functions

 NDiscSetTetData (const NNormalSurface &surface, unsigned long tetIndex)
 Creates a new disc set corresponding to the discs of the given normal surface that lie within the given tetrahedron.
 NDiscSetTetData (const NNormalSurface &surface, unsigned long tetIndex, const T &initValue)
 Creates a new disc set corresponding to the discs of the given normal surface that lie within the given tetrahedron.
virtual ~NDiscSetTetData ()
 Destroys this disc set and deallocates all data arrays.
T & data (int discType, unsigned long discNumber)
 Retrieves a reference to the data corresponding to the given normal disc.

Protected Attributes

DataPtr internalData [10]
 Stores the data corresponding to each normal disc.


Detailed Description

template<class T>
class regina::NDiscSetTetData< T >

Stores data of type T for every normal disc inside a single tetrahedron.

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.

Member Typedef Documentation

template<class T>
typedef T* regina::NDiscSetTetData< T >::DataPtr

A type that is a pointer to the data stored with each disc.


Constructor & Destructor Documentation

template<class T>
regina::NDiscSetTetData< T >::NDiscSetTetData ( const NNormalSurface surface,
unsigned long  tetIndex 
) [inline]

Creates a new disc set corresponding to the discs of the given normal surface that lie within the given tetrahedron.

The data for each disc will remain uninitialised.

Parameters:
surface the normal surface whose discs we shall use.
tetIndex the index in the triangulation of the tetrahedron that our discs must lie in; this must be between 0 and tri.getNumberOfTetrahedra()-1 inclusive, where tri is the triangulation containing the given normal surface.

template<class T>
regina::NDiscSetTetData< T >::NDiscSetTetData ( const NNormalSurface surface,
unsigned long  tetIndex,
const T &  initValue 
) [inline]

Creates a new disc set corresponding to the discs of the given normal surface that lie within the given tetrahedron.

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

Parameters:
surface the normal surface whose discs we shall use.
tetIndex the index in the triangulation of the tetrahedron that our discs must lie in; this must be between 0 and tri.getNumberOfTetrahedra()-1 inclusive, where tri is the triangulation containing the given normal surface.
initValue the value with which to initialise the data corresponding to each disc.

template<class T>
virtual regina::NDiscSetTetData< T >::~NDiscSetTetData (  )  [inline, virtual]

Destroys this disc set and deallocates all data arrays.

Note that no assumption is made about type T, so if data elements are pointers to dynamically allocated objects, these will not be destroyed.


Member Function Documentation

template<class T>
T& regina::NDiscSetTetData< T >::data ( int  discType,
unsigned long  discNumber 
) [inline]

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

Parameters:
discType the disc type of the given normal disc; this should be between 0 and 9 inclusive, as described in the NDiscSpec class notes.
discNumber indicates which normal disc of the given disc type is referred to; this should be between 0 and nDiscs(discType)-1 inclusive.
Returns:
a reference to the data corresponding to the given normal disc.


Member Data Documentation

template<class T>
DataPtr regina::NDiscSetTetData< T >::internalData[10] [protected]

Stores the data corresponding to each normal disc.


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

Copyright © 1999-2008, Ben Burton
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).