VTK  9.0.1
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:
41  static vtkSynchronizeTimeFilter* New();
43 
49  void SetSourceConnection(vtkAlgorithmOutput* algOutput);
50 
56  vtkSetClampMacro(RelativeTolerance, double, 0, VTK_DOUBLE_MAX);
57  vtkGetMacro(RelativeTolerance, double);
58 
59 protected:
61  ~vtkSynchronizeTimeFilter() override;
62 
67  double GetInputTimeValue(double outputTimeValue);
68  double GetOutputTimeValue(double inputTimeValue);
69 
70  int RequestInformation(vtkInformation* request, vtkInformationVector** inputVector,
71  vtkInformationVector* outputVector) override;
72 
73  int RequestUpdateExtent(vtkInformation* request, vtkInformationVector** inputVector,
74  vtkInformationVector* outputVector) override;
75 
77 
78 private:
80  void operator=(const vtkSynchronizeTimeFilter&) = delete;
81 
86  std::vector<double> InputTimeStepValues;
87  std::vector<double> OutputTimeStepValues;
88 
93  double RelativeTolerance;
94 };
95 
96 #endif
vtkPassInputTypeAlgorithm.h
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:35
vtkPassInputTypeAlgorithm::RequestData
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks the algorithm to do its work.
Definition: vtkPassInputTypeAlgorithm.h:171
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:73
vtkAlgorithmOutput
Proxy object to connect input/output ports.
Definition: vtkAlgorithmOutput.h:36
vtkPassInputTypeAlgorithm::New
static vtkPassInputTypeAlgorithm * New()
vtkSynchronizeTimeFilter
Set "close" time step values from the second input to the first.
Definition: vtkSynchronizeTimeFilter.h:38
vtkPassInputTypeAlgorithm::RequestUpdateExtent
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when each filter in the pipeline decides what portion of its inp...
Definition: vtkPassInputTypeAlgorithm.h:147
VTK_DOUBLE_MAX
#define VTK_DOUBLE_MAX
Definition: vtkType.h:165
vtkPassInputTypeAlgorithm::RequestInformation
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks for Information.
Definition: vtkPassInputTypeAlgorithm.h:124
vtkPassInputTypeAlgorithm
Superclass for algorithms that produce output of the same type as input.
Definition: vtkPassInputTypeAlgorithm.h:51