VTK  9.3.20240329
vtkGenericCellIterator.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
24 #ifndef vtkGenericCellIterator_h
25 #define vtkGenericCellIterator_h
26 
27 #include "vtkCommonDataModelModule.h" // For export macro
28 #include "vtkObject.h"
29 
30 VTK_ABI_NAMESPACE_BEGIN
32 
33 class VTKCOMMONDATAMODEL_EXPORT vtkGenericCellIterator : public vtkObject
34 {
35 public:
37 
41  void PrintSelf(ostream& os, vtkIndent indent) override;
43 
47  virtual void Begin() = 0;
48 
52  virtual vtkTypeBool IsAtEnd() = 0;
53 
59 
67  virtual void GetCell(vtkGenericAdaptorCell* c) = 0;
68 
76 
81  virtual void Next() = 0;
82 
83 protected:
86 
87 private:
89  void operator=(const vtkGenericCellIterator&) = delete;
90 };
91 
92 VTK_ABI_NAMESPACE_END
93 #endif
defines cell interface
iterator used to traverse cells
virtual void Next()=0
Move the iterator to the next position in the list.
virtual vtkTypeBool IsAtEnd()=0
Is the iterator at the end of traversal?
virtual void Begin()=0
Move iterator to first position if any (loop initialization).
virtual vtkGenericAdaptorCell * NewCell()=0
Create an empty cell.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard VTK construction and type macros.
virtual vtkGenericAdaptorCell * GetCell()=0
Get the cell at the current traversal position.
~vtkGenericCellIterator() override
virtual void GetCell(vtkGenericAdaptorCell *c)=0
Get the cell at current position.
a simple class to control print indentation
Definition: vtkIndent.h:108
abstract base class for most VTK objects
Definition: vtkObject.h:162
int vtkTypeBool
Definition: vtkABI.h:64