4#ifndef vtkDataObjectImplicitBackendInterface_h
5#define vtkDataObjectImplicitBackendInterface_h
7#include "vtkCommonDataModelModule.h"
58VTK_ABI_NAMESPACE_BEGIN
63template <
typename ValueType>
67 vtkDataObject* dataobject,
const std::string& arrayName,
int attributeType);
108 std::string ArrayName;
115#if defined(VTK_DATAOBJECT_BACKEND_INSTANTIATING)
117#define VTK_INSTANTIATE_DATAOBJECT_BACKEND(ValueType) \
118 VTK_ABI_NAMESPACE_BEGIN \
119 template struct VTKCOMMONDATAMODEL_EXPORT vtkDataObjectImplicitBackendInterface<ValueType>; \
120 VTK_ABI_NAMESPACE_END
122#elif defined(VTK_USE_EXTERN_TEMPLATE)
124#ifndef VTK_DATAOBJECT_BACKEND_TEMPLATE_EXTERN
125#define VTK_DATAOBJECT_BACKEND_TEMPLATE_EXTERN
128#pragma warning(disable : 4910)
130VTK_ABI_NAMESPACE_BEGIN
abstract superclass for arrays of numeric data
general representation of visualization data
abstract base class for most VTK objects
Hold a reference to a vtkObjectBase instance.
a weak reference to a vtkObject.
A utility structure that can be used as a base for implicit array backend that relies on a vtkDataObj...
void OnDataObjectDeleted(vtkObject *caller, unsigned long eventId, void *calldata)
Callback to call when DataObject is destroyed.
ValueType operator()(vtkIdType idx) const
Get the value at given index.
vtkDataObjectImplicitBackendInterface(vtkDataObject *dataobject, const std::string &arrayName, int attributeType)
vtkDataObject * GetDataObject()
Get the internal dataobject.
virtual ~vtkDataObjectImplicitBackendInterface()
virtual ValueType GetValueFromDataObject(vtkIdType idx) const =0
Return the actual value for given index.
#define vtkExternTemplateMacro(decl)
A macro to declare extern templates for all numerical types.