4 #ifndef vtkStdFunctionArray_h
5 #define vtkStdFunctionArray_h
7 #ifdef VTK_STD_FUNCTION_ARRAY_INSTANTIATING
8 #define VTK_IMPLICIT_VALUERANGE_INSTANTIATING
9 #include "vtkDataArrayPrivate.txx"
12 #include "vtkCommonCoreModule.h"
15 #ifdef VTK_STD_FUNCTION_ARRAY_INSTANTIATING
16 #undef VTK_IMPLICIT_VALUERANGE_INSTANTIATING
37 VTK_ABI_NAMESPACE_BEGIN
42 #endif // vtkStdFunctionArray_h
44 #ifdef VTK_STD_FUNCTION_ARRAY_INSTANTIATING
46 #define VTK_INSTANTIATE_STD_FUNCTION_ARRAY(ValueType) \
47 VTK_ABI_NAMESPACE_BEGIN \
48 template class VTKCOMMONCORE_EXPORT vtkImplicitArray<std::function<ValueType(int)>>; \
49 VTK_ABI_NAMESPACE_END \
50 namespace vtkDataArrayPrivate \
52 VTK_ABI_NAMESPACE_BEGIN \
53 VTK_INSTANTIATE_VALUERANGE_ARRAYTYPE(vtkImplicitArray<std::function<ValueType(int)>>, double) \
54 VTK_ABI_NAMESPACE_END \
56 #elif defined(VTK_USE_EXTERN_TEMPLATE)
57 #ifndef VTK_STD_FUNCTION_ARRAY_TEMPLATE_EXTERN
58 #define VTK_STD_FUNCTION_ARRAY_TEMPLATE_EXTERN
63 #pragma warning(disable : 4910) // extern and dllexport incompatible
65 VTK_ABI_NAMESPACE_BEGIN
72 #endif // VTK_STD_FUNCTION_ARRAY_TEMPLATE_EXTERN
74 #elif defined(_MSC_VER) && !defined(VTK_BUILD_SHARED_LIBS)
77 #pragma warning(disable : 4091)
80 #pragma warning(disable : 4231)
93 #pragma warning(disable : 4910) // extern and dllexport incompatible
97 VTK_ABI_NAMESPACE_BEGIN
103 VTK_ABI_NAMESPACE_END
vtkExternStdFunctionTemplateMacro(extern template class VTKCOMMONCORE_EXPORT vtkImplicitArray, std::function, int)
A read only array class that wraps an implicit function from integers to any value type supported by ...
#define vtkInstantiateStdFunctionTemplateMacro(decl0, decl1, delc2)