VTK  9.5.20250720
vtkPolyDataAlgorithm.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
131#ifndef vtkPolyDataAlgorithm_h
132#define vtkPolyDataAlgorithm_h
133
134#include "vtkAlgorithm.h"
135#include "vtkCommonExecutionModelModule.h" // For export macro
136#include "vtkPolyData.h" // makes things a bit easier
137#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
138
139VTK_ABI_NAMESPACE_BEGIN
140class vtkDataSet;
141class vtkPolyData;
142
143class VTKCOMMONEXECUTIONMODEL_EXPORT VTK_MARSHALAUTO vtkPolyDataAlgorithm : public vtkAlgorithm
144{
145public:
148 void PrintSelf(ostream& os, vtkIndent indent) override;
149
151
155 vtkPolyData* GetOutput();
156 vtkPolyData* GetOutput(int);
158 virtual void SetOutput(vtkDataObject* d);
160
164 vtkTypeBool ProcessRequest(
166
167 // this method is not recommended for use, but lots of old style filters
168 // use it
170 vtkDataObject* GetInput();
171 vtkDataObject* GetInput(int port);
172 vtkPolyData* GetPolyDataInput(int port);
173
175
181 void SetInputData(vtkDataObject*);
182 void SetInputData(int, vtkDataObject*);
184
186
191 void AddInputData(vtkDataObject*);
192 void AddInputData(int, vtkDataObject*);
194
195protected:
198
199 // convenience method
200 virtual int RequestInformation(vtkInformation* request, vtkInformationVector** inputVector,
201 vtkInformationVector* outputVector);
202
207 virtual int RequestData(vtkInformation* request, vtkInformationVector** inputVector,
208 vtkInformationVector* outputVector);
209
214 virtual int RequestUpdateExtent(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
215
220 virtual int RequestUpdateTime(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
221
222 // see algorithm for more info
223 int FillOutputPortInformation(int port, vtkInformation* info) override;
224 int FillInputPortInformation(int port, vtkInformation* info) override;
225
226private:
228 void operator=(const vtkPolyDataAlgorithm&) = delete;
229};
230
231VTK_ABI_NAMESPACE_END
232#endif
Superclass for all sources, filters, and sinks in VTK.
general representation of visualization data
abstract class to specify dataset behavior
Definition vtkDataSet.h:165
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 only polydata as output.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkPolyDataAlgorithm * New()
concrete dataset represents vertices, lines, polygons, and triangle strips
int vtkTypeBool
Definition vtkABI.h:64
#define VTK_MARSHAL_EXCLUDE_REASON_IS_REDUNDANT
#define VTK_MARSHALAUTO
#define VTK_MARSHALEXCLUDE(reason)