VTK  9.7.20260709
vtkConduitArrayUtilitiesDevice.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
13
14#ifndef vtkConduitArrayUtilitiesDevice_h
15#define vtkConduitArrayUtilitiesDevice_h
16
17#include "vtkIOCatalystConduitModule.h" // for exports
18#include "vtkObject.h"
19#include "vtkSmartPointer.h" // for vtkSmartPointer
20
21#include "conduit.h" // for conduit_node
22
23#include "viskores/cont/DeviceAdapterTag.h" // for viskores::cont::DeviceAdapterId
24#include <string> // for std::string
25
26VTK_ABI_NAMESPACE_BEGIN
27class vtkCellArray;
28class vtkDataArray;
29
30class VTKIOCATALYSTCONDUIT_EXPORT vtkConduitArrayUtilitiesDevice : public vtkObject
31{
32public:
35 void PrintSelf(ostream& os, vtkIndent indent) override;
36
38 const conduit_node* mcarray, const viskores::cont::DeviceAdapterId& deviceAdapterId);
40 const conduit_node* mcarray, const viskores::cont::DeviceAdapterId& deviceAdapterId);
41
42 static bool IfVTKmConvertVTKMonoShapedCellArray(vtkIdType numberOfPoints, int cellType,
43 vtkIdType cellSize, vtkDataArray* connectivity, vtkCellArray* cellArray);
44 static bool IfVTKmConvertVTKMixedCellArray(vtkIdType numberOfPoints, vtkDataArray* offsets,
45 vtkDataArray* shapes, vtkDataArray* elements, vtkCellArray* cellArray);
46 static bool CanRunOn(const viskores::cont::DeviceAdapterId& deviceAdapterId);
47
48protected:
51
52private:
54 void operator=(const vtkConduitArrayUtilitiesDevice&) = delete;
55};
56
57VTK_ABI_NAMESPACE_END
58
59#endif
object to represent cell connectivity
static vtkSmartPointer< vtkDataArray > MCArrayToVTKmSOAArray(const conduit_node *mcarray, const viskores::cont::DeviceAdapterId &deviceAdapterId)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkConduitArrayUtilitiesDevice() override
static vtkSmartPointer< vtkDataArray > MCArrayToVTKmAOSArray(const conduit_node *mcarray, const viskores::cont::DeviceAdapterId &deviceAdapterId)
static vtkConduitArrayUtilitiesDevice * New()
static bool IfVTKmConvertVTKMonoShapedCellArray(vtkIdType numberOfPoints, int cellType, vtkIdType cellSize, vtkDataArray *connectivity, vtkCellArray *cellArray)
static bool CanRunOn(const viskores::cont::DeviceAdapterId &deviceAdapterId)
static bool IfVTKmConvertVTKMixedCellArray(vtkIdType numberOfPoints, vtkDataArray *offsets, vtkDataArray *shapes, vtkDataArray *elements, vtkCellArray *cellArray)
a simple class to control print indentation
Definition vtkIndent.h:108
Hold a reference to a vtkObjectBase instance.
#define vtkDataArray
struct conduit_node_impl conduit_node
int vtkIdType
Definition vtkType.h:363