vtkmConfigDataModel.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
3 #ifndef vtkmConfigDataModel_h
4 #define vtkmConfigDataModel_h
5 
6 /*--------------------------------------------------------------------------*/
7 /* Other Configuration Options */
8 
10 #include "vtkAcceleratorsVTKmDataModelModule.h" //required for correct implementation
11 
12 
13 /*--------------------------------------------------------------------------*/
14 /* Make sure we use the same id's in VTK and VTK-m */
15 #include "vtkType.h"
16 #ifdef VTK_USE_64BIT_IDS
17 # ifndef VTKM_USE_64BIT_IDS
18 # error VTK was defined with 64-bit ids but VTK-m with 32-bit ids.
19 # endif
20 #else // !VTK_USE_64BIT_IDS
21 # ifdef VTKM_USE_64BIT_IDS
22 # error VTK was defined with 32-bit ids but VTK-m with 64-bit ids.
23 # endif
24 #endif
25 
26 
27 #ifndef VTKACCELERATORSVTKMDATAMODEL_TEMPLATE_EXPORT
28 # if !defined(VTKACCELERATORSVTKMDATAMODEL_STATIC_DEFINE) && defined(_MSC_VER)
29  /* Warning C4910 on windows state that extern explicit template can't be
30  labeled with __declspec(dllexport). So that is why we use a new custom
31  define. But when other modules ( e.g. rendering ) include this header
32  we need them to see that the extern template is actually being imported.
33  */
34  /* We are building this library with MSVC */
35 # define VTKACCELERATORSVTKMDATAMODEL_TEMPLATE_EXPORT
36 # else
37  /* Defer to the config module */
38 # define VTKACCELERATORSVTKMDATAMODEL_TEMPLATE_EXPORT VTKACCELERATORSVTKMDATAMODEL_EXPORT
39 # endif
40 #endif
41 
42 
43 #endif // vtkmConfigDataModel_h