VTK  9.2.5
vtkPassArrays.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkPassArrays.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/*-------------------------------------------------------------------------
16 Copyright 2008 Sandia Corporation.
17 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18 the U.S. Government retains certain rights in this software.
19-------------------------------------------------------------------------*/
74#ifndef vtkPassArrays_h
75#define vtkPassArrays_h
76
78#include "vtkFiltersGeneralModule.h" // For export macro
79
80class VTKFILTERSGENERAL_EXPORT vtkPassArrays : public vtkDataObjectAlgorithm
81{
82public:
83 static vtkPassArrays* New();
85 void PrintSelf(ostream& os, vtkIndent indent) override;
86
93 virtual void AddArray(int fieldType, const char* name);
94
95 virtual void AddPointDataArray(const char* name);
96 virtual void AddCellDataArray(const char* name);
97 virtual void AddFieldDataArray(const char* name);
98
99 virtual void RemoveArray(int fieldType, const char* name);
100
101 virtual void RemovePointDataArray(const char* name);
102 virtual void RemoveCellDataArray(const char* name);
103 virtual void RemoveFieldDataArray(const char* name);
104
106
109 virtual void ClearArrays();
110 virtual void ClearPointDataArrays();
111 virtual void ClearCellDataArrays();
112 virtual void ClearFieldDataArrays();
114
116
120 vtkSetMacro(RemoveArrays, bool);
121 vtkGetMacro(RemoveArrays, bool);
122 vtkBooleanMacro(RemoveArrays, bool);
124
126
131 vtkSetMacro(UseFieldTypes, bool);
132 vtkGetMacro(UseFieldTypes, bool);
133 vtkBooleanMacro(UseFieldTypes, bool);
135
143 virtual void AddFieldType(int fieldType);
144
148 virtual void ClearFieldTypes();
149
154 vtkInformationVector* outputVector) override;
155
156protected:
158 ~vtkPassArrays() override;
159
164 int FillInputPortInformation(int port, vtkInformation* info) override;
165
170 vtkInformationVector* outputVector) override;
171
173
176
177 class Internals;
178 Internals* Implementation;
179
180private:
181 vtkPassArrays(const vtkPassArrays&) = delete;
182 void operator=(const vtkPassArrays&) = delete;
183};
184
185#endif
Superclass for algorithms that produce only data object as output.
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Passes a subset of arrays to the output.
Definition: vtkPassArrays.h:81
~vtkPassArrays() override
virtual void ClearFieldDataArrays()
Clear all arrays to pass through.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
virtual void AddArray(int fieldType, const char *name)
Adds an array to pass through.
vtkTypeBool ProcessRequest(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
This is required to capture REQUEST_DATA_OBJECT requests.
virtual void RemoveFieldDataArray(const char *name)
virtual void ClearPointDataArrays()
Clear all arrays to pass through.
virtual void AddFieldDataArray(const char *name)
int FillInputPortInformation(int port, vtkInformation *info) override
Override to limit types of supported input types to non-composite datasets.
Internals * Implementation
virtual void ClearFieldTypes()
Clear all field types to process.
virtual void RemoveCellDataArray(const char *name)
virtual void RemoveArray(int fieldType, const char *name)
static vtkPassArrays * New()
virtual void AddCellDataArray(const char *name)
virtual void AddPointDataArray(const char *name)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void RemovePointDataArray(const char *name)
virtual void AddFieldType(int fieldType)
Add a field type to process.
virtual void ClearArrays()
Clear all arrays to pass through.
int RequestDataObject(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
Creates the same output type as the input type.
virtual void ClearCellDataArrays()
Clear all arrays to pass through.
int vtkTypeBool
Definition: vtkABI.h:69