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

vlVoxelOpCentralDiffPlugin Class Reference

A Plugin for providing Central Difference voxel operation. More...

#include <centraldiff.h>

Inheritance diagram for vlVoxelOpCentralDiffPlugin:

vlVoxelOpPlugin vlPlugin List of all members.

Public Member Functions

 vlVoxelOpCentralDiffPlugin ()
 Default constructor.

virtual ~vlVoxelOpCentralDiffPlugin ()
 Default destructor.

vlVoxelOpType type () const
 Returns the voxel operation type implemented by this layout.

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

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

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


Protected Member Functions

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

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


Protected Attributes

const vlVoxelOpType m_voxelOpType
 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.sourceforge.net>

Definition at line 41 of file voxelop/centraldiff/centraldiff.h.


Constructor & Destructor Documentation

vlVoxelOpCentralDiffPlugin::vlVoxelOpCentralDiffPlugin  ) 
 

Definition at line 39 of file voxelop/centraldiff/centraldiff.cpp.

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

vlVoxelOpCentralDiffPlugin::~vlVoxelOpCentralDiffPlugin  )  [virtual]
 

Definition at line 56 of file voxelop/centraldiff/centraldiff.cpp.


Member Function Documentation

vlVoxelOpSuperBase * vlVoxelOpCentralDiffPlugin::getNativeVoxelOp const vlDataType datatype,
const vlLayoutType  type
[virtual]
 

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

Implements vlVoxelOpPlugin.

Definition at line 74 of file voxelop/centraldiff/centraldiff.cpp.

References callFunctionOnIntLikeDataType, and getNativeVoxelOpT().

template<typename DataType>
vlVoxelOpSuperBase * vlVoxelOpCentralDiffPlugin::getNativeVoxelOpT DataType &  dummy,
const vlLayoutType  type
[protected]
 

Definition at line 82 of file voxelop/centraldiff/centraldiff.cpp.

References callFunctionOnLayoutWithDataTypeNoArgs, and getNativeVoxelOpTT().

Referenced by getNativeVoxelOp().

template<typename DataType, vlLayoutType Layout>
vlVoxelOpSuperBase * vlVoxelOpCentralDiffPlugin::getNativeVoxelOpTT  )  [protected]
 

Definition at line 91 of file voxelop/centraldiff/centraldiff.cpp.

Referenced by getNativeVoxelOpT().

std::vector< vlLayoutType > vlVoxelOpCentralDiffPlugin::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 vlVoxelOpPlugin.

Definition at line 69 of file voxelop/centraldiff/centraldiff.cpp.

References m_supportedLayouts.

vlVoxelOpSuperBase * vlVoxelOpCentralDiffPlugin::getVirtualVoxelOp const vlDataType datatype  )  [virtual]
 

Implements vlVoxelOpPlugin.

Definition at line 98 of file voxelop/centraldiff/centraldiff.cpp.

References callFunctionOnIntLikeDataTypeNoArgs, and getVirtualVoxelOpT().

template<typename DataType>
vlVoxelOpSuperBase * vlVoxelOpCentralDiffPlugin::getVirtualVoxelOpT DataType &  dummy  )  [protected]
 

Definition at line 107 of file voxelop/centraldiff/centraldiff.cpp.

Referenced by getVirtualVoxelOp().

vlVoxelOpType vlVoxelOpCentralDiffPlugin::type  )  const [virtual]
 

Implements vlVoxelOpPlugin.

Definition at line 63 of file voxelop/centraldiff/centraldiff.cpp.

References m_voxelOpType, and vlVoxelOpType.


Member Data Documentation

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

Definition at line 89 of file voxelop/centraldiff/centraldiff.h.

Referenced by getSupportedLayouts(), and vlVoxelOpCentralDiffPlugin().

const vlVoxelOpType vlVoxelOpCentralDiffPlugin::m_voxelOpType [protected]
 

Definition at line 86 of file voxelop/centraldiff/centraldiff.h.

Referenced by type().


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