MDSTk Libraries  1.1.0
Medical Data Segmentation Toolkit
Public Types | Public Member Functions | Static Public Attributes
mds::img::CVolumeGauss3Filter< V > Class Template Reference

3D Gaussian smoothing filter having kernel 3x3x3. More...

#include <mdsGaussian.h>

Inheritance diagram for mds::img::CVolumeGauss3Filter< V >:
Inheritance graph
[legend]

List of all members.

Public Types

enum  { TEMPLATE_PARAMETER_IS_NOT_VOLUME = V::CLASS_VOLUME }
 Check that type V is a volume. More...
typedef CVolumeFilter< V > base
 Volume filter base.
typedef mds::base::CFunctor
< bool, int, int
tProgressFunc
 Progress observer (= functor).
typedef CProgressInitializer tProgressInitializer
 Helper class which can be used to call methods beginProgress() and endProgress() automatically.
typedef base::tVolume tVolume
 Volume type.
typedef base::tVoxel tVoxel
 Volume voxel type.

Public Member Functions

void beginProgress ()
 This function must be called by the class realizing an operation before it starts.
 CVolumeGauss3Filter ()
 Default constructor.
void deregisterProgressFunc ()
 Sets the default empty observer.
void endProgress ()
 The function must be called by the class realizing an operation every time the operation finishes.
int getProgressCount () const
 Returns current value of the internal progress value.
int getProgressMax () const
 Returns the maximum allowed value of the internal progress counter.
tVoxel getResponse (const tVolume &SrcVolume, tSize x, tSize y, tSize z)
 Returns filter response at specified volume position.
tSize getSize () const
 Returns filter standard deviation.
bool operator() (const tVolume &SrcVolume, tVolume &DstVolume)
 Filtering of input/source volume.
bool progress (int iIncrement=1)
 Calls the registered observer.
void registerProgressFunc (const tProgressFunc &Func)
 Sets observer/functor called to inform a calling process about the current state of the running operation.
void setProgressMax (int iValue)
 Sets the maximal counter value.
 ~CVolumeGauss3Filter ()
 Destructor.

Static Public Attributes

static const int DENOM = 39
 Number used to divide filter response.
static const CKernel3D::tData KERNEL []
 Filter kernel.

Detailed Description

template<class V>
class mds::img::CVolumeGauss3Filter< V >

3D Gaussian smoothing filter having kernel 3x3x3.


Member Typedef Documentation

template<class V>
typedef CVolumeFilter<V> mds::img::CVolumeGauss3Filter< V >::base

Volume filter base.

Progress observer (= functor).

  • You may return false from the observer if you want to terminate the running operation.
  • Parameters describe current and final state of the pending operation (counter and maximal value).
  • If the second parameter is equal to -1, termination time cannot be determined, the current state is unknown.

Helper class which can be used to call methods beginProgress() and endProgress() automatically.

Create static object of this type at the begining of a method that realizes an operation.

template<class V>
typedef base::tVolume mds::img::CVolumeGauss3Filter< V >::tVolume

Volume type.

Reimplemented from mds::img::CVolumeFilter< V >.

template<class V>
typedef base::tVoxel mds::img::CVolumeGauss3Filter< V >::tVoxel

Volume voxel type.

Reimplemented from mds::img::CVolumeFilter< V >.


Member Enumeration Documentation

template<class V>
anonymous enum [inherited]

Check that type V is a volume.

You will see name of this enum somewhere in compiler error message if the type V is not volume.

Enumerator:
TEMPLATE_PARAMETER_IS_NOT_VOLUME 

Constructor & Destructor Documentation

Default constructor.

template<class V>
mds::img::CVolumeGauss3Filter< V >::~CVolumeGauss3Filter ( )

Destructor.


Member Function Documentation

void mds::mod::CProgress::beginProgress ( ) [inherited]

This function must be called by the class realizing an operation before it starts.

Sets the default empty observer.

void mds::mod::CProgress::endProgress ( ) [inherited]

The function must be called by the class realizing an operation every time the operation finishes.

  • Sets the default observer.

Returns current value of the internal progress value.

Returns the maximum allowed value of the internal progress counter.

template<class V >
CVolumeGauss3Filter< V >::tVoxel CVolumeGauss3Filter::getResponse ( const tVolume SrcVolume,
tSize  x,
tSize  y,
tSize  z 
)

Returns filter response at specified volume position.

  • Value is not normalized!
template<class V>
tSize mds::img::CVolumeGauss3Filter< V >::getSize ( ) const

Returns filter standard deviation.

template<class V >
bool CVolumeGauss3Filter::operator() ( const tVolume SrcVolume,
tVolume DstVolume 
) [virtual]

Filtering of input/source volume.

  • Returns false on failure

Implements mds::img::CVolumeFilter< V >.

bool mds::mod::CProgress::progress ( int  iIncrement = 1) [inherited]

Calls the registered observer.

  • Returns false if the running operation should be terminated as soon as possible.
  • It must be called periodically by the class realizing the operation.
void mds::mod::CProgress::registerProgressFunc ( const tProgressFunc Func) [inherited]

Sets observer/functor called to inform a calling process about the current state of the running operation.

  • This function should be called before any operation starts.
void mds::mod::CProgress::setProgressMax ( int  iValue) [inherited]

Sets the maximal counter value.


Member Data Documentation

template<class V>
const int mds::img::CVolumeGauss3Filter< V >::DENOM = 39 [static]

Number used to divide filter response.

template<class V>
const CKernel3D::tData CVolumeGauss3Filter::KERNEL [static]
Initial value:
{
    0.0f,  1.0f,  0.0f,
    1.0f,  3.0f,  1.0f,
    0.0f,  1.0f,  0.0f,

    1.0f,  3.0f,  1.0f,
    3.0f,  9.0f,  3.0f,
    1.0f,  3.0f,  1.0f,

    0.0f,  1.0f,  0.0f,
    1.0f,  3.0f,  1.0f,
    0.0f,  1.0f,  0.0f
}

Filter kernel.


The documentation for this class was generated from the following files: