VTK  9.2.6
vtkArrayRename.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkArrayRename.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 =========================================================================*/
15 
31 #ifndef vtkArrayRename_h
32 #define vtkArrayRename_h
33 
34 #include "vtkFiltersCoreModule.h" // For export macro
36 
37 #include "vtkDataObject.h" // for AttributeTypes enum
38 
39 #include <map> // for std::map
40 #include <string> // for std::string
41 
42 class VTKFILTERSCORE_EXPORT vtkArrayRename : public vtkPassInputTypeAlgorithm
43 {
44 public:
45  static vtkArrayRename* New();
47  void PrintSelf(ostream& os, vtkIndent indent) override;
48 
52 
56  int GetNumberOfArrays(int attributeType);
60  const char* GetArrayOriginalName(int attributeType, int idx);
64  const char* GetArrayNewName(int attributeType, int idx);
68  void SetArrayName(int attributeType, int idx, const char* newName);
72  void SetArrayName(int attributeType, const char* inputName, const char* newName);
76  void ClearMapping(int attributeType);
78 
84  int GetNumberOfPointArrays() { return this->GetNumberOfArrays(vtkDataObject::POINT); }
86  const char* GetPointArrayOriginalName(int idx)
87  {
88  return this->GetArrayOriginalName(vtkDataObject::POINT, idx);
89  }
90  const char* GetPointArrayNewName(int idx)
91  {
92  return this->GetArrayNewName(vtkDataObject::POINT, idx);
93  }
94  void SetPointArrayName(int idx, const char* newName)
95  {
96  this->SetArrayName(vtkDataObject::POINT, idx, newName);
97  }
98  void SetPointArrayName(const char* inputName, const char* newName)
99  {
100  this->SetArrayName(vtkDataObject::POINT, inputName, newName);
101  }
102  void ClearPointMapping() { this->ClearMapping(vtkDataObject::POINT); }
104 
110  int GetNumberOfCellArrays() { return this->GetNumberOfArrays(vtkDataObject::CELL); }
112  const char* GetCellArrayOriginalName(int idx)
113  {
114  return this->GetArrayOriginalName(vtkDataObject::CELL, idx);
115  }
116  const char* GetCellArrayNewName(int idx)
117  {
118  return this->GetArrayNewName(vtkDataObject::CELL, idx);
119  }
120  void SetCellArrayName(int idx, const char* newName)
121  {
122  this->SetArrayName(vtkDataObject::CELL, idx, newName);
123  }
124  void SetCellArrayName(const char* inputName, const char* newName)
125  {
126  this->SetArrayName(vtkDataObject::CELL, inputName, newName);
127  }
128  void ClearCellMapping() { this->ClearMapping(vtkDataObject::CELL); }
130 
136  int GetNumberOfFieldArrays() { return this->GetNumberOfArrays(vtkDataObject::FIELD); }
138  const char* GetFieldArrayOriginalName(int idx)
139  {
140  return this->GetArrayOriginalName(vtkDataObject::FIELD, idx);
141  }
142  const char* GetFieldArrayNewName(int idx)
143  {
144  return this->GetArrayNewName(vtkDataObject::FIELD, idx);
145  }
146  void SetFieldArrayName(int idx, const char* newName)
147  {
148  this->SetArrayName(vtkDataObject::FIELD, idx, newName);
149  }
150  void SetFieldArrayName(const char* inputName, const char* newName)
151  {
152  this->SetArrayName(vtkDataObject::FIELD, inputName, newName);
153  }
154  void ClearFieldMapping() { this->ClearMapping(vtkDataObject::FIELD); }
156 
162  int GetNumberOfVertexArrays() { return this->GetNumberOfArrays(vtkDataObject::VERTEX); }
164  const char* GetVertexArrayOriginalName(int idx)
165  {
166  return this->GetArrayOriginalName(vtkDataObject::VERTEX, idx);
167  }
168  const char* GetVertexArrayNewName(int idx)
169  {
170  return this->GetArrayNewName(vtkDataObject::VERTEX, idx);
171  }
172  void SetVertexArrayName(int idx, const char* newName)
173  {
174  this->SetArrayName(vtkDataObject::VERTEX, idx, newName);
175  }
176  void SetVertexArrayName(const char* inputName, const char* newName)
177  {
178  this->SetArrayName(vtkDataObject::VERTEX, inputName, newName);
179  }
180  void ClearVertexMapping() { this->ClearMapping(vtkDataObject::VERTEX); }
182 
188  int GetNumberOfEdgeArrays() { return this->GetNumberOfArrays(vtkDataObject::EDGE); }
190  const char* GetEdgeArrayOriginalName(int idx)
191  {
192  return this->GetArrayOriginalName(vtkDataObject::EDGE, idx);
193  }
194  const char* GetEdgeArrayNewName(int idx)
195  {
196  return this->GetArrayNewName(vtkDataObject::EDGE, idx);
197  }
198  void SetEdgeArrayName(int idx, const char* newName)
199  {
200  this->SetArrayName(vtkDataObject::EDGE, idx, newName);
201  }
202  void SetEdgeArrayName(const char* inputName, const char* newName)
203  {
204  this->SetArrayName(vtkDataObject::EDGE, inputName, newName);
205  }
206  void ClearEdgeMapping() { this->ClearMapping(vtkDataObject::EDGE); }
208 
214  int GetNumberOfRowArrays() { return this->GetNumberOfArrays(vtkDataObject::ROW); }
216  const char* GetRowArrayOriginalName(int idx)
217  {
218  return this->GetArrayOriginalName(vtkDataObject::ROW, idx);
219  }
220  const char* GetRowArrayNewName(int idx) { return this->GetArrayNewName(vtkDataObject::ROW, idx); }
221  void SetRowArrayName(int idx, const char* newName)
222  {
223  this->SetArrayName(vtkDataObject::ROW, idx, newName);
224  }
225  void SetRowArrayName(const char* inputName, const char* newName)
226  {
227  this->SetArrayName(vtkDataObject::ROW, inputName, newName);
228  }
229  void ClearRowMapping() { this->ClearMapping(vtkDataObject::ROW); }
231 
235  void ClearAll();
236 
237 protected:
238  vtkArrayRename() = default;
239  ~vtkArrayRename() override = default;
240 
242 
243  int FillInputPortInformation(int port, vtkInformation* info) override;
244 
245 private:
246  vtkArrayRename(const vtkArrayRename&) = delete;
247  void operator=(const vtkArrayRename&) = delete;
248 
249  std::map<int, std::map<std::string, std::string>> ArrayMapping;
250 };
251 
252 #endif // vtkArrayRename_h
const char * GetCellArrayOriginalName(int idx)
Get / Set array name mapping for CellData.
void SetVertexArrayName(int idx, const char *newName)
Get / Set array name mapping for VertexData.
Superclass for algorithms that produce output of the same type as input.
void SetCellArrayName(int idx, const char *newName)
Get / Set array name mapping for CellData.
Store vtkAlgorithm input/output information.
void ClearCellMapping()
Get / Set array name mapping for CellData.
void SetVertexArrayName(const char *inputName, const char *newName)
Get / Set array name mapping for VertexData.
const char * GetRowArrayOriginalName(int idx)
Get / Set array name mapping for RowData.
void SetEdgeArrayName(const char *inputName, const char *newName)
Get / Set array name mapping for EdgeData.
void SetCellArrayName(const char *inputName, const char *newName)
Get / Set array name mapping for CellData.
const char * GetVertexArrayNewName(int idx)
Get / Set array name mapping for VertexData.
const char * GetEdgeArrayOriginalName(int idx)
Get / Set array name mapping for EdgeData.
const char * GetPointArrayNewName(int idx)
Get / Set array name mapping for PointData.
void ClearRowMapping()
Get / Set array name mapping for RowData.
void SetFieldArrayName(const char *inputName, const char *newName)
Get / Set array name mapping for FieldData.
a simple class to control print indentation
Definition: vtkIndent.h:39
Rename data arrays.
const char * GetVertexArrayOriginalName(int idx)
Get / Set array name mapping for VertexData.
void SetPointArrayName(const char *inputName, const char *newName)
Get / Set array name mapping for PointData.
void SetRowArrayName(const char *inputName, const char *newName)
Get / Set array name mapping for RowData.
void SetPointArrayName(int idx, const char *newName)
Get / Set array name mapping for PointData.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void ClearVertexMapping()
Get / Set array name mapping for VertexData.
void ClearFieldMapping()
Get / Set array name mapping for FieldData.
const char * GetCellArrayNewName(int idx)
Get / Set array name mapping for CellData.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
const char * GetRowArrayNewName(int idx)
Get / Set array name mapping for RowData.
void SetRowArrayName(int idx, const char *newName)
Get / Set array name mapping for RowData.
const char * GetPointArrayOriginalName(int idx)
Get / Set array name mapping for PointData.
Store zero or more vtkInformation instances.
const char * GetFieldArrayNewName(int idx)
Get / Set array name mapping for FieldData.
void ClearPointMapping()
Get / Set array name mapping for PointData.
const char * GetFieldArrayOriginalName(int idx)
Get / Set array name mapping for FieldData.
void SetEdgeArrayName(int idx, const char *newName)
Get / Set array name mapping for EdgeData.
void ClearEdgeMapping()
Get / Set array name mapping for EdgeData.
const char * GetEdgeArrayNewName(int idx)
Get / Set array name mapping for EdgeData.
void SetFieldArrayName(int idx, const char *newName)
Get / Set array name mapping for FieldData.
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks the algorithm to do its work.
static vtkPassInputTypeAlgorithm * New()