VTK
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 
71  vtkInformation* request,
72  vtkInformationVector** inputVector,
73  vtkInformationVector* outputVector) override;
74 
76  vtkInformation* request,
77  vtkInformationVector** inputVector,
78  vtkInformationVector* outputVector) override;
79 
80  int RequestData(
83  vtkInformationVector*) override;
84 
85 private:
87  void operator=(const vtkSynchronizeTimeFilter&) = delete;
88 
93  std::vector<double> InputTimeStepValues;
94  std::vector<double> OutputTimeStepValues;
95 
100  double RelativeTolerance;
101 };
102 
103 #endif
vtkPassInputTypeAlgorithm.h
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:41
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:178
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:86
vtkAlgorithmOutput
Proxy object to connect input/output ports.
Definition: vtkAlgorithmOutput.h:39
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:150
VTK_DOUBLE_MAX
#define VTK_DOUBLE_MAX
Definition: vtkType.h:169
vtkPassInputTypeAlgorithm::RequestInformation
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks for Information.
Definition: vtkPassInputTypeAlgorithm.h:129
vtkPassInputTypeAlgorithm
Superclass for algorithms that produce output of the same type as input.
Definition: vtkPassInputTypeAlgorithm.h:54