Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkCompositeDataIterator.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkCompositeDataIterator.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 =========================================================================*/
00039 #ifndef __vtkCompositeDataIterator_h
00040 #define __vtkCompositeDataIterator_h
00041 
00042 #include "vtkObject.h"
00043 
00044 class vtkDataObject;
00045 
00046 class VTK_FILTERING_EXPORT vtkCompositeDataIterator : public vtkObject
00047 {
00048 public:
00049   vtkTypeRevisionMacro(vtkCompositeDataIterator,vtkObject);
00050   void PrintSelf(ostream& os, vtkIndent indent);
00051 
00053   void InitTraversal() { this->GoToFirstItem(); }
00054 
00056   virtual void GoToFirstItem() = 0;
00057 
00059   virtual void GoToNextItem() = 0;
00060 
00063   virtual int IsDoneWithTraversal() = 0;
00064 
00067   virtual vtkDataObject* GetCurrentDataObject() = 0;
00068 
00069 protected:
00070   vtkCompositeDataIterator(); 
00071   virtual ~vtkCompositeDataIterator(); 
00072 
00073 private:
00074   vtkCompositeDataIterator(const vtkCompositeDataIterator&);  // Not implemented.
00075   void operator=(const vtkCompositeDataIterator&);  // Not implemented.
00076 };
00077 
00078 #endif
00079