VTK  9.1.0
vtkStreamerBase.h
Go to the documentation of this file.
1 // -*- c++ -*-
2 /*=========================================================================
3 
4  Program: Visualization Toolkit
5  Module: vtkTemporalStatistics.h
6 
7  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
8  All rights reserved.
9  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
10 
11  This software is distributed WITHOUT ANY WARRANTY; without even
12  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
13  PURPOSE. See the above copyright notice for more information.
14 
15 =========================================================================*/
16 
33 #ifndef vtkStreamerBase_h
34 #define vtkStreamerBase_h
35 
36 #include "vtkAlgorithm.h"
37 #include "vtkFiltersCoreModule.h" // For export macro
38 
39 class VTKFILTERSCORE_EXPORT vtkStreamerBase : public vtkAlgorithm
40 {
41 public:
42  vtkTypeMacro(vtkStreamerBase, vtkAlgorithm);
43  void PrintSelf(ostream& os, vtkIndent indent) override;
44 
50 
51 protected:
53  ~vtkStreamerBase() override;
54 
56  {
57  return 1;
58  }
59 
64  virtual int RequestUpdateExtent(
66 
67  virtual int RequestData(vtkInformation* request, vtkInformationVector** inputVector,
68  vtkInformationVector* outputVector);
69 
70  // This method is called during each execution pass. Subclasses
71  // should implement this to do actual work.
72  virtual int ExecutePass(
73  vtkInformationVector** inputVector, vtkInformationVector* outputVector) = 0;
74 
75  // This method is called after streaming is completed. Subclasses
76  // can override this method to perform cleanup.
77  virtual int PostExecute(vtkInformationVector**, vtkInformationVector*) { return 1; }
78 
79  unsigned int NumberOfPasses;
80  unsigned int CurrentIndex;
81 
82 private:
83  vtkStreamerBase(const vtkStreamerBase&) = delete;
84  void operator=(const vtkStreamerBase&) = delete;
85 };
86 
87 #endif //_vtkStreamerBase_h
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:64
a simple class to control print indentation
Definition: vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for filters that stream input pipeline.
virtual int PostExecute(vtkInformationVector **, vtkInformationVector *)
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)=0
This is called by the superclass.
vtkTypeBool ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
see vtkAlgorithm for details
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
unsigned int CurrentIndex
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual int ExecutePass(vtkInformationVector **inputVector, vtkInformationVector *outputVector)=0
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
~vtkStreamerBase() override
unsigned int NumberOfPasses
int vtkTypeBool
Definition: vtkABI.h:69