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

vlInterpolatorTriLinPlugin Class Reference

A Plugin for providing TriLinear interpolation. More...

#include <trilinear.h>

Inheritance diagram for vlInterpolatorTriLinPlugin:

vlInterpolatorPlugin vlPlugin List of all members.

Public Member Functions

 vlInterpolatorTriLinPlugin ()
 Default constructor.

virtual ~vlInterpolatorTriLinPlugin ()
 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 trilinear.h.


Constructor & Destructor Documentation

vlInterpolatorTriLinPlugin::vlInterpolatorTriLinPlugin  ) 
 

Definition at line 40 of file trilinear.cpp.

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

vlInterpolatorTriLinPlugin::~vlInterpolatorTriLinPlugin  )  [virtual]
 

Definition at line 56 of file trilinear.cpp.


Member Function Documentation

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

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

Implements vlInterpolatorPlugin.

Definition at line 74 of file trilinear.cpp.

References callFunctionOnDataType, and getNativeInterpolatorT().

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

Definition at line 82 of file trilinear.cpp.

References callFunctionOnLayoutWithDataTypeNoArgs, and getNativeInterpolatorTT().

Referenced by getNativeInterpolator().

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

Definition at line 91 of file trilinear.cpp.

Referenced by getNativeInterpolatorT().

std::vector< vlLayoutType > vlInterpolatorTriLinPlugin::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 69 of file trilinear.cpp.

References m_supportedLayouts.

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

Implements vlInterpolatorPlugin.

Definition at line 98 of file trilinear.cpp.

References callFunctionOnDataTypeNoArgs, and getVirtualInterpolatorT().

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

Definition at line 107 of file trilinear.cpp.

Referenced by getVirtualInterpolator().

vlInterpolationType vlInterpolatorTriLinPlugin::interpolationType  )  const [virtual]
 

Implements vlInterpolatorPlugin.

Definition at line 63 of file trilinear.cpp.

References m_interpolationType, and vlInterpolationType.


Member Data Documentation

const vlInterpolationType vlInterpolatorTriLinPlugin::m_interpolationType [protected]
 

Definition at line 86 of file trilinear.h.

Referenced by interpolationType().

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

Definition at line 89 of file trilinear.h.

Referenced by getSupportedLayouts(), and vlInterpolatorTriLinPlugin().


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