56 #ifndef __vtkGenericDataSet_h
57 #define __vtkGenericDataSet_h
59 #include "vtkDataObject.h"
62 class vtkGenericCellIterator;
63 class vtkGenericAttributeCollection;
64 class vtkGenericCellTessellator;
65 class vtkGenericPointIterator;
73 void PrintSelf(ostream& os,
vtkIndent indent);
78 virtual vtkIdType GetNumberOfPoints() = 0;
83 virtual vtkIdType GetNumberOfCells(
int dim=-1) = 0;
89 virtual int GetCellDimension() = 0;
98 virtual void GetCellTypes(vtkCellTypes *types);
108 virtual vtkGenericCellIterator *NewCellIterator(
int dim=-1) = 0;
117 virtual vtkGenericCellIterator *NewBoundaryIterator(
int dim=-1,
118 int exteriorOnly=0) = 0;
125 virtual vtkGenericPointIterator *NewPointIterator()=0;
137 virtual int FindCell(
double x[3],
138 vtkGenericCellIterator* &cell,
141 double pcoords[3]) = 0;
147 virtual void FindPoint(
double x[3],
148 vtkGenericPointIterator *p)=0;
153 virtual unsigned long int GetMTime();
156 virtual void ComputeBounds()=0;
161 virtual double *GetBounds();
165 virtual void GetBounds(
double bounds[6]);
169 virtual double *GetCenter();
172 virtual void GetCenter(
double center[3]);
176 virtual double GetLength();
180 vtkGetObjectMacro(Attributes, vtkGenericAttributeCollection);
193 {
return this->Superclass::GetAttributes(type); }
199 virtual void SetTessellator(vtkGenericCellTessellator *tessellator);
200 vtkGetObjectMacro(Tessellator,vtkGenericCellTessellator);
206 virtual unsigned long GetActualMemorySize();
209 int GetDataObjectType();
212 virtual vtkIdType GetEstimatedSize() = 0;
record modification and/or execution time
a simple class to control print indentation
represent and manipulate attribute data in a dataset
virtual vtkDataSetAttributes * GetAttributes(int type)
defines dataset interface
helper class to get VTK data object types as string and instantiate them
vtkGenericCellTessellator * Tessellator
vtkGenericAttributeCollection * Attributes