4#ifndef vtkCompositeImplicitBackend_h
5#define vtkCompositeImplicitBackend_h
41#include "vtkCommonCoreModule.h"
48VTK_ABI_NAMESPACE_BEGIN
51template <
typename ValueType>
88#if defined(VTK_COMPOSITE_BACKEND_INSTANTIATING)
90#define VTK_INSTANTIATE_COMPOSITE_BACKEND(ValueType) \
91 VTK_ABI_NAMESPACE_BEGIN \
92 template class VTKCOMMONCORE_EXPORT vtkCompositeImplicitBackend<ValueType>; \
95#elif defined(VTK_USE_EXTERN_TEMPLATE)
97#ifndef VTK_COMPOSITE_BACKEND_TEMPLATE_EXTERN
98#define VTK_COMPOSITE_BACKEND_TEMPLATE_EXTERN
101#pragma warning(disable : 4910)
103VTK_ABI_NAMESPACE_BEGIN
A utility structure serving as a backend for composite arrays: an array composed of multiple arrays c...
ValueType operator()(vtkIdType idx) const
Indexing operator for the composite of the two arrays respecting the vtkImplicitArray expectations.
~vtkCompositeImplicitBackend()
vtkCompositeImplicitBackend(const std::vector< vtkDataArray * > &arrays)
Constructor for the backend.
std::unique_ptr< Internals > Internal
unsigned long getMemorySize() const
Returns the smallest integer memory size in KiB needed to store the array.
vtkCompositeImplicitBackend(vtkDataArrayCollection *arrays)
maintain an ordered list of dataarray objects
abstract superclass for arrays of numeric data
#define vtkExternTemplateMacro(decl)
A macro to declare extern templates for all numerical types.