Signal/Geometry Processing Library (SPL) 1.1.24 |

Classes | Macros | Typedefs | Functions
Sequence2.hpp File Reference

This file contains code for the Sequence2 template class. More...

`#include <SPL/config.hpp>`
`#include <iostream>`
`#include <vector>`
`#include <SPL/Array2.hpp>`
`#include <SPL/Sequence.hpp>`
`#include <SPL/Sequence1.hpp>`
`#include <SPL/math.hpp>`

Go to the source code of this file.

## Classes
class | SPL::Sequence2< T >
| A two-dimensional sequence class with lazy copying and reference counting. More...

## Macros
#define | SPL_SEQUENCE2_USE_NEW_CONV
| Defining this symbol will enable extra code for debugging. More...
#define | SPL_SEQUENCE2_INLINE inline
| Allow the inlining of functions. More...

## Typedefs
typedef Sequence2< double > | SPL::RealSequence2
| Real sequence. More...
typedef Sequence2< int > | SPL::IntSequence2
| Integer sequence. More...

## Functions
template<class T >
std::ostream & | SPL::operator<< (std::ostream &out, const Sequence2< T > &f)
| Output a sequence to a stream. More...
template<class T >
std::istream & | SPL::operator>> (std::istream &in, Sequence2< T > &f)
| Input a sequence from a stream. More...
template<class T >
SPL_SEQUENCE2_INLINE Sequence2< T > | SPL::operator+ (const Sequence2< T > &f, const Sequence2< T > &g)
| Compute the sum of two sequences. More...
template<class T >
SPL_SEQUENCE2_INLINE Sequence2< T > | SPL::operator- (const Sequence2< T > &f, const Sequence2< T > &g)
| Compute the difference of two sequences. More...
template<class T >
SPL_SEQUENCE2_INLINE Sequence2< T > | SPL::operator* (const Sequence2< T > &f, const Sequence2< T > &g)
| Compute the (element-wise) product of two sequences. More...
template<class T >
SPL_SEQUENCE2_INLINE Sequence2< T > | SPL::operator/ (const Sequence2< T > &f, const Sequence2< T > &g)
| Compute the (element-wise) quotient of two sequences. More...
template<class T >
Sequence2< T > | SPL::add (const Sequence2< T > &f, const Sequence2< T > &g)
| Compute the sum of two sequences with potentially differing domains. More...
template<class T >
SPL_SEQUENCE2_INLINE Sequence2< T > | SPL::operator+ (const T &value, const Sequence2< T > &f)
| Add a value to a sequence. More...
template<class T >
SPL_SEQUENCE2_INLINE Sequence2< T > | SPL::operator+ (const Sequence2< T > &f, const T &value)
| Add a value to a sequence. More...
template<class T >
SPL_SEQUENCE2_INLINE Sequence2< T > | SPL::operator- (const Sequence2< T > &f, const T &value)
| Subtract a value from a sequence. More...
template<class T >
SPL_SEQUENCE2_INLINE Sequence2< T > | SPL::operator* (const T &value, const Sequence2< T > &f)
| Compute a scalar multiple of a sequence. More...
template<class T >
SPL_SEQUENCE2_INLINE Sequence2< T > | SPL::operator* (const Sequence2< T > &f, const T &value)
| Compute a scalar multiple of a sequence. More...
template<class T >
SPL_SEQUENCE2_INLINE Sequence2< T > | SPL::operator/ (const Sequence2< T > &f, const T &value)
| Divide a sequence by a scalar. More...
template<class T >
bool | SPL::operator== (const Sequence2< T > &f, const Sequence2< T > &g)
| Test two sequences for equality. More...
template<class T >
SPL_SEQUENCE2_INLINE bool | SPL::operator!= (const Sequence2< T > &f, const Sequence2< T > &g)
| Test two sequences for inequality. More...
template<class T >
SPL_SEQUENCE2_INLINE bool | SPL::approxEqual (const Sequence2< T > &f, const Sequence2< T > &g, T threshold=1e-9)
| Test two sequences for approximate equality. More...
template<class T >
Sequence2< T > | SPL::subsequence (const Sequence2< T > &f, int startX, int startY, int width, int height)
| Extract a subsequence from a sequence. More...
template<class T >
SPL_SEQUENCE2_INLINE Sequence2< T > | SPL::translate (const Sequence2< T > &f, int deltaX, int deltaY)
| Translate a sequence by the specified amount. More...
template<class T >
Sequence2< T > | SPL::convolve (const Sequence2< T > &f, const Sequence2< T > &g, int mode)
| Compute the convolution of two sequences. More...
template<class T >
Sequence2< T > | SPL::convolveSeparable (const Sequence2< T > &f, const Sequence1< T > &horzFilt, const Sequence1< T > &vertFilt, int mode=ConvolveMode::full)
| Compute the convolution of a sequence with two 1-D filters (i.e., convolution with a separable filter). More...
template<class T >
Sequence2< T > | SPL::downsample (const Sequence2< T > &f, int factorX, int factorY)
| Downsample a sequence in each of the horizontal and vertical directions by the specified factors. More...
template<class T >
Sequence2< T > | SPL::upsample (const Sequence2< T > &f, int factorX, int factorY)
| Upsample a sequence in each of the horizontal and vertical directions by the specified factors. More...
template<class T >
Sequence2< T > | SPL::upsample (const Sequence2< T > &f, int factorX, int factorY, int padX, int padY)
| Upsample a sequence in each of the horizontal and vertical directions by the specified factors. More...
template<class T >
Array2< Sequence2< T > > | SPL::polyphaseSplit (const Sequence2< T > &seq, int typeX, int numPhasesX, int typeY, int numPhasesY)
| Split a sequence into its polyphase components. More...
template<class T >
Sequence2< T > | SPL::polyphaseJoin (const Array2< Sequence2< T > > &comps, int typeX, int typeY)
| Reassemble a sequence from its polyphase components. More...

## Detailed Description

This file contains code for the Sequence2 template class.

## Macro Definition Documentation

#define SPL_SEQUENCE2_INLINE inline

Allow the inlining of functions.

#define SPL_SEQUENCE2_USE_NEW_CONV

Defining this symbol will enable extra code for debugging.

Defining this symbol will enable some new code for convolution.