139#ifndef vtkMappedUnstructuredGrid_h
140#define vtkMappedUnstructuredGrid_h
148template <
class Implementation,
156 typedef Implementation ImplementationType;
200#include "vtkMappedUnstructuredGrid.txx"
206#define vtkMakeExportedMappedUnstructuredGrid(_className, _impl, _exportDecl) \
207class _exportDecl _className : \
208 public vtkMappedUnstructuredGrid<_impl> \
211 vtkTypeMacro(_className, \
212 vtkMappedUnstructuredGrid<_impl>) \
213 static _className* New(); \
217 _impl *i = _impl::New(); \
218 this->SetImplementation(i); \
223 _className(const _className&); \
224 void operator=(const _className&); \
227#define vtkMakeExportedMappedUnstructuredGridWithIter(_className, _impl, _cIter, _exportDecl) \
228class _exportDecl _className : \
229 public vtkMappedUnstructuredGrid<_impl, _cIter> \
232 vtkTypeMacro(_className, \
233 vtkMappedUnstructuredGrid<_impl, _cIter>) \
234 static _className* New(); \
238 _impl *i = _impl::New(); \
239 this->SetImplementation(i); \
244 _className(const _className&); \
245 void operator=(const _className&); \
250#define vtkMakeExportedMappedUnstructuredGrid(_className, _impl, _exportDecl) \
251 class _exportDecl _className : \
252 public vtkUnstructuredGridBase \
255 vtkTypeMacro(_className, vtkUnstructuredGridBase) \
256 static _className* New(); \
261 _className(const _className&); \
262 void operator=(const _className&); \
265#define vtkMakeExportedMappedUnstructuredGridWithIter(_className, _impl, _cIter, _exportDecl) \
266 class _exportDecl _className : \
267 public vtkUnstructuredGridBase \
270 vtkTypeMacro(_className, vtkUnstructuredGridBase) \
271 static _className* New(); \
276 _className(const _className&); \
277 void operator=(const _className&); \
282#define vtkMakeMappedUnstructuredGrid(_className, _impl) \
283 vtkMakeExportedMappedUnstructuredGrid(_className, _impl, )
285#define vtkMakeMappedUnstructuredGridWithIter(_className, _impl, _cIter, _exportDecl) \
286 vtkMakeExportedMappedUnstructuredGridWithIter(_className, _impl, _cIter, )
Efficient cell iterator for vtkDataSet topologies.
abstract class to specify cell behavior
general representation of visualization data
abstract class to specify dataset behavior
provides thread-safe access to cells
list of point or cell ids
dynamic, self-adjusting array of vtkIdType
a simple class to control print indentation
Default cell iterator for vtkMappedUnstructuredGrid.
Allows datasets with arbitrary storage layouts to be used with VTK.
vtkIdType InsertNextCell(int type, vtkIdType npts, vtkIdType *ptIds, vtkIdType nfaces, vtkIdType *faces)
ImplementationType * GetImplementation()
void ReplaceCell(vtkIdType cellId, int npts, vtkIdType *pts)
Replace the points defining cell "cellId" with a new set of points.
void ShallowCopy(vtkDataObject *src)
Shallow and Deep copy.
void GetCell(vtkIdType cellId, vtkGenericCell *cell)
Get cell with cellId such that: 0 <= cellId < NumberOfCells.
void SetImplementation(ImplementationType *impl)
int IsHomogeneous()
Traverse cells and determine if cells are all of the same type.
vtkTemplateTypeMacro(SelfType, vtkUnstructuredGridBase) typedef Implementation ImplementationType
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
void Allocate(vtkIdType numCells, int extSize=1000)
Allocate memory for the number of cells indicated.
vtkSmartPointer< ImplementationType > Impl
vtkIdType InsertNextCell(int type, vtkIdList *ptIds)
Insert/create cell in object by a list of point ids defining cell topology.
vtkCellIterator * NewCellIterator()
Return an iterator that traverses the cells in this data set.
void GetCellPoints(vtkIdType cellId, vtkIdList *ptIds)
Topological inquiry to get points defining cell.
void GetPointCells(vtkIdType ptId, vtkIdList *cellIds)
Topological inquiry to get cells using point.
vtkIdType GetNumberOfCells()
Determine the number of cells composing the dataset.
vtkIdType InsertNextCell(int type, vtkIdType npts, vtkIdType *ptIds)
Insert/create cell in object by type and list of point ids defining cell topology.
int GetMaxCellSize()
Convenience method returns largest cell size in dataset.
void CopyStructure(vtkDataSet *pd)
Copy the geometric and topological structure of an object.
vtkCell * GetCell(vtkIdType cellId)
Get cell with cellId such that: 0 <= cellId < NumberOfCells.
void GetIdsOfCellsOfType(int type, vtkIdTypeArray *array)
Fill vtkIdTypeArray container with list of cell Ids.
int GetCellType(vtkIdType cellId)
Get type of cell with cellId such that: 0 <= cellId < NumberOfCells.
CellIterator CellIteratorType
vtkMTimeType GetMTime() override
Datasets are composite objects and need to check each part for MTime THIS METHOD IS THREAD SAFE.
Allocate and hold a VTK object.
Hold a reference to a vtkObjectBase instance.
dataset represents arbitrary combinations of all possible cell types.
vtkTypeUInt64 vtkMTimeType