3 #ifndef vtkStridedImplicitBackend_h
4 #define vtkStridedImplicitBackend_h
20 #include "vtkCommonCoreModule.h"
24 VTK_ABI_NAMESPACE_BEGIN
26 template <
typename ValueType>
54 ValueType operator()(
vtkIdType idx)
const;
60 void mapTuple(
vtkIdType tupleIdx, ValueType* tuple)
const;
66 ValueType mapComponent(
vtkIdType tupleIdx,
int compIdx)
const;
71 const ValueType*
GetBuffer()
const {
return this->Buffer; }
84 const ValueType* Buffer =
nullptr;
87 int NumberOfComponents = 1;
91 #endif // vtkStridedImplicitBackend_h
93 #if defined(VTK_STRIDED_BACKEND_INSTANTIATING)
95 #define VTK_INSTANTIATE_STRIDED_BACKEND(ValueType) \
96 VTK_ABI_NAMESPACE_BEGIN \
97 template class VTKCOMMONCORE_EXPORT vtkStridedImplicitBackend<ValueType>; \
100 #elif defined(VTK_USE_EXTERN_TEMPLATE)
102 #ifndef VTK_STRIDED_BACKEND_TEMPLATE_EXTERN
103 #define VTK_STRIDED_BACKEND_TEMPLATE_EXTERN
105 #pragma warning(push)
106 #pragma warning(disable : 4910) // extern and dllexport incompatible
108 VTK_ABI_NAMESPACE_BEGIN
110 VTK_ABI_NAMESPACE_END
114 #endif // VTK_STRIDED_IMPLICIT_BACKEND_TEMPLATE_EXTERN
const ValueType * GetBuffer() const
Return the memory size of the buffer in bytes.
vtkIdType GetStride() const
Return the stride of the buffer in number of values.
vtkIdType GetOffset() const
Return the offset of the buffer in number of values.
vtkExternTemplateMacro(extern template class VTKCOMMONCORE_EXPORT vtkStridedImplicitBackend)
list of point or cell ids
A backend for the vtkImplicitArray framework to give a strided view on a buffer.