Regina 7.0 Calculation Engine
Classes | Namespaces | Typedefs | Functions
disc.h File Reference

Deals with individual normal discs and sets of normal discs in a normal surface. More...

#include <cassert>
#include <cstddef>
#include <iterator>
#include "regina-core.h"
#include "surface/normalsurface.h"
#include "triangulation/dim3.h"

Classes

struct  regina::DiscSpec
 Specifies a single normal disc in a normal surface. More...
 
class  regina::DiscSetTet
 Represents a set of normal discs inside a single tetrahedron. More...
 
class  regina::DiscSetTetData< T >
 Stores data of type T for every normal disc inside a single tetrahedron. More...
 
class  regina::DiscSetSurfaceDataImpl< TetData >
 Stores a piece of data alongside every normal disc within a particular normal surface. More...
 
class  regina::DiscSpecIterator< TetData >
 A forward iterator used for running through all normal discs in a normal surface. More...
 

Namespaces

namespace  regina
 Contains the entire Regina calculation engine.
 

Typedefs

template<typename T >
using regina::DiscSetSurfaceData = DiscSetSurfaceDataImpl< DiscSetTetData< T > >
 A structure that stores data of type T alongside every normal disc within a particular normal surface. More...
 
using regina::DiscSetSurface = DiscSetSurfaceDataImpl< DiscSetTet >
 A structure that builds all of the normal discs within a particular normal surface, but does not store any additional data alongside them. More...
 

Functions

std::ostream & regina::operator<< (std::ostream &out, const DiscSpec &spec)
 Writes the given disc specifier to the given output stream. More...
 
bool regina::numberDiscsAwayFromVertex (int discType, int vertex)
 Determines whether or not normal discs of the given type are numbered away from the given vertex. More...
 
bool regina::discOrientationFollowsEdge (int discType, int vertex, int edgeStart, int edgeEnd)
 Determines whether or not the natural boundary orientation of a normal disc of the given type follows the given directed normal arc. More...
 
template<class T >
void regina::swap (DiscSetTetData< T > &a, DiscSetTetData< T > &b) noexcept
 Swaps the contents of the two given disc sets. More...
 
template<class T >
void regina::swap (DiscSetSurfaceDataImpl< T > &a, DiscSetSurfaceDataImpl< T > &b) noexcept
 Swaps the contents of the two given disc sets. More...
 

Detailed Description

Deals with individual normal discs and sets of normal discs in a normal surface.


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