VTK
vtkPistonAlgorithm.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPistonAlgorithm.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 =========================================================================*/
36 #ifndef vtkPistonAlgorithm_h
37 #define vtkPistonAlgorithm_h
38 
39 #include "vtkAcceleratorsPistonModule.h" // For export macro
40 #include "vtkAlgorithm.h"
41 
43 
44 class VTKACCELERATORSPISTON_EXPORT vtkPistonAlgorithm : public vtkAlgorithm
45 {
46 public:
49  void PrintSelf(ostream& os, vtkIndent indent);
50 
57 
58 
64 
66 
71  void SetInputData(int num, vtkDataObject *input);
72  void SetInputData(vtkDataObject *input) { this->SetInputData(0, input); };
74 
75 protected:
78 
80 
86 
90  virtual int RequestDataObject(vtkInformation* request,
91  vtkInformationVector** inputVector,
92  vtkInformationVector* outputVector);
93 
97  virtual int RequestInformation(vtkInformation* request,
98  vtkInformationVector** inputVector,
99  vtkInformationVector* outputVector);
100 
107 
111  virtual int RequestData(vtkInformation* request,
112  vtkInformationVector** inputVector,
113  vtkInformationVector* outputVector);
114 
121  vtkPistonDataObject *od);
122 
123 private:
124  vtkPistonAlgorithm(const vtkPistonAlgorithm&) VTK_DELETE_FUNCTION;
125  void operator=(const vtkPistonAlgorithm&) VTK_DELETE_FUNCTION;
126 };
127 
128 #endif
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:60
general representation of visualization data
Definition: vtkDataObject.h:65
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only PistonDataObjects.
virtual int RequestDataObject(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Produce empty output of the proper type for RequestData to fill in.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Method that does the actual calculation.
vtkPistonDataObject * GetPistonDataObjectOutput(int port)
A convenience method to reduce code duplication that gets the output as the expected type or NULL.
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Produce meta-data about what RequestData will produce.
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Participate in pipeline's sub extent determination.
static vtkPistonAlgorithm * New()
void SetInputData(int num, vtkDataObject *input)
Assign a data object as input.
virtual void PassBoundsForward(vtkPistonDataObject *id, vtkPistonDataObject *od)
Typically Execute uses this to copy input bounds to output.
virtual int FillOutputPortInformation(int port, vtkInformation *info)
Fill the output port information objects for this algorithm.
virtual int FillInputPortInformation(int port, vtkInformation *info)
Overridden to say that we take in and produce vtkPistonDataObjects.
void SetInputData(vtkDataObject *input)
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
virtual int ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Interface the algorithm to the Pipeline's passes.
A GPU resident data set.
@ info
Definition: vtkX3D.h:376
@ port
Definition: vtkX3D.h:447