VTK  9.1.0
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-------------------------------------------------------------------------*/
71#ifndef vtkPassArrays_h
72#define vtkPassArrays_h
73
75#include "vtkFiltersGeneralModule.h" // For export macro
76
77class VTKFILTERSGENERAL_EXPORT vtkPassArrays : public vtkDataObjectAlgorithm
78{
79public:
80 static vtkPassArrays* New();
82 void PrintSelf(ostream& os, vtkIndent indent) override;
83
90 virtual void AddArray(int fieldType, const char* name);
91
92 virtual void AddPointDataArray(const char* name);
93 virtual void AddCellDataArray(const char* name);
94 virtual void AddFieldDataArray(const char* name);
95
96 virtual void RemoveArray(int fieldType, const char* name);
97
98 virtual void RemovePointDataArray(const char* name);
99 virtual void RemoveCellDataArray(const char* name);
100 virtual void RemoveFieldDataArray(const char* name);
101
103
106 virtual void ClearArrays();
107 virtual void ClearPointDataArrays();
108 virtual void ClearCellDataArrays();
109 virtual void ClearFieldDataArrays();
111
113
117 vtkSetMacro(RemoveArrays, bool);
118 vtkGetMacro(RemoveArrays, bool);
119 vtkBooleanMacro(RemoveArrays, bool);
121
123
128 vtkSetMacro(UseFieldTypes, bool);
129 vtkGetMacro(UseFieldTypes, bool);
130 vtkBooleanMacro(UseFieldTypes, bool);
132
140 virtual void AddFieldType(int fieldType);
141
145 virtual void ClearFieldTypes();
146
151 vtkInformationVector* outputVector) override;
152
153protected:
155 ~vtkPassArrays() override;
156
161 int FillInputPortInformation(int port, vtkInformation* info) override;
162
167 vtkInformationVector* outputVector) override;
168
170
173
174 class Internals;
175 Internals* Implementation;
176
177private:
178 vtkPassArrays(const vtkPassArrays&) = delete;
179 void operator=(const vtkPassArrays&) = delete;
180};
181
182#endif
Superclass for algorithms that produce only data object as output.
a simple class to control print indentation
Definition: vtkIndent.h:113
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Passes a subset of arrays to the output.
Definition: vtkPassArrays.h:78
~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