00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkGenericCellIterator.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 =========================================================================*/ 00035 #ifndef __vtkGenericCellIterator_h 00036 #define __vtkGenericCellIterator_h 00037 00038 #include "vtkObject.h" 00039 00040 class vtkGenericAdaptorCell; 00041 00042 class VTK_FILTERING_EXPORT vtkGenericCellIterator : public vtkObject 00043 { 00044 public: 00046 00047 vtkTypeRevisionMacro(vtkGenericCellIterator,vtkObject); 00048 void PrintSelf(ostream& os, vtkIndent indent); 00050 00052 virtual void Begin() = 0; 00053 00055 virtual int IsAtEnd() = 0; 00056 00059 virtual vtkGenericAdaptorCell *NewCell() = 0; 00060 00064 virtual void GetCell(vtkGenericAdaptorCell *c) = 0; 00065 00068 virtual vtkGenericAdaptorCell *GetCell() = 0; 00069 00072 virtual void Next() = 0; 00073 00074 protected: 00075 vtkGenericCellIterator(); 00076 virtual ~vtkGenericCellIterator(); 00077 00078 private: 00079 vtkGenericCellIterator(const vtkGenericCellIterator&); // Not implemented. 00080 void operator=(const vtkGenericCellIterator&); // Not implemented. 00081 }; 00082 00083 #endif