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

vlInterpolatorNNPlugin Class Reference

A Plugin for providing NearestNeighbor interpolation. More...

#include <nearestneighbor.h>

Inheritance diagram for vlInterpolatorNNPlugin:

vlInterpolatorPlugin vlPlugin List of all members.

Public Member Functions

 vlInterpolatorNNPlugin ()
 Default constructor.

virtual ~vlInterpolatorNNPlugin ()
 Default destructor.

vlInterpolationType interpolationType () const
 Returns the interpolation type implemented by this layout.

std::vector< vlLayoutTypegetSupportedLayouts () const
 Returns the layout's natively supported by this plugin.

vlInterpolatorSuperBasegetNativeInterpolator (const vlDataType &datatype, const vlLayoutType type)
 Returns an interpolator object which uses the given layouts native iterators.

vlInterpolatorSuperBasegetVirtualInterpolator (const vlDataType &datatype)
 Returns an interpolator object which uses the VirtualCall iterator.


Protected Member Functions

template<typename DataType> vlInterpolatorSuperBasegetNativeInterpolatorT (DataType &dummy, const vlLayoutType type)
template<typename DataType, vlLayoutType Layout> vlInterpolatorSuperBasegetNativeInterpolatorTT ()
 This function does the real job.

template<typename DataType> vlInterpolatorSuperBasegetVirtualInterpolatorT (DataType &dummy)
 This function does the real job.


Protected Attributes

const vlInterpolationType m_interpolationType
 Stores the interpolation type this plugin implements.

std::vector< vlLayoutTypem_supportedLayouts
 Stores a list of supported volume data layouts.


Detailed Description

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

Definition at line 41 of file nearestneighbor.h.


Constructor & Destructor Documentation

vlInterpolatorNNPlugin::vlInterpolatorNNPlugin  ) 
 

Definition at line 40 of file nearestneighbor.cpp.

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

vlInterpolatorNNPlugin::~vlInterpolatorNNPlugin  )  [virtual]
 

Definition at line 57 of file nearestneighbor.cpp.


Member Function Documentation

vlInterpolatorSuperBase * vlInterpolatorNNPlugin::getNativeInterpolator const vlDataType datatype,
const vlLayoutType  type
[virtual]
 

If no native implementation is available, the it returns 0L.

Implements vlInterpolatorPlugin.

Definition at line 75 of file nearestneighbor.cpp.

References callFunctionOnDataType, and getNativeInterpolatorT().

template<typename DataType>
vlInterpolatorSuperBase * vlInterpolatorNNPlugin::getNativeInterpolatorT DataType &  dummy,
const vlLayoutType  type
[protected]
 

Definition at line 83 of file nearestneighbor.cpp.

References callFunctionOnLayoutWithDataTypeNoArgs, and getNativeInterpolatorTT().

Referenced by getNativeInterpolator().

template<typename DataType, vlLayoutType Layout>
vlInterpolatorSuperBase * vlInterpolatorNNPlugin::getNativeInterpolatorTT  )  [protected]
 

Definition at line 92 of file nearestneighbor.cpp.

Referenced by getNativeInterpolatorT().

std::vector< vlLayoutType > vlInterpolatorNNPlugin::getSupportedLayouts  )  const [virtual]
 

By native support we mean the layout's native iterators are used directly in the implementation. These are the layouts which were directly supported by OpenVL when this plugin gets compiled. For all other layouts, the VirtualCall iterators will be used.

Implements vlInterpolatorPlugin.

Definition at line 70 of file nearestneighbor.cpp.

References m_supportedLayouts.

vlInterpolatorSuperBase * vlInterpolatorNNPlugin::getVirtualInterpolator const vlDataType datatype  )  [virtual]
 

Implements vlInterpolatorPlugin.

Definition at line 99 of file nearestneighbor.cpp.

References callFunctionOnDataTypeNoArgs, and getVirtualInterpolatorT().

template<typename DataType>
vlInterpolatorSuperBase * vlInterpolatorNNPlugin::getVirtualInterpolatorT DataType &  dummy  )  [protected]
 

Definition at line 108 of file nearestneighbor.cpp.

Referenced by getVirtualInterpolator().

vlInterpolationType vlInterpolatorNNPlugin::interpolationType  )  const [virtual]
 

Implements vlInterpolatorPlugin.

Definition at line 64 of file nearestneighbor.cpp.

References m_interpolationType, and vlInterpolationType.


Member Data Documentation

const vlInterpolationType vlInterpolatorNNPlugin::m_interpolationType [protected]
 

Definition at line 86 of file nearestneighbor.h.

Referenced by interpolationType().

std::vector<vlLayoutType> vlInterpolatorNNPlugin::m_supportedLayouts [protected]
 

Definition at line 89 of file nearestneighbor.h.

Referenced by getSupportedLayouts(), and vlInterpolatorNNPlugin().


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