VTK  9.5.20250911
vtkAssignAttribute.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
61#ifndef vtkAssignAttribute_h
62#define vtkAssignAttribute_h
63
64#include "vtkFiltersCoreModule.h" // For export macro
66#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
67
68#include "vtkDataSetAttributes.h" // Needed for NUM_ATTRIBUTES
69
70VTK_ABI_NAMESPACE_BEGIN
71class vtkFieldData;
72
74{
75public:
77 void PrintSelf(ostream& os, vtkIndent indent) override;
78
83
87 void Assign(int inputAttributeType, int attributeType, int attributeLoc);
88
92 void Assign(const char* fieldName, int attributeType, int attributeLoc);
93
98 void Assign(const char* name, const char* attributeType, const char* attributeLoc);
99
100 // Always keep NUM_ATTRIBUTE_LOCS as the last entry
102 {
103 POINT_DATA = 0,
104 CELL_DATA = 1,
105 VERTEX_DATA = 2,
106 EDGE_DATA = 3,
107 NUM_ATTRIBUTE_LOCS
108 };
109
110protected:
112 {
114 ATTRIBUTE
115 };
116
119
123
129
130 static char AttributeLocationNames[vtkAssignAttribute::NUM_ATTRIBUTE_LOCS][12];
131 static char AttributeNames[vtkDataSetAttributes::NUM_ATTRIBUTES][20];
132
133private:
134 vtkAssignAttribute(const vtkAssignAttribute&) = delete;
135 void operator=(const vtkAssignAttribute&) = delete;
136};
137
138VTK_ABI_NAMESPACE_END
139#endif
Labels/marks a field as an attribute.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks for Information.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks the algorithm to do its work.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void Assign(const char *name, const char *attributeType, const char *attributeLoc)
Helper method used by other language bindings.
~vtkAssignAttribute() override
void Assign(const char *fieldName, int attributeType, int attributeLoc)
Label an array as an attribute.
int FillInputPortInformation(int, vtkInformation *) override
Fill the input port information objects for this algorithm.
void Assign(int inputAttributeType, int attributeType, int attributeLoc)
Label an attribute as another attribute.
static vtkAssignAttribute * New()
Create a new vtkAssignAttribute.
Represents and manipulates a collection of data arrays.
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce output of the same type as input.
#define VTK_MARSHALAUTO