VTK  9.7.1
vtkTemporalStatistics.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-FileCopyrightText: Copyright 2008 Sandia Corporation
3 // SPDX-License-Identifier: LicenseRef-BSD-3-Clause-Sandia-NVIDIA-USGov
4 
41 #ifndef vtkTemporalStatistics_h
42 #define vtkTemporalStatistics_h
43 
44 #include "vtkFiltersGeneralModule.h" // For export macro
46 #include "vtkTemporalAlgorithm.h" // For temporal algorithm
47 
48 #ifndef __VTK_WRAP__
49 #define vtkPassInputTypeAlgorithm vtkTemporalAlgorithm<vtkPassInputTypeAlgorithm>
50 #endif
51 
52 VTK_ABI_NAMESPACE_BEGIN
54 class vtkDataSet;
55 class vtkFieldData;
56 class vtkGraph;
57 struct vtkTemporalStatisticsInternal;
58 
59 class VTKFILTERSGENERAL_EXPORT vtkTemporalStatistics : public vtkPassInputTypeAlgorithm
60 {
61 public:
63 
67 #ifndef __VTK_WRAP__
68 #undef vtkPassInputTypeAlgorithm
69 #endif
70  static vtkTemporalStatistics* New();
71  void PrintSelf(ostream& os, vtkIndent indent) override;
73 
74 #if defined(__VTK_WRAP__) || defined(__WRAP_GCCXML)
76 #endif
77 
79 
83  vtkGetMacro(ComputeAverage, vtkTypeBool);
84  vtkSetMacro(ComputeAverage, vtkTypeBool);
85  vtkBooleanMacro(ComputeAverage, vtkTypeBool);
87 
89 
93  vtkGetMacro(ComputeMinimum, vtkTypeBool);
94  vtkSetMacro(ComputeMinimum, vtkTypeBool);
95  vtkBooleanMacro(ComputeMinimum, vtkTypeBool);
97 
99 
103  vtkGetMacro(ComputeMaximum, vtkTypeBool);
104  vtkSetMacro(ComputeMaximum, vtkTypeBool);
105  vtkBooleanMacro(ComputeMaximum, vtkTypeBool);
107 
109 
114  vtkGetMacro(ComputeStandardDeviation, vtkTypeBool);
115  vtkSetMacro(ComputeStandardDeviation, vtkTypeBool);
116  vtkBooleanMacro(ComputeStandardDeviation, vtkTypeBool);
118 
119 protected:
121  ~vtkTemporalStatistics() override;
122 
127 
128  int FillInputPortInformation(int port, vtkInformation* info) override;
129 
130  int RequestDataObject(vtkInformation* request, vtkInformationVector** inputVector,
131  vtkInformationVector* outputVector) override;
132 
133  int Initialize(vtkInformation* request, vtkInformationVector** inputVector,
134  vtkInformationVector* outputVector) override;
135  int Execute(vtkInformation* request, vtkInformationVector** inputVector,
136  vtkInformationVector* outputVector) override;
137  int Finalize(vtkInformation* request, vtkInformationVector** inputVector,
138  vtkInformationVector* outputVector) override;
139 
140  virtual void InitializeStatistics(
141  vtkDataObject* input, vtkDataObject* output, vtkDataObject* cache);
142  virtual void InitializeStatistics(vtkDataSet* input, vtkDataSet* output, vtkDataSet* cache);
143  virtual void InitializeStatistics(vtkGraph* input, vtkGraph* output, vtkGraph* cache);
144  virtual void InitializeStatistics(
146  virtual void InitializeArrays(vtkFieldData* inFd, vtkFieldData* outFd);
147  virtual void InitializeArray(vtkDataArray* array, vtkFieldData* outFd);
148 
149  virtual void AccumulateStatistics(
150  vtkDataObject* input, vtkDataObject* output, int currentTimeIndex);
151  virtual void AccumulateStatistics(vtkDataSet* input, vtkDataSet* output, int currentTimeIndex);
152  virtual void AccumulateStatistics(vtkGraph* input, vtkGraph* output, int currentTimeIndex);
153  virtual void AccumulateStatistics(
154  vtkCompositeDataSet* input, vtkCompositeDataSet* output, int currentTimeIndex);
155  virtual void AccumulateArrays(vtkFieldData* inFd, vtkFieldData* outFd, int currentTimeIndex);
156 
157  virtual void PostExecute(vtkDataObject* input, vtkDataObject* output, int numSteps);
158  virtual void PostExecute(vtkDataSet* input, vtkDataSet* output, int numSteps);
159  virtual void PostExecute(vtkGraph* input, vtkGraph* output, int numSteps);
160  virtual void PostExecute(vtkCompositeDataSet* input, vtkCompositeDataSet* output, int numSteps);
161  virtual void FinishArrays(vtkFieldData* inFd, vtkFieldData* outFd, int numSteps);
162 
163  virtual vtkDataArray* GetArray(
164  vtkFieldData* fieldData, vtkDataArray* inArray, const char* nameSuffix);
165 
166 private:
168  void operator=(const vtkTemporalStatistics&) = delete;
169 
170  vtkTemporalStatisticsInternal* Internal;
171 
173 
178  bool GeneratedChangingTopologyWarning;
180 };
181 
182 VTK_ABI_NAMESPACE_END
183 #endif //_vtkTemporalStatistics_h
#define vtkCreateWrappedTemporalAlgorithmInterface()
Superclass for algorithms that produce output of the same type as input.
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:56
int vtkTypeBool
Definition: vtkABI.h:64
Base class for graph data types.
Definition: vtkGraph.h:282
abstract superclass for composite (multi-block or AMR) datasets
a simple class to control print indentation
Definition: vtkIndent.h:28
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:44
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
virtual int RequestDataObject(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called within ProcessRequest when a request asks the algorithm to create empty output data ob...
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.
Compute statistics of point or cell data as it changes over time.
general representation of visualization data
Definition: vtkDataObject.h:55
static vtkPassInputTypeAlgorithm * New()
Represents and manipulates a collection of data arrays.
Definition: vtkFieldData.h:51