VTK  9.0.1
vtkAssignAttribute.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAssignAttribute.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
48 #ifndef vtkAssignAttribute_h
49 #define vtkAssignAttribute_h
50 
51 #include "vtkFiltersCoreModule.h" // For export macro
53 
54 #include "vtkDataSetAttributes.h" // Needed for NUM_ATTRIBUTES
55 
56 class vtkFieldData;
57 
58 class VTKFILTERSCORE_EXPORT vtkAssignAttribute : public vtkPassInputTypeAlgorithm
59 {
60 public:
62  void PrintSelf(ostream& os, vtkIndent indent) override;
63 
68 
72  void Assign(int inputAttributeType, int attributeType, int attributeLoc);
73 
77  void Assign(const char* fieldName, int attributeType, int attributeLoc);
78 
83  void Assign(const char* name, const char* attributeType, const char* attributeLoc);
84 
85  // Always keep NUM_ATTRIBUTE_LOCS as the last entry
87  {
88  POINT_DATA = 0,
89  CELL_DATA = 1,
90  VERTEX_DATA = 2,
91  EDGE_DATA = 3,
92  NUM_ATTRIBUTE_LOCS
93  };
94 
95 protected:
96  enum FieldType
97  {
99  ATTRIBUTE
100  };
101 
104 
108 
109  char* FieldName;
114 
115  static char AttributeLocationNames[vtkAssignAttribute::NUM_ATTRIBUTE_LOCS][12];
116  static char AttributeNames[vtkDataSetAttributes::NUM_ATTRIBUTES][20];
117 
118 private:
119  vtkAssignAttribute(const vtkAssignAttribute&) = delete;
120  void operator=(const vtkAssignAttribute&) = delete;
121 };
122 
123 #endif
vtkAssignAttribute::AttributeLocation
AttributeLocation
Definition: vtkAssignAttribute.h:87
vtkPassInputTypeAlgorithm.h
vtkAssignAttribute::AttributeLocationAssignment
int AttributeLocationAssignment
Definition: vtkAssignAttribute.h:113
vtkAssignAttribute::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:36
vtkAssignAttribute::NAME
@ NAME
Definition: vtkAssignAttribute.h:98
vtkAssignAttribute::New
static vtkAssignAttribute * New()
Create a new vtkAssignAttribute.
vtkAssignAttribute::Assign
void Assign(const char *name, const char *attributeType, const char *attributeLoc)
Helper method used by other language bindings.
vtkAssignAttribute::vtkAssignAttribute
vtkAssignAttribute()
vtkAssignAttribute::FieldName
char * FieldName
Definition: vtkAssignAttribute.h:109
vtkAssignAttribute::RequestData
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks the algorithm to do its work.
vtkAssignAttribute::~vtkAssignAttribute
~vtkAssignAttribute() override
vtkFieldData
represent and manipulate fields of data
Definition: vtkFieldData.h:54
vtkAssignAttribute::NUM_ATTRIBUTE_LOCS
@ NUM_ATTRIBUTE_LOCS
Definition: vtkAssignAttribute.h:92
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:34
vtkAssignAttribute::InputAttributeType
int InputAttributeType
Definition: vtkAssignAttribute.h:112
vtkX3D::name
@ name
Definition: vtkX3D.h:225
vtkAssignAttribute::RequestInformation
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks for Information.
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:65
vtkAssignAttribute::Assign
void Assign(const char *fieldName, int attributeType, int attributeLoc)
Label an array as an attribute.
vtkAssignAttribute::FillInputPortInformation
int FillInputPortInformation(int, vtkInformation *) override
Fill the input port information objects for this algorithm.
vtkAssignAttribute::AttributeType
int AttributeType
Definition: vtkAssignAttribute.h:111
vtkAssignAttribute::FieldTypeAssignment
int FieldTypeAssignment
Definition: vtkAssignAttribute.h:110
vtkAssignAttribute::FieldType
FieldType
Definition: vtkAssignAttribute.h:97
vtkAssignAttribute
Labels/marks a field as an attribute.
Definition: vtkAssignAttribute.h:59
vtkDataSetAttributes.h
vtkDataSetAttributes::NUM_ATTRIBUTES
@ NUM_ATTRIBUTES
Definition: vtkDataSetAttributes.h:107
vtkPassInputTypeAlgorithm
Superclass for algorithms that produce output of the same type as input.
Definition: vtkPassInputTypeAlgorithm.h:52
vtkAssignAttribute::Assign
void Assign(int inputAttributeType, int attributeType, int attributeLoc)
Label an attribute as another attribute.