ntritmask.h File Reference

Provides optimised "ternary bitmasks" of fixed length. More...

`#include <algorithm>`
`#include <iostream>`
`#include "regina-core.h"`
`#include "regina-config.h"`

## Classes

class | regina::NTritmask1< T >
| A small but extremely fast "ternary bitmask" class that can store up to 8 * sizeof(T) "trits", each equal to 0, 1 or 2. More...
class | regina::NTritmask2< T, U >
| A small but extremely fast "ternary bitmask" class that can store up to 8 * sizeof(T) + 8 * sizeof(U) "trits", each equal to 0, 1 or 2. More...

## Namespaces

| regina
| Contains the entire Regina calculation engine.

## Typedefs

typedef NTritmask1< unsigned char > | regina::NTritmaskLen8
| A convenience typedef that gives a small and extremely fast tritmask class capable of holding at least 8 true-or-false bits. More...
typedef NTritmask1< unsigned int > | regina::NTritmaskLen16
| A convenience typedef that gives a small and extremely fast tritmask class capable of holding at least 16 true-or-false bits. More...
typedef InternalTritmaskLen32::Type | regina::NTritmaskLen32
| A convenience typedef that gives a small and extremely fast tritmask class capable of holding at least 32 true-or-false bits. More...
typedef InternalTritmaskLen64::Type | regina::NTritmaskLen64
| A convenience typedef that gives a small and extremely fast tritmask class capable of holding at least 64 true-or-false bits. More...

## Functions

template<typename T >
std::ostream & | regina::operator<< (std::ostream &out, const NTritmask1< T > &mask)
| Writes the given tritmask to the given output stream as a sequence of digits (0, 1 and/or 2). More...
template<typename T , typename U >
std::ostream & | regina::operator<< (std::ostream &out, const NTritmask2< T, U > &mask)
| Writes the given tritmask to the given output stream as a sequence of digits (0, 1 and/or 2). More...

## Detailed Description

Provides optimised "ternary bitmasks" of fixed length.

Copyright © 1999-2013, 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@debian.org).