regina::NormalInfo< coordType > Struct Template Reference
Normal Surfaces

A template that stores information about a particular normal coordinate system. More...

`#include <surfaces/normalsurface.h>`

## Detailed Description

### template<NormalCoords coordType>
struct regina::NormalInfo< coordType >

A template that stores information about a particular normal coordinate system.

Much of this information is given in the form of compile-time constants and types.

To iterate through cases for a given value of NormalCoords that is not known until runtime, see the various forCoords() routines defined in coordregistry.h.

This NormalInfo template should only be defined for coordType arguments that represent coordinate systems in which you can create and store normal surfaces.

At a bare minimum, each specialisation of this template must provide:

- a typedef Class that represents the corresponding NormalSurfaceVector subclass;
- typedefs Standard and Reduced that identify NormalInfo templates for the corresponding coordinate systems with and without triangles (if this is not meaningful then both typedefs should just identify this system);
- enum constants almostNormal, spun and oriented, which indicate whether the coordinate system allows almost normal, spun and/or transversely oriented surfaces;
- a static function name() that returns a C-style string giving the human-readable name of the coordinate system.

Python:\n Not present.

Template Parameters

  coordType | one of the NormalCoords constants, indicating which coordinate system we are querying.

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

- surfaces/normalsurface.h

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