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();
44 
45 protected:
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:
60  void operator=(const vtkCPExodusIIElementBlockCellIterator &) = delete;
61 
63  vtkSmartPointer<vtkPoints> DataSetPoints;
64  vtkIdType CellId;
65 };
66 
67 #endif //vtkCPExodusIIElementBlockCellIterator_h
vtkCPExodusIIElementBlockCellIterator
vtkCellIterator subclass specialized for vtkCPExodusIIElementBlock.
Definition: vtkCPExodusIIElementBlockCellIterator.h:32
vtkIdType
int vtkIdType
Definition: vtkType.h:347
vtkObject::New
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
vtkCPExodusIIElementBlock
Uses an Exodus II element block as a vtkMappedUnstructuredGrid's implementation.
vtkCellIterator::FetchPointIds
virtual void FetchPointIds()=0
Lookup the cell point ids in the data set and store them in this->PointIds.
vtkSmartPointer< StorageType >
vtkCellIterator::FetchCellType
virtual void FetchCellType()=0
Lookup the cell type in the data set and store it in this->CellType.
vtkCellIterator::ResetToFirstCell
virtual void ResetToFirstCell()=0
Update internal state to point to the first cell.
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkSmartPointer.h
vtkCellIterator.h
vtkCPExodusIIElementBlockCellIterator::StorageType
vtkCPExodusIIElementBlockPrivate StorageType
Definition: vtkCPExodusIIElementBlockCellIterator.h:36
vtkCellIterator::IncrementToNextCell
virtual void IncrementToNextCell()=0
Update internal state to point to the next cell.
vtkCellIterator::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkCellIterator::GetCellId
virtual vtkIdType GetCellId()=0
Get the id of the current cell.
vtkCellIterator
Efficient cell iterator for vtkDataSet topologies.
Definition: vtkCellIterator.h:80
vtkCellIterator::FetchPoints
virtual void FetchPoints()=0
Lookup the cell points in the data set and store them in this->Points.