This file contains the Array2 template class and its supporting code. More...
#include <SPL/config.hpp>
#include <iostream>
#include <iomanip>
#include <fstream>
#include <vector>
#include <cassert>
#include <iterator>
#include <algorithm>
#include <numeric>
#include <boost/iterator/iterator_facade.hpp>
#include <SPL/pnmCodec.hpp>
#include <SPL/misc.hpp>
Go to the source code of this file.
Classes | |
class | SPL::Array2< T > |
A two-dimensional array class with lazy copying and reference counting. More... | |
class | SPL::Array2< T > |
A two-dimensional array class with lazy copying and reference counting. More... | |
Macros | |
#define | SPL_ARRAY2_INLINE inline |
Defining this symbol will enable extra code for debugging. More... | |
Typedefs | |
typedef Array2< double > | SPL::RealArray2 |
A two-dimensional array with real elements. More... | |
typedef Array2< int > | SPL::IntArray2 |
A two-dimensional array with integer elements. More... | |
Functions | |
template<class T > | |
std::ostream & | SPL::operator<< (std::ostream &out, const Array2< T > &a) |
Output an array to the specified stream. More... | |
template<class T > | |
std::istream & | SPL::operator>> (std::istream &in, Array2< T > &a) |
Input an array from the specified stream. More... | |
template<class T > | |
Array2< T > | SPL::transpose (const Array2< T > &a) |
Get the transpose of the array. More... | |
template<class T > | |
bool | SPL::operator== (const Array2< T > &a, const Array2< T > &b) |
Test two arrays for equality. More... | |
template<class T > | |
bool | SPL::operator!= (const Array2< T > &a, const Array2< T > &b) |
Test two arrays for inequality. More... | |
template<class T > | |
int | SPL::encodePnm (std::ostream &outStream, const std::vector< Array2< T > > &comps, int maxVal, bool sgnd, bool binaryFormat=true) |
Output the array as an image in the PNM format. More... | |
template<class T > | |
int | SPL::encodePbm (std::ostream &outStream, const Array2< T > &bits, bool binaryFormat=true) |
Output the array as an image in the PNM format (PBM type). More... | |
template<class T > | |
int | SPL::encodePgm (std::ostream &outStream, const Array2< T > &gray, int maxVal, bool sgnd, bool binaryFormat=true) |
Output the array as an image in the PNM format (PGM type). More... | |
template<class T > | |
int | SPL::encodePpm (std::ostream &outStream, const Array2< T > &red, const Array2< T > &green, const Array2< T > &blue, int maxVal, bool sgnd, bool binaryFormat=true) |
Output the array as an image in the PNM format (PPM type). More... | |
template<class T > | |
int | SPL::decodePnm (std::istream &inStream, std::vector< Array2< T > > &comps, int &maxVal, bool &sgnd) |
Input an array as an image in the PNM format. More... | |
template<class T > | |
int | SPL::decodePbm (std::istream &inStream, Array2< T > &bits) |
Input an array as an image in the PNM format. More... | |
template<class T > | |
int | SPL::decodePgm (std::istream &inStream, Array2< T > &gray, int &maxVal, bool &sgnd) |
Input an array as an image in the PNM format. More... | |
template<class T > | |
int | SPL::decodePpm (std::istream &inStream, Array2< T > &red, Array2< T > &green, Array2< T > &blue, int &maxVal, bool &sgnd) |
Input an array as an image in the PNM format. More... | |
This file contains the Array2 template class and its supporting code.
#define SPL_ARRAY2_INLINE inline |
Defining this symbol will enable extra code for debugging.
Allow the inlining of functions.