VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkExtractArraysOverTime.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00035 #ifndef vtkExtractArraysOverTime_h 00036 #define vtkExtractArraysOverTime_h 00037 00038 #include "vtkFiltersExtractionModule.h" // For export macro 00039 #include "vtkMultiBlockDataSetAlgorithm.h" 00040 00041 class vtkSelection; 00042 class vtkDataSet; 00043 class vtkTable; 00044 class vtkExtractSelection; 00045 class vtkDataSetAttributes; 00046 00047 class VTKFILTERSEXTRACTION_EXPORT vtkExtractArraysOverTime : public vtkMultiBlockDataSetAlgorithm 00048 { 00049 public: 00050 static vtkExtractArraysOverTime *New(); 00051 vtkTypeMacro(vtkExtractArraysOverTime, vtkMultiBlockDataSetAlgorithm); 00052 void PrintSelf(ostream& os, vtkIndent indent); 00053 00055 00056 vtkGetMacro(NumberOfTimeSteps,int); 00058 00060 00062 void SetSelectionConnection(vtkAlgorithmOutput* algOutput) 00063 { 00064 this->SetInputConnection(1, algOutput); 00065 } 00067 00069 00074 virtual void SetSelectionExtractor(vtkExtractSelection*); 00075 vtkGetObjectMacro(SelectionExtractor,vtkExtractSelection); 00077 00079 00085 vtkSetMacro(ReportStatisticsOnly,int); 00086 vtkGetMacro(ReportStatisticsOnly,int); 00087 vtkBooleanMacro(ReportStatisticsOnly,int); 00089 00090 //BTX 00091 protected: 00092 vtkExtractArraysOverTime(); 00093 ~vtkExtractArraysOverTime(); 00094 00095 virtual int RequestInformation(vtkInformation* request, 00096 vtkInformationVector** inputVector, 00097 vtkInformationVector* outputVector); 00098 virtual int RequestUpdateExtent(vtkInformation* request, 00099 vtkInformationVector** inputVector, 00100 vtkInformationVector* outputVector); 00101 virtual int RequestData(vtkInformation* request, 00102 vtkInformationVector** inputVector, 00103 vtkInformationVector* outputVector); 00104 00105 virtual void PostExecute(vtkInformation* request, 00106 vtkInformationVector** inputVector, 00107 vtkInformationVector* outputVector); 00108 00113 int DetermineSelectionType(vtkSelection*); 00114 00115 virtual int FillInputPortInformation(int port, vtkInformation* info); 00116 00117 void ExecuteAtTimeStep(vtkInformationVector** inputV, 00118 vtkInformation* outInfo); 00119 00120 int CurrentTimeIndex; 00121 int NumberOfTimeSteps; 00122 00123 int FieldType; 00124 int ContentType; 00125 00126 bool IsExecuting; 00127 00128 int ReportStatisticsOnly; 00129 00130 int Error; 00131 00132 enum Errors 00133 { 00134 NoError, 00135 MoreThan1Indices 00136 }; 00137 00138 vtkExtractSelection* SelectionExtractor; 00139 00140 private: 00141 vtkExtractArraysOverTime(const vtkExtractArraysOverTime&); // Not implemented. 00142 void operator=(const vtkExtractArraysOverTime&); // Not implemented. 00143 00144 class vtkInternal; 00145 vtkInternal *Internal; 00146 00147 //ETX 00148 }; 00149 00150 #endif