From e4c4919cb1879676e8acb8496c9bc982ed6bd33d Mon Sep 17 00:00:00 2001 From: "David C. Lonie" <david.lonie@kitware.com> Date: Fri, 11 Dec 2015 14:24:15 -0500 Subject: [PATCH] Forward vtkDataArrayTemplate to vtkAOSDataArrayTemplate (legacy only). vtkDataArrayTemplate has been deprecated. --- Common/Core/CMakeLists.txt | 2 + Common/Core/Testing/Cxx/CMakeLists.txt | 10 +++++ Common/Core/vtkDataArrayTemplate.h | 51 ++++++++++++++++++++++++++ 3 files changed, 63 insertions(+) create mode 100644 Common/Core/vtkDataArrayTemplate.h diff --git a/Common/Core/CMakeLists.txt b/Common/Core/CMakeLists.txt index af52dd0e137..07dbd67c6ed 100644 --- a/Common/Core/CMakeLists.txt +++ b/Common/Core/CMakeLists.txt @@ -290,6 +290,7 @@ set(${vtk-module}_HDRS vtkAtomicTypes.h vtkAutoInit.h vtkDataArrayIteratorMacro.h + vtkDataArrayTemplate.h vtkGenericDataArray.h vtkGenericDataArrayLookupHelper.h vtkGenericDataArray.txx @@ -687,6 +688,7 @@ set_source_files_properties( ) set_source_files_properties( + vtkDataArrayTemplate.h vtkDenseArray.h vtkSparseArray.h vtkTypedArray.h diff --git a/Common/Core/Testing/Cxx/CMakeLists.txt b/Common/Core/Testing/Cxx/CMakeLists.txt index b76aced570c..8c30e121599 100644 --- a/Common/Core/Testing/Cxx/CMakeLists.txt +++ b/Common/Core/Testing/Cxx/CMakeLists.txt @@ -14,6 +14,16 @@ function(add_data_array_test test_name array_header array_valuetype array_type) set(data_array_tests ${data_array_tests} "${test_source}.cxx" PARENT_SCOPE) endfunction() +# Legacy -- test that the vtkDataArrayTemplate interface still works: +if(NOT VTK_LEGACY_REMOVE) + add_data_array_test( + vtkDataArrayTemplate_LEGACY + vtkDataArrayTemplate.h + float + vtkDataArrayTemplate<float> + ) +endif() + # Non-templated classes: add_data_array_test(vtkCharArray vtkCharArray.h "char" vtkCharArray) add_data_array_test(vtkDoubleArray vtkDoubleArray.h "double" vtkDoubleArray) diff --git a/Common/Core/vtkDataArrayTemplate.h b/Common/Core/vtkDataArrayTemplate.h new file mode 100644 index 00000000000..1c52db74fc3 --- /dev/null +++ b/Common/Core/vtkDataArrayTemplate.h @@ -0,0 +1,51 @@ +/*========================================================================= + + Program: Visualization Toolkit + Module: vtkDataArrayTemplate.h + + Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen + All rights reserved. + See Copyright.txt or http://www.kitware.com/Copyright.htm for details. + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the above copyright notice for more information. + +=========================================================================*/ +// .NAME vtkDataArrayTemplate +// .SECTION Description +// vtkDataArrayTemplate is deprecated, use vtkAOSDataArrayTemplate instead. + +#ifndef vtkDataArrayTemplate_h +#define vtkDataArrayTemplate_h + +#include "vtkAOSDataArrayTemplate.h" + +#ifndef VTK_LEGACY_REMOVE + +template <typename ValueType> +class vtkDataArrayTemplate : public vtkAOSDataArrayTemplate<ValueType> +{ +public: + vtkTemplateTypeMacro(vtkDataArrayTemplate<ValueType>, + vtkAOSDataArrayTemplate<ValueType>) + + static vtkDataArrayTemplate<ValueType>* New() + { + VTK_STANDARD_NEW_BODY(vtkDataArrayTemplate<ValueType>); + } + +protected: + vtkDataArrayTemplate() {} + ~vtkDataArrayTemplate() {} + +private: + vtkDataArrayTemplate(const vtkDataArrayTemplate&); // Not implemented. + void operator=(const vtkDataArrayTemplate&); // Not implemented. +}; + +#endif // VTK_LEGACY_REMOVE + +#endif // vtkDataArrayTemplate_h + +// VTK-HeaderTest-Exclude: vtkDataArrayTemplate.h -- GitLab