VTK  9.4.20250205
vtkConduitSource.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
22#ifndef vtkConduitSource_h
23#define vtkConduitSource_h
24
26
27#include "vtkIOCatalystConduitModule.h" // for exports
28
29#include "conduit.h" // for conduit_node
30
31#include <memory> // for std::unique_ptr
32
33VTK_ABI_NAMESPACE_BEGIN
34class VTKIOCATALYSTCONDUIT_EXPORT vtkConduitSource : public vtkDataObjectAlgorithm
35{
36public:
39 void PrintSelf(ostream& os, vtkIndent indent) override;
40
42
47 vtkSetMacro(UseAMRMeshProtocol, bool);
48 vtkGetMacro(UseAMRMeshProtocol, bool);
49 vtkBooleanMacro(UseAMRMeshProtocol, bool);
51
53
58 vtkSetMacro(UseMultiMeshProtocol, bool);
59 vtkGetMacro(UseMultiMeshProtocol, bool);
60 vtkBooleanMacro(UseMultiMeshProtocol, bool);
62
64
68 vtkSetMacro(OutputMultiBlock, bool);
69 vtkGetMacro(OutputMultiBlock, bool);
70 vtkBooleanMacro(OutputMultiBlock, bool);
72
74
78 void SetNode(const conduit_node* node);
80
82
90 void SetGlobalFieldsNode(const conduit_node* node);
92
94
97 void SetAssemblyNode(const conduit_node* node);
99
100protected:
103
107 vtkInformationVector* outputVector) override;
108
110
118
119private:
120 vtkConduitSource(const vtkConduitSource&) = delete;
121 void operator=(const vtkConduitSource&) = delete;
122
123 class vtkInternals;
124 std::unique_ptr<vtkInternals> Internals;
125 bool UseAMRMeshProtocol;
126 bool UseMultiMeshProtocol;
127 bool OutputMultiBlock;
128};
129VTK_ABI_NAMESPACE_END
130
131#endif
data source for Conduit Mesh Blueprint.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
bool GeneratePartitionedDataSet(vtkDataObject *output)
Generate actual output and fill the given data object with it.
void SetAssemblyNode(const conduit_node *node)
Set the node to read the assembly information from, if any.
bool GeneratePartitionedDataSetCollection(vtkDataObject *output)
Generate actual output and fill the given data object with it.
void SetGlobalFieldsNode(const conduit_node *node)
Mechanism to add global / field-data arrays.
int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
void SetNode(const conduit_node *node)
Get/Set the conduit_node.
bool GenerateAMR(vtkDataObject *output)
Generate actual output and fill the given data object with it.
static vtkConduitSource * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int RequestDataObject(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
~vtkConduitSource() override
Superclass for algorithms that produce only data object as output.
general representation of visualization data
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.