Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

regina::NExceptionalFibre Struct Reference
[Standard 3-Manifolds]

Represents an exceptional (alpha, beta) fibre in a Seifert fibred space. More...

#include <nsfs.h>

List of all members.

Public Member Functions

 NExceptionalFibre ()
 Creates a new uninitialised exceptional fibre.
 NExceptionalFibre (long newAlpha, long newBeta)
 Creates a new exceptional fibre with the given parameters.
 NExceptionalFibre (const NExceptionalFibre &cloneMe)
 Creates a new exceptional fibre that is a clone of the given fibre.
void operator= (const NExceptionalFibre &cloneMe)
 Makes this exceptional fibre a clone of the given fibre.
bool operator== (const NExceptionalFibre &compare) const
 Determines if this and the given exceptional fibre are identical.
bool operator< (const NExceptionalFibre &compare) const
 Determines if this exceptional fibre is smaller than the given fibre.

Public Attributes

long alpha
 The first parameter of this (alpha, beta) fibre.
long beta
 The second parameter of this (alpha, beta) fibre.

Friends

std::ostream & operator<< (std::ostream &out, const NExceptionalFibre &f)
 Writes the given fibre in human-readable format to the given output stream.


Detailed Description

Represents an exceptional (alpha, beta) fibre in a Seifert fibred space.

The first parameter alpha must be strictly positive, and the two parameters alpha and beta must be coprime.


Constructor & Destructor Documentation

regina::NExceptionalFibre::NExceptionalFibre  )  [inline]
 

Creates a new uninitialised exceptional fibre.

regina::NExceptionalFibre::NExceptionalFibre long  newAlpha,
long  newBeta
[inline]
 

Creates a new exceptional fibre with the given parameters.

Parameters:
newAlpha the first parameter (the index) of this exceptional fibre; this must be strictly positive.
newBeta the second parameter of this exceptional fibre; this must have no common factors with the first parameter newAlpha.

regina::NExceptionalFibre::NExceptionalFibre const NExceptionalFibre cloneMe  )  [inline]
 

Creates a new exceptional fibre that is a clone of the given fibre.

Parameters:
cloneMe the exceptional fibre to clone.


Member Function Documentation

bool regina::NExceptionalFibre::operator< const NExceptionalFibre compare  )  const
 

Determines if this exceptional fibre is smaller than the given fibre.

Fibres are sorted by their indices (their first parameters), with the exception that a fibre of index 1 is larger than any other fibre. In the case of a tie, fibres are sorted by their second parameter reduced modulo the index. So, for instance, fibre (3,1) is less than fibre (3,-1) (which is equivalent to (3,2)). If there is still a tie, the fibres are considered equivalent and this routine will return false.

Parameters:
compare the fibre with which this will be compared.
Returns:
true if and only if this is smaller than the given fibre.

void regina::NExceptionalFibre::operator= const NExceptionalFibre cloneMe  )  [inline]
 

Makes this exceptional fibre a clone of the given fibre.

Parameters:
cloneMe the exceptional fibre to clone.

bool regina::NExceptionalFibre::operator== const NExceptionalFibre compare  )  const [inline]
 

Determines if this and the given exceptional fibre are identical.

Parameters:
compare the fibre with which this will be compared.
Returns:
true if and only if this and the given fibre are identical.


Friends And Related Function Documentation

std::ostream& operator<< std::ostream &  out,
const NExceptionalFibre f
[friend]
 

Writes the given fibre in human-readable format to the given output stream.

The fibre will be written in the format (alpha,beta) with no newline appended.

Parameters:
out the output stream to which to write.
f the fibre to write.
Returns:
the output stream out.


Member Data Documentation

long regina::NExceptionalFibre::alpha
 

The first parameter of this (alpha, beta) fibre.

Note that this is the index of the exceptional fibre. This parameter must always be strictly positive.

long regina::NExceptionalFibre::beta
 

The second parameter of this (alpha, beta) fibre.

This parameter must have no common factors with alpha.


The documentation for this struct was generated from the following file:
Copyright © 1999-2004, 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).