00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkTemporalDataSet.h,v $ 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 =========================================================================*/ 00024 #ifndef __vtkTemporalDataSet_h 00025 #define __vtkTemporalDataSet_h 00026 00027 #include "vtkCompositeDataSet.h" 00028 00029 class vtkDataObject; 00030 00031 class VTK_FILTERING_EXPORT vtkTemporalDataSet : public vtkCompositeDataSet 00032 { 00033 public: 00034 static vtkTemporalDataSet *New(); 00035 00036 vtkTypeRevisionMacro(vtkTemporalDataSet,vtkCompositeDataSet); 00037 virtual void PrintSelf(ostream& os, vtkIndent indent); 00038 00040 virtual int GetDataObjectType() {return VTK_TEMPORAL_DATA_SET;} 00041 00043 00044 void SetNumberOfTimeSteps(unsigned int numLevels) 00045 { 00046 this->SetNumberOfChildren(numLevels); 00047 } 00049 00051 00052 unsigned int GetNumberOfTimeSteps() 00053 { 00054 return this->GetNumberOfChildren(); 00055 } 00057 00059 void SetTimeStep(unsigned int timestep, vtkDataObject* dobj); 00060 00062 00063 vtkDataObject* GetTimeStep(unsigned int timestep) 00064 { return this->GetChild(timestep); } 00066 00068 00069 vtkInformation* GetMetaData(unsigned int timestep) 00070 { return this->Superclass::GetChildMetaData(timestep); } 00072 00074 00075 int HasMetaData(unsigned int timestep) 00076 { return this->Superclass::HasChildMetaData(timestep); } 00078 00079 //BTX 00081 00082 static vtkTemporalDataSet* GetData(vtkInformation* info); 00083 static vtkTemporalDataSet* GetData(vtkInformationVector* v, int i=0); 00084 //ETX 00086 00088 virtual int GetExtentType() { return VTK_TIME_EXTENT; }; 00089 00091 00092 virtual vtkInformation* GetMetaData(vtkCompositeDataIterator* iter) 00093 { return this->Superclass::GetMetaData(iter); } 00095 00096 00098 00099 virtual int HasMetaData(vtkCompositeDataIterator* iter) 00100 { return this->Superclass::HasMetaData(iter); } 00102 00103 protected: 00104 vtkTemporalDataSet(); 00105 ~vtkTemporalDataSet(); 00106 00107 private: 00108 vtkTemporalDataSet(const vtkTemporalDataSet&); // Not implemented. 00109 void operator=(const vtkTemporalDataSet&); // Not implemented. 00110 }; 00111 00112 #endif 00113