Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members | Related Pages

vlVolProcessorThresh Class Reference

This is a class for thresholding on vlVolumes. More...

#include <thresholding.h>

Inheritance diagram for vlVolProcessorThresh:

vlVolProcessor vlPlugin List of all members.

Public Member Functions

 vlVolProcessorThresh ()
 Default constructor.

virtual ~vlVolProcessorThresh ()
 Default destructor.

void init ()
 This function is called after execution of setVolume().

bool run ()
 Run the vol processor.

template<> bool runT (uint8 &dummy)
template<> bool runT (int8 &dummy)
template<> bool runT (uint16 &dummy)
template<> bool runT (int16 &dummy)
template<> bool runT (uint32 &dummy)
template<> bool runT (int32 &dummy)

Protected Member Functions

template<class DataType> bool runT (DataType &dummy)
template<class DataType> bool thresholding (DataType &dummy)
 This function actually does the job of thresholding.


Detailed Description

The method used is simple thresholding based on two thresholds : the lower and the upper thresholds. All voxels with values between the two thresholds (including the two thresholds themselves) are marked.

Thresholding can be controlled by using the following parameters:

The output of the thresholding process can be configured using:

Author:
Sarang Lakare <sarang@users.sf.net>

Definition at line 55 of file thresholding.h.


Constructor & Destructor Documentation

vlVolProcessorThresh::vlVolProcessorThresh  ) 
 

Definition at line 43 of file thresholding.cpp.

References vlPluginInfo::addAuthor(), vlPlugin::infoRef(), vlPluginInfo::setCopyrightText(), vlPluginInfo::setName(), vlPluginInfo::setService(), and vlPluginInfo::setVersion().

vlVolProcessorThresh::~vlVolProcessorThresh  )  [virtual]
 

Definition at line 56 of file thresholding.cpp.


Member Function Documentation

void vlVolProcessorThresh::init  )  [virtual]
 

If the volume argument is not valid, then init() is not called. Implement this function if you need to do any initialization before the user calls run. For e.g., this is the right place to add config parameters which are volume type dependent.

Reimplemented from vlVolProcessor.

Definition at line 61 of file thresholding.cpp.

References vlVarListAdmin::add(), vlVarListAdmin::clear(), vlVolProcessor::configRef(), uint8, and vlVolProcessor::vol().

bool vlVolProcessorThresh::run  )  [virtual]
 

Returns:
true if successful, false otherwise.

Implements vlVolProcessor.

Definition at line 124 of file thresholding.cpp.

References callFunctionOnDataTypeNoArgs, runT(), and vlVolProcessor::vol().

template<>
bool vlVolProcessorThresh::runT int32 dummy  ) 
 

template<>
bool vlVolProcessorThresh::runT uint32 dummy  ) 
 

template<>
bool vlVolProcessorThresh::runT int16 dummy  ) 
 

template<>
bool vlVolProcessorThresh::runT uint16 dummy  ) 
 

template<>
bool vlVolProcessorThresh::runT int8 dummy  ) 
 

template<>
bool vlVolProcessorThresh::runT uint8 dummy  ) 
 

template<class DataType>
bool vlVolProcessorThresh::runT DataType &  dummy  )  [protected]
 

Definition at line 138 of file thresholding.cpp.

Referenced by run().

template<class DataType>
bool vlVolProcessorThresh::thresholding DataType &  dummy  )  [protected]
 

This function expects the volume data to be a single value per voxel and with "<", ">" and "==" defined for the data type.

Parameters:
DataType The data type of the volume data.
dummy A dummy variable just for templates
Returns:
true if thresholding was successful, false otherwise.

Definition at line 146 of file thresholding.cpp.

References vlVarListAdmin::add(), vlVolProcessor::configRef(), vlVolume::dataType(), vlVolume::dim(), vlVolIterConst< DataType, Layout >::get(), vlVarList::get(), vlVolIterConst< DataType, Layout >::nextXYZ(), vlVolProcessor::resultsRef(), vlVolIter< DataType, Layout >::set(), uint64, uint8, UnsignedInt8, and vlVolProcessor::vol().


The documentation for this class was generated from the following files:
Generated on Fri Mar 18 11:33:23 2005 for OpenVL by doxygen 1.3.3