VTK
vtkExtractArraysOverTime.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkExtractArraysOverTime.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 =========================================================================*/
35 #ifndef __vtkExtractArraysOverTime_h
36 #define __vtkExtractArraysOverTime_h
37 
38 #include "vtkFiltersExtractionModule.h" // For export macro
40 
41 class vtkSelection;
42 class vtkDataSet;
43 class vtkTable;
44 class vtkExtractArraysOverTimeInternal;
46 
47 class VTKFILTERSEXTRACTION_EXPORT vtkExtractArraysOverTime : public vtkMultiBlockDataSetAlgorithm
48 {
49 public:
50  static vtkExtractArraysOverTime *New();
52  void PrintSelf(ostream& os, vtkIndent indent);
53 
55 
56  vtkGetMacro(NumberOfTimeSteps,int);
58 
60 
62  void SetSelectionConnection(vtkAlgorithmOutput* algOutput)
63  {
64  this->SetInputConnection(1, algOutput);
65  }
67 
68 //BTX
69 protected:
72 
73  virtual int RequestInformation(vtkInformation* request,
74  vtkInformationVector** inputVector,
75  vtkInformationVector* outputVector);
76  virtual int RequestUpdateExtent(vtkInformation* request,
77  vtkInformationVector** inputVector,
78  vtkInformationVector* outputVector);
79  virtual int RequestData(vtkInformation* request,
80  vtkInformationVector** inputVector,
81  vtkInformationVector* outputVector);
82 
83  virtual void PostExecute(vtkInformation* request,
84  vtkInformationVector** inputVector,
85  vtkInformationVector* outputVector);
86 
91  int DetermineSelectionType(vtkSelection*);
92 
94 
96 
98  bool UpdateFastPathIDs(
99  vtkInformationVector** inputV, vtkInformation* outInfo);
101 
105  void CopyFastPathDataToOutput(vtkDataSet *input, vtkTable *output);
106 
107 
108  void ExecuteAtTimeStep(vtkInformationVector** inputV,
109  vtkInformation* outInfo);
110 
113 
116 
120 
121  int Error;
122 
123  enum Errors
124  {
126  MoreThan1Indices
127  };
128 
129 private:
130  vtkExtractArraysOverTime(const vtkExtractArraysOverTime&); // Not implemented.
131  void operator=(const vtkExtractArraysOverTime&); // Not implemented.
132 
133  class vtkInternal;
134  vtkInternal *Internal;
135 
136 //ETX
137 };
138 
139 #endif
140 
141 
142