VTK  9.3.1
vtkSynchronizeTimeFilter.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
21 #ifndef vtkSynchronizeTimeFilter_h
22 #define vtkSynchronizeTimeFilter_h
23 
24 #include "vtkFiltersGeneralModule.h" // For export macro
26 
27 #include <vector> // Use of dynamically allocated array
28 
29 VTK_ABI_NAMESPACE_BEGIN
30 class VTKFILTERSGENERAL_EXPORT vtkSynchronizeTimeFilter : public vtkPassInputTypeAlgorithm
31 {
32 public:
33  static vtkSynchronizeTimeFilter* New();
35  void PrintSelf(ostream& os, vtkIndent indent) override;
36 
42  void SetSourceConnection(vtkAlgorithmOutput* algOutput);
43 
49  vtkSetClampMacro(RelativeTolerance, double, 0, VTK_DOUBLE_MAX);
50  vtkGetMacro(RelativeTolerance, double);
51 
52 protected:
54  ~vtkSynchronizeTimeFilter() override;
55 
60  double GetInputTimeValue(double outputTimeValue);
61  double GetOutputTimeValue(double inputTimeValue);
62 
63  int RequestInformation(vtkInformation* request, vtkInformationVector** inputVector,
64  vtkInformationVector* outputVector) override;
65 
66  int RequestUpdateExtent(vtkInformation* request, vtkInformationVector** inputVector,
67  vtkInformationVector* outputVector) override;
68 
70 
71 private:
73  void operator=(const vtkSynchronizeTimeFilter&) = delete;
74 
79  std::vector<double> InputTimeStepValues;
80  std::vector<double> OutputTimeStepValues;
81 
86  double RelativeTolerance;
87 };
88 
89 VTK_ABI_NAMESPACE_END
90 #endif
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks for Information.
#define VTK_DOUBLE_MAX
Definition: vtkType.h:154
Superclass for algorithms that produce output of the same type as input.
Store vtkAlgorithm input/output information.
Proxy object to connect input/output ports.
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when each filter in the pipeline decides what portion of its inp...
a simple class to control print indentation
Definition: vtkIndent.h:28
Set "close" time step values from the second input to the first.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Store zero or more vtkInformation instances.
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks the algorithm to do its work.
static vtkPassInputTypeAlgorithm * New()