Public Member Functions | Protected Member Functions | Protected Attributes

Convolver3D< T > Class Template Reference

Inheritance diagram for Convolver3D< T >:
ParallelTask Task NamedObject CallBacker

List of all members.

Public Member Functions

 Convolver3D ()
void setX (const Array3D< T > &, int first0=0, int first1=0, int first2=0)
void setY (const Array3D< T > &, int first0=0, int first1=0, int first2=0)
void setZ (Array3D< T > &z)
void setNormalize (bool n)
void setCorrelate (bool yn)
void setHasUdfs (bool yn)
 Default is false.
bool execute ()

Protected Member Functions

bool shouldFFT () const
bool doFFT ()
bool doWork (od_int64, od_int64, int)
od_int64 nrIterations () const

Protected Attributes

const Array3D< T > * x_
int xshift0_
int xshift1_
int xshift2_
const Array3D< T > * y_
int yshift0_
int yshift1_
int yshift2_
Array3D< T > * z_
bool normalize_
bool correlate_
bool hasudfs_

Detailed Description

template<class T>
class Convolver3D< T >

Convolves (or correlates) two 3D signals.


Constructor & Destructor Documentation

template<class T >
Convolver3D< T >::Convolver3D (  )  [inline]

Member Function Documentation

template<class T >
bool Convolver3D< T >::doFFT (  )  [inline, protected]
template<class T >
bool Convolver3D< T >::doWork ( od_int64  start,
od_int64  stop,
int   
) [inline, protected]
template<class T >
bool Convolver3D< T >::execute (  )  [inline, virtual]

Reimplemented from ParallelTask.

template<class T >
od_int64 Convolver3D< T >::nrIterations (  )  const [inline, protected, virtual]

Implements ParallelTask.

template<class T >
void Convolver3D< T >::setCorrelate ( bool  yn  )  [inline]

If true, the convolution will be replaced by a correllation.

template<class T >
void Convolver3D< T >::setHasUdfs ( bool  yn  )  [inline]

Default is false.

template<class T >
void Convolver3D< T >::setNormalize ( bool  n  )  [inline]

If true, the sum will be divided by the sum of Y.

template<class T >
void Convolver3D< T >::setX ( const Array3D< T > &  x,
int  first0 = 0,
int  first1 = 0,
int  first2 = 0 
) [inline]
template<class T >
void Convolver3D< T >::setY ( const Array3D< T > &  y,
int  first0 = 0,
int  first1 = 0,
int  first2 = 0 
) [inline]
template<class T >
void Convolver3D< T >::setZ ( Array3D< T > &  z  )  [inline]
template<class T >
bool Convolver3D< T >::shouldFFT (  )  const [inline, protected]

Member Data Documentation

template<class T >
bool Convolver3D< T >::correlate_ [protected]
template<class T >
bool Convolver3D< T >::hasudfs_ [protected]
template<class T >
bool Convolver3D< T >::normalize_ [protected]
template<class T >
const Array3D<T>* Convolver3D< T >::x_ [protected]
template<class T >
int Convolver3D< T >::xshift0_ [protected]
template<class T >
int Convolver3D< T >::xshift1_ [protected]
template<class T >
int Convolver3D< T >::xshift2_ [protected]
template<class T >
const Array3D<T>* Convolver3D< T >::y_ [protected]
template<class T >
int Convolver3D< T >::yshift0_ [protected]
template<class T >
int Convolver3D< T >::yshift1_ [protected]
template<class T >
int Convolver3D< T >::yshift2_ [protected]
template<class T >
Array3D<T>* Convolver3D< T >::z_ [protected]