VTK  9.1.0
vtkSynchronizeTimeFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkSynchronizeTimeFilter.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 =========================================================================*/
30 #ifndef vtkSynchronizeTimeFilter_h
31 #define vtkSynchronizeTimeFilter_h
32 
33 #include "vtkFiltersGeneralModule.h" // For export macro
35 
36 #include <vector> // Use of dynamically allocated array
37 
38 class VTKFILTERSGENERAL_EXPORT vtkSynchronizeTimeFilter : public vtkPassInputTypeAlgorithm
39 {
40 public:
43  void PrintSelf(ostream& os, vtkIndent indent) override;
44 
51 
57  vtkSetClampMacro(RelativeTolerance, double, 0, VTK_DOUBLE_MAX);
58  vtkGetMacro(RelativeTolerance, double);
59 
60 protected:
63 
68  double GetInputTimeValue(double outputTimeValue);
69  double GetOutputTimeValue(double inputTimeValue);
70 
72  vtkInformationVector* outputVector) override;
73 
75  vtkInformationVector* outputVector) override;
76 
78 
79 private:
81  void operator=(const vtkSynchronizeTimeFilter&) = delete;
82 
87  std::vector<double> InputTimeStepValues;
88  std::vector<double> OutputTimeStepValues;
89 
94  double RelativeTolerance;
95 };
96 
97 #endif
Proxy object to connect input/output ports.
a simple class to control print indentation
Definition: vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce output of the same type as input.
Set "close" time step values from the second input to the first.
~vtkSynchronizeTimeFilter() override
static vtkSynchronizeTimeFilter * New()
double GetInputTimeValue(double outputTimeValue)
Helper methods for getting the input time value or output time value given the output time value or i...
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks the algorithm to do its work.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetSourceConnection(vtkAlgorithmOutput *algOutput)
Specify the input that we may potentially replace time steps with.
double GetOutputTimeValue(double inputTimeValue)
int RequestUpdateExtent(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
This is called within ProcessRequest when each filter in the pipeline decides what portion of its inp...
int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
This is called within ProcessRequest when a request asks for Information.
#define VTK_DOUBLE_MAX
Definition: vtkType.h:165