4 #ifndef vtkConstantArray_h
5 #define vtkConstantArray_h
7 #ifdef VTK_CONSTANT_ARRAY_INSTANTIATING
8 #define VTK_IMPLICIT_VALUERANGE_INSTANTIATING
9 #include "vtkDataArrayPrivate.txx"
12 #include "vtkCommonCoreModule.h"
16 #ifdef VTK_CONSTANT_ARRAY_INSTANTIATING
17 #undef VTK_IMPLICIT_VALUERANGE_INSTANTIATING
31 VTK_ABI_NAMESPACE_BEGIN
36 #endif // vtkConstantArray_h
38 #ifdef VTK_CONSTANT_ARRAY_INSTANTIATING
40 #define VTK_INSTANTIATE_CONSTANT_ARRAY(ValueType) \
41 VTK_ABI_NAMESPACE_BEGIN \
42 template class VTKCOMMONCORE_EXPORT vtkImplicitArray<vtkConstantImplicitBackend<ValueType>>; \
43 VTK_ABI_NAMESPACE_END \
44 namespace vtkDataArrayPrivate \
46 VTK_ABI_NAMESPACE_BEGIN \
47 VTK_INSTANTIATE_VALUERANGE_ARRAYTYPE( \
48 vtkImplicitArray<vtkConstantImplicitBackend<ValueType>>, double) \
49 VTK_ABI_NAMESPACE_END \
51 #elif defined(VTK_USE_EXTERN_TEMPLATE)
52 #ifndef VTK_CONSTANT_ARRAY_TEMPLATE_EXTERN
53 #define VTK_CONSTANT_ARRAY_TEMPLATE_EXTERN
58 #pragma warning(disable : 4910) // extern and dllexport incompatible
60 VTK_ABI_NAMESPACE_BEGIN
67 #endif // VTK_CONSTANT_ARRAY_TEMPLATE_EXTERN
69 #elif defined(_MSC_VER) && !defined(VTK_BUILD_SHARED_LIBS)
72 #pragma warning(disable : 4091)
75 #pragma warning(disable : 4231)
88 #pragma warning(disable : 4910) // extern and dllexport incompatible
92 VTK_ABI_NAMESPACE_BEGIN
vtkExternSecondOrderTemplateMacro(extern template class VTKCOMMONCORE_EXPORT vtkImplicitArray, vtkConstantImplicitBackend)
#define vtkInstantiateSecondOrderTemplateMacro(decl0, decl1)
A utility structure serving as a backend for constant implicit arrays.
A read only array class that wraps an implicit function from integers to any value type supported by ...