Regina Calculation Engine
|
Stores data of type T
for every normal disc inside a single tetrahedron.
More...
#include <surfaces/ndisc.h>
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. | |
NDiscSetTetData (unsigned long tri0, unsigned long tri1, unsigned long tri2, unsigned long tri3, unsigned long quad0, unsigned long quad1, unsigned long quad2, unsigned long oct0=0, unsigned long oct1=0, unsigned long oct2=0) | |
Creates a new disc set where the number of discs of each type is explicitly given. | |
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. |
Stores data of type T
for every normal disc inside a single tetrahedron.
unsigned long
. See the precondition below.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
.typedef T* regina::NDiscSetTetData< T >::DataPtr |
A type that is a pointer to the data stored with each disc.
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.
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. |
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.
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. |
regina::NDiscSetTetData< T >::NDiscSetTetData | ( | unsigned long | tri0, |
unsigned long | tri1, | ||
unsigned long | tri2, | ||
unsigned long | tri3, | ||
unsigned long | quad0, | ||
unsigned long | quad1, | ||
unsigned long | quad2, | ||
unsigned long | oct0 = 0 , |
||
unsigned long | oct1 = 0 , |
||
unsigned long | oct2 = 0 |
||
) | [inline] |
Creates a new disc set where the number of discs of each type is explicitly given.
The data for each disc will remain uninitialised.
tri0 | the number of triangular discs surrounding vertex 0. |
tri1 | the number of triangular discs surrounding vertex 1. |
tri2 | the number of triangular discs surrounding vertex 2. |
tri3 | the number of triangular discs surrounding vertex 3. |
quad0 | the number of quadrilateral discs of type 0. |
quad1 | the number of quadrilateral discs of type 1. |
quad2 | the number of quadrilateral discs of type 2. |
oct0 | the number of octahedral discs of type 0. |
oct1 | the number of octahedral discs of type 1. |
oct2 | the number of octahedral discs of type 2. |
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.
T& regina::NDiscSetTetData< T >::data | ( | int | discType, |
unsigned long | discNumber | ||
) | [inline] |
Retrieves a reference to the data corresponding to the given normal disc.
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. |
DataPtr regina::NDiscSetTetData< T >::internalData[10] [protected] |
Stores the data corresponding to each normal disc.