VTK
vtkCPExodusIIElementBlockCellIterator.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCPExodusIIElementBlockCellIterator.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
21 #ifndef vtkCPExodusIIElementBlockCellIterator_h
22 #define vtkCPExodusIIElementBlockCellIterator_h
23 
24 #include "vtkCellIterator.h"
25 #include "vtkIOExodusModule.h" // For export macro
26 
27 #include "vtkSmartPointer.h" // For smart pointer
28 
30 class vtkCPExodusIIElementBlockPrivate;
31 
32 class VTKIOEXODUS_EXPORT vtkCPExodusIIElementBlockCellIterator
33  : public vtkCellIterator
34 {
35 public:
36  typedef vtkCPExodusIIElementBlockPrivate StorageType;
37 
40  void PrintSelf(ostream &os, vtkIndent indent);
41 
42  bool IsValid();
43  vtkIdType GetCellId();
44 
45 protected:
47  ~vtkCPExodusIIElementBlockCellIterator();
48 
49  void ResetToFirstCell();
50  void IncrementToNextCell();
51  void FetchCellType();
52  void FetchPointIds();
53  void FetchPoints();
54 
55  friend class ::vtkCPExodusIIElementBlock;
56  void SetStorage(vtkCPExodusIIElementBlock *eb);
57 
58 private:
59  vtkCPExodusIIElementBlockCellIterator(const vtkCPExodusIIElementBlockCellIterator &) VTK_DELETE_FUNCTION;
60  void operator=(const vtkCPExodusIIElementBlockCellIterator &) VTK_DELETE_FUNCTION;
61 
62  vtkSmartPointer<StorageType> Storage;
63  vtkSmartPointer<vtkPoints> DataSetPoints;
64  vtkIdType CellId;
65 };
66 
67 #endif //vtkCPExodusIIElementBlockCellIterator_h
Hold a reference to a vtkObjectBase instance.
int vtkIdType
Definition: vtkType.h:287
a simple class to control print indentation
Definition: vtkIndent.h:39
Uses an Exodus II element block as a vtkMappedUnstructuredGrid's implementation.
Efficient cell iterator for vtkDataSet topologies.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
represent and manipulate 3D points
Definition: vtkPoints.h:39
vtkCellIterator subclass specialized for vtkCPExodusIIElementBlock.