VTK
vtkTemporalStatistics.h
Go to the documentation of this file.
1// -*- c++ -*-
2/*=========================================================================
3
4 Program: Visualization Toolkit
5 Module: vtkTemporalStatistics.h
6
7 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
8 All rights reserved.
9 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
10
11 This software is distributed WITHOUT ANY WARRANTY; without even
12 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
13 PURPOSE. See the above copyright notice for more information.
14
15=========================================================================*/
16
17/*
18 * Copyright 2008 Sandia Corporation.
19 * Under the terms of Contract DE-AC04-94AL85000, there is a non-exclusive
20 * license for use of this work by or on behalf of the
21 * U.S. Government. Redistribution and use in source and binary forms, with
22 * or without modification, are permitted provided that this Notice and any
23 * statement of authorship are reproduced on all copies.
24 */
25
55#ifndef vtkTemporalStatistics_h
56#define vtkTemporalStatistics_h
57
58#include "vtkFiltersGeneralModule.h" // For export macro
60
62class vtkDataSet;
63class vtkFieldData;
64class vtkGraph;
65
66class VTKFILTERSGENERAL_EXPORT vtkTemporalStatistics : public vtkPassInputTypeAlgorithm
67{
68public:
71 void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE;
72
74
78 vtkGetMacro(ComputeAverage, int);
79 vtkSetMacro(ComputeAverage, int);
80 vtkBooleanMacro(ComputeAverage, int);
82
84
88 vtkGetMacro(ComputeMinimum, int);
89 vtkSetMacro(ComputeMinimum, int);
90 vtkBooleanMacro(ComputeMinimum, int);
92
94
98 vtkGetMacro(ComputeMaximum, int);
99 vtkSetMacro(ComputeMaximum, int);
100 vtkBooleanMacro(ComputeMaximum, int);
102
103 // Definition:
104 // Turn on/off the computation of the standard deviation of the values over
105 // time. On by default. The resulting array names have "_stddev" appended to
106 // them.
107 vtkGetMacro(ComputeStandardDeviation, int);
108 vtkSetMacro(ComputeStandardDeviation, int);
109 vtkBooleanMacro(ComputeStandardDeviation, int);
110
111protected:
114
115 int ComputeAverage;
116 int ComputeMaximum;
117 int ComputeMinimum;
118 int ComputeStandardDeviation;
119
120 // Used when iterating the pipeline to keep track of which timestep we are on.
121 int CurrentTimeIndex;
122
123 int FillInputPortInformation(int port, vtkInformation *info) VTK_OVERRIDE;
124
125 int RequestDataObject(vtkInformation *request,
126 vtkInformationVector **inputVector,
127 vtkInformationVector *outputVector) VTK_OVERRIDE;
128 int RequestInformation(vtkInformation *request,
129 vtkInformationVector **inputVector,
130 vtkInformationVector *outputVector) VTK_OVERRIDE;
131 int RequestUpdateExtent(vtkInformation *request,
132 vtkInformationVector **inputVector,
133 vtkInformationVector *outputVector) VTK_OVERRIDE;
134 int RequestData(vtkInformation *request,
135 vtkInformationVector **inputVector,
136 vtkInformationVector *outputVector) VTK_OVERRIDE;
137
138 virtual void InitializeStatistics(vtkDataObject *input,
139 vtkDataObject *output);
140 virtual void InitializeStatistics(vtkDataSet *input, vtkDataSet *output);
141 virtual void InitializeStatistics(vtkGraph *input, vtkGraph *output);
142 virtual void InitializeStatistics(vtkCompositeDataSet *input,
143 vtkCompositeDataSet *output);
144 virtual void InitializeArrays(vtkFieldData *inFd, vtkFieldData *outFd);
145 virtual void InitializeArray(vtkDataArray *array, vtkFieldData *outFd);
146
147 virtual void AccumulateStatistics(vtkDataObject *input,
148 vtkDataObject *output);
149 virtual void AccumulateStatistics(vtkDataSet *input, vtkDataSet *output);
150 virtual void AccumulateStatistics(vtkGraph *input, vtkGraph *output);
151 virtual void AccumulateStatistics(vtkCompositeDataSet *input,
152 vtkCompositeDataSet *output);
153 virtual void AccumulateArrays(vtkFieldData *inFd, vtkFieldData *outFd);
154
155 virtual void PostExecute(vtkDataObject *input, vtkDataObject *output);
156 virtual void PostExecute(vtkDataSet *input, vtkDataSet *output);
157 virtual void PostExecute(vtkGraph *input, vtkGraph *output);
158 virtual void PostExecute(vtkCompositeDataSet *input,
159 vtkCompositeDataSet *output);
160 virtual void FinishArrays(vtkFieldData *inFd, vtkFieldData *outFd);
161
162 virtual vtkDataArray *GetArray(vtkFieldData *fieldData,
163 vtkDataArray *inArray,
164 const char *nameSuffix);
165
166private:
167 vtkTemporalStatistics(const vtkTemporalStatistics &) VTK_DELETE_FUNCTION;
168 void operator=(const vtkTemporalStatistics &) VTK_DELETE_FUNCTION;
169
171
176 bool GeneratedChangingTopologyWarning;
177};
179
180#endif //_vtkTemporalStatistics_h
abstract superclass for composite (multi-block or AMR) datasets
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:55
general representation of visualization data
Definition: vtkDataObject.h:65
abstract class to specify dataset behavior
Definition: vtkDataSet.h:63
represent and manipulate fields of data
Definition: vtkFieldData.h:57
Base class for graph data types.
Definition: vtkGraph.h:288
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce output of the same type as input.
Compute statistics of point or cell data as it changes over time.
~vtkTemporalStatistics() override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkTemporalStatistics * New()
@ info
Definition: vtkX3D.h:376
@ port
Definition: vtkX3D.h:447
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.