VTK  9.3.20240221
vtkTimeRange.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
3 
14 #ifndef vtkTimeRange_h
15 #define vtkTimeRange_h
16 
17 #include "vtkExecutionRange.h"
18 
19 #include "vtkCommonExecutionModelModule.h" // for export macro
20 #include <vtkDataObject.h> // for smart pointer signature
21 #include <vtkSmartPointer.h> // for smart pointer signature
22 
23 #include <vector> // for TimeValues member
24 
25 VTK_ABI_NAMESPACE_BEGIN
26 
27 class VTKCOMMONEXECUTIONMODEL_EXPORT vtkTimeRange : public vtkExecutionRange
28 {
29 public:
30  static vtkTimeRange* New();
32  void PrintSelf(std::ostream& os, vtkIndent indent) override;
33 
35  vtkInformationVector** inputVector, vtkInformationVector* outputVector) override;
36 
37  int RequestUpdateExtent(std::size_t iteration, vtkInformationVector** inputVector,
38  vtkInformationVector* outputVector) override;
39 
40  std::size_t Size() override;
41 
42 protected:
43  vtkTimeRange() = default;
44  ~vtkTimeRange() override = default;
45 
46 private:
47  vtkTimeRange(const vtkTimeRange&) = delete;
48  void operator=(const vtkTimeRange&) = delete;
49 
50  std::size_t NumberOfTimeSteps = 0;
51  std::vector<double> TimeValues;
52 };
53 
54 VTK_ABI_NAMESPACE_END
55 
56 #endif // vtkTimeRange_h
Define a range for the vtkForEach.
a simple class to control print indentation
Definition: vtkIndent.h:108
Store zero or more vtkInformation instances.
vtkExecutionRange using time to dispatch in a vtkForEach sub-pipeline
Definition: vtkTimeRange.h:28
void PrintSelf(std::ostream &os, vtkIndent indent) override
vtkTimeRange()=default
~vtkTimeRange() override=default
static vtkTimeRange * New()
int RequestInformation(vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
std::size_t Size() override
int RequestUpdateExtent(std::size_t iteration, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override