latest version v1.9 - last update 10 Apr 2010 |
Pyramid class. More...
#include <ltiPyramid.h>
Public Types | |
typedef std::vector< T >::iterator | iterator |
typedef std::vector< T > ::const_iterator | const_iterator |
typedef int | size_type |
Public Member Functions | |
pyramid () | |
pyramid (const int &resolutions) | |
pyramid (const pyramid &other) | |
virtual | ~pyramid () |
const char * | getTypeName () const |
int | size () const |
bool | empty () const |
const_iterator | begin () const |
iterator | begin () |
const_iterator | end () const |
iterator | end () |
virtual void | resize (const int &resolutions, const bool ©Data=true) |
void | append (const T &theElement) |
void | clear () |
const T & | at (const int &x) const |
T & | at (const int &x) |
const T & | operator[] (const int &x) const |
T & | operator[] (const int &x) |
pyramid< T > & | copy (const pyramid< T > &other) |
virtual mathObject * | clone () const |
bool | equals (const pyramid &other) const |
bool | compareResolutions (const pyramid &other) const |
bool | operator== (const pyramid &other) const |
pyramid & | operator= (const pyramid &other) |
Protected Attributes | |
std::vector< T > | thePyramid |
Pyramid class.
The lti::pyramid class is the parent class for the multiresolutional pyramids. For example lti::gaussianPyramid
It contains some objects of type T (e.g. channel, channel8 or image), which must implement the type T::size_type and the member size(). Note that pyramids of pyramids are allowed.
typedef std::vector<T>::const_iterator lti::pyramid< T >::const_iterator |
The const_iterator is equivalent to a lti::fvector::const_iterator.
typedef std::vector<T>::iterator lti::pyramid< T >::iterator |
The iterator is equivalent to a lti::fvector::iterator.
typedef int lti::pyramid< T >::size_type |
The return type of the size() member.
lti::pyramid< T >::pyramid | ( | ) |
Default constructor creates an empty pyramid;.
lti::pyramid< T >::pyramid | ( | const int & | resolutions | ) |
lti::pyramid< T >::pyramid | ( | const pyramid< T > & | other | ) |
virtual lti::pyramid< T >::~pyramid | ( | ) | [virtual] |
Destructor.
void lti::pyramid< T >::append | ( | const T & | theElement | ) |
T& lti::pyramid< T >::at | ( | const int & | x | ) | [inline] |
const T& lti::pyramid< T >::at | ( | const int & | x | ) | const [inline] |
iterator lti::pyramid< T >::begin | ( | ) | [inline] |
Returns an iterator pointing to the first element.
The use of the interators is similar to the iterators of the Standard Template Library (STL).
const_iterator lti::pyramid< T >::begin | ( | ) | const [inline] |
void lti::pyramid< T >::clear | ( | ) |
Equivalent to resize(0);.
virtual mathObject* lti::pyramid< T >::clone | ( | ) | const [virtual] |
Create a clone of this pyramid.
Implements lti::mathObject.
Reimplemented in lti::gaborPyramid< T >, lti::gaussianPyramid< T >, lti::laplacianPyramid< T >, lti::scaleSpacePyramid< T >, lti::gaussianPyramid< channel >, and lti::scaleSpacePyramid< channel >.
bool lti::pyramid< T >::compareResolutions | ( | const pyramid< T > & | other | ) | const |
pyramid<T>& lti::pyramid< T >::copy | ( | const pyramid< T > & | other | ) |
Assigment operator.
copy the contents of other
in this object.
other | the source pyramid to be copied. |
Reimplemented from lti::ioObject.
Reimplemented in lti::gaborPyramid< T >, lti::gaussianPyramid< T >, lti::laplacianPyramid< T >, and lti::scaleSpacePyramid< T >.
bool lti::pyramid< T >::empty | ( | ) | const [inline] |
Returns true if the size of this pyramid is zero.
iterator lti::pyramid< T >::end | ( | ) | [inline] |
Returns last index as an iterator For an example see begin().
const_iterator lti::pyramid< T >::end | ( | ) | const [inline] |
Returns last index as a const iterator.
For an example see begin()
bool lti::pyramid< T >::equals | ( | const pyramid< T > & | other | ) | const |
Compare this pyramid with another one.
other | the other pyramid to be compared with |
Referenced by lti::pyramid< channel >::operator==().
const char* lti::pyramid< T >::getTypeName | ( | void | ) | const [inline, virtual] |
Returns the name of this class: "pyramid".
Reimplemented from lti::mathObject.
Reimplemented in lti::gaborPyramid< T >, lti::gaussianPyramid< T >, lti::laplacianPyramid< T >, lti::scaleSpacePyramid< T >, lti::gaussianPyramid< channel >, and lti::scaleSpacePyramid< channel >.
pyramid& lti::pyramid< T >::operator= | ( | const pyramid< T > & | other | ) | [inline] |
Assigment operator (alias for copy(other)).
other | the pyramid to be copied |
Reimplemented from lti::ioObject.
Reimplemented in lti::scaleSpacePyramid< T >.
bool lti::pyramid< T >::operator== | ( | const pyramid< T > & | other | ) | const [inline] |
T& lti::pyramid< T >::operator[] | ( | const int & | x | ) | [inline] |
const T& lti::pyramid< T >::operator[] | ( | const int & | x | ) | const [inline] |
virtual void lti::pyramid< T >::resize | ( | const int & | resolutions, | |
const bool & | copyData = true | |||
) | [virtual] |
Change the number of resolutions of the pyramid.
resolutions | the new number of resolutions of the pyramid | |
copyData | if true (default), the old data will be keeped. If false, all data will be lost. |
Reimplemented in lti::scaleSpacePyramid< T >, and lti::scaleSpacePyramid< channel >.
int lti::pyramid< T >::size | ( | ) | const [inline] |
Returns the number of resolutions of this pyramid.
std::vector<T> lti::pyramid< T >::thePyramid [protected] |
The data of the pyramid.