VTK  9.3.1
vtkTemporalShiftScale.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
24 #ifndef vtkTemporalShiftScale_h
25 #define vtkTemporalShiftScale_h
26 
27 #include "vtkAlgorithm.h"
28 #include "vtkFiltersHybridModule.h" // For export macro
29 
30 VTK_ABI_NAMESPACE_BEGIN
31 class VTKFILTERSHYBRID_EXPORT vtkTemporalShiftScale : public vtkAlgorithm
32 {
33 public:
34  static vtkTemporalShiftScale* New();
36  void PrintSelf(ostream& os, vtkIndent indent) override;
37 
39 
44  vtkSetMacro(PreShift, double);
45  vtkGetMacro(PreShift, double);
47 
49 
52  vtkSetMacro(PostShift, double);
53  vtkGetMacro(PostShift, double);
55 
57 
60  vtkSetMacro(Scale, double);
61  vtkGetMacro(Scale, double);
63 
65 
78  vtkSetMacro(Periodic, vtkTypeBool);
79  vtkGetMacro(Periodic, vtkTypeBool);
80  vtkBooleanMacro(Periodic, vtkTypeBool);
82 
84 
93  vtkSetMacro(PeriodicEndCorrection, vtkTypeBool);
94  vtkGetMacro(PeriodicEndCorrection, vtkTypeBool);
95  vtkBooleanMacro(PeriodicEndCorrection, vtkTypeBool);
97 
99 
104  vtkSetMacro(MaximumNumberOfPeriods, double);
105  vtkGetMacro(MaximumNumberOfPeriods, double);
107 
108 protected:
110  ~vtkTemporalShiftScale() override;
111 
112  double PreShift;
113  double PostShift;
114  double Scale;
118  //
119  double InRange[2];
120  double OutRange[2];
121  double PeriodicRange[2];
124 
129  vtkInformationVector* outputVector) override;
130 
131  virtual int RequestUpdateExtent(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
132 
133  int FillInputPortInformation(int port, vtkInformation* info) override;
134  int FillOutputPortInformation(int vtkNotUsed(port), vtkInformation* info) override;
135 
136  virtual int RequestDataObject(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
137 
138  virtual int RequestInformation(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
139 
140  virtual int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
141 
142  double ForwardConvert(double T0);
143  double BackwardConvert(double T1);
144 
145 private:
147  void operator=(const vtkTemporalShiftScale&) = delete;
148 };
149 
150 VTK_ABI_NAMESPACE_END
151 #endif
Store vtkAlgorithm input/output information.
modify the time range/steps of temporal data
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int vtkTypeBool
Definition: vtkABI.h:64
virtual vtkTypeBool ProcessRequest(vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
Upstream/Downstream requests form the generalized interface through which executives invoke a algorit...
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:51
virtual int FillOutputPortInformation(int port, vtkInformation *info)
Fill the output port information objects for this algorithm.
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
Store zero or more vtkInformation instances.
static vtkAlgorithm * New()