131#ifndef vtkMappedUnstructuredGrid_h
132#define vtkMappedUnstructuredGrid_h
140VTK_ABI_NAMESPACE_BEGIN
141template <
class Implementation,
196#include "vtkMappedUnstructuredGrid.txx"
202#define vtkMakeExportedMappedUnstructuredGrid(_className, _impl, _exportDecl) \
203 class _exportDecl _className : public vtkMappedUnstructuredGrid<_impl> \
206 vtkTypeMacro(_className, vtkMappedUnstructuredGrid<_impl>); \
207 static _className* New(); \
212 _impl* i = _impl::New(); \
213 this->SetImplementation(i); \
216 ~_className() override {} \
219 _className(const _className&); \
220 void operator=(const _className&); \
223#define vtkMakeExportedMappedUnstructuredGridWithIter(_className, _impl, _cIter, _exportDecl) \
224 class _exportDecl _className : public vtkMappedUnstructuredGrid<_impl, _cIter> \
227 typedef vtkMappedUnstructuredGrid<_impl, _cIter> SelfType; \
228 vtkTypeMacro(_className, SelfType); \
229 static _className* New(); \
234 _impl* i = _impl::New(); \
235 this->SetImplementation(i); \
238 ~_className() override {} \
241 _className(const _className&); \
242 void operator=(const _className&); \
247#define vtkMakeExportedMappedUnstructuredGrid(_className, _impl, _exportDecl) \
248 class _exportDecl _className : public vtkUnstructuredGridBase \
251 vtkTypeMacro(_className, vtkUnstructuredGridBase); \
252 static _className* New(); \
256 ~_className() override {} \
259 _className(const _className&); \
260 void operator=(const _className&); \
263#define vtkMakeExportedMappedUnstructuredGridWithIter(_className, _impl, _cIter, _exportDecl) \
264 class _exportDecl _className : public vtkUnstructuredGridBase \
267 vtkTypeMacro(_className, vtkUnstructuredGridBase); \
268 static _className* New(); \
272 ~_className() override {} \
275 _className(const _className&); \
276 void operator=(const _className&); \
281#define vtkMakeMappedUnstructuredGrid(_className, _impl) \
282 vtkMakeExportedMappedUnstructuredGrid(_className, _impl, )
284#define vtkMakeMappedUnstructuredGridWithIter(_className, _impl, _cIter) \
285 vtkMakeExportedMappedUnstructuredGridWithIter(_className, _impl, _cIter, )
object to represent cell connectivity
Efficient cell iterator for vtkDataSet topologies.
abstract class to specify cell behavior
general representation of visualization data
abstract class to specify dataset behavior
virtual vtkCell * GetCell(vtkIdType cellId)=0
Get cell with cellId such that: 0 <= cellId < NumberOfCells.
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.
void ShallowCopy(vtkDataObject *src) override
Shallow and Deep copy.
ImplementationType * GetImplementation()
Implementation ImplementationType
void SetImplementation(ImplementationType *impl)
void GetCellPoints(vtkIdType cellId, vtkIdList *ptIds) override
Topological inquiry to get points defining cell.
vtkIdType InternalInsertNextCell(int type, vtkIdType npts, const vtkIdType ptIds[]) override
vtkIdType InternalInsertNextCell(int type, vtkIdList *ptIds) override
int GetMaxCellSize() override
Convenience method returns largest cell size in dataset.
void GetPointCells(vtkIdType ptId, vtkIdList *cellIds) override
Topological inquiry to get cells using point.
vtkCellIterator * NewCellIterator() override
Return an iterator that traverses the cells in this data set.
vtkSmartPointer< ImplementationType > Impl
vtkMappedUnstructuredGrid()
void CopyStructure(vtkDataSet *pd) override
Copy the geometric and topological structure of an object.
void InternalReplaceCell(vtkIdType cellId, int npts, const vtkIdType pts[]) override
int IsHomogeneous() override
Traverse cells and determine if cells are all of the same type.
vtkIdType GetNumberOfCells() override
Determine the number of cells composing the dataset.
void GetIdsOfCellsOfType(int type, vtkIdTypeArray *array) override
Fill vtkIdTypeArray container with list of cell Ids.
vtkMappedUnstructuredGrid< Implementation, CellIterator > ThisType
vtkTemplateTypeMacro(SelfType, vtkUnstructuredGridBase)
vtkIdType InternalInsertNextCell(int type, vtkIdType npts, const vtkIdType ptIds[], vtkCellArray *faces) override
~vtkMappedUnstructuredGrid() override
void Allocate(vtkIdType numCells, int extSize=1000) override
Allocate memory for the number of cells indicated.
void GetCell(vtkIdType cellId, vtkGenericCell *cell) override
Get cell with cellId such that: 0 <= cellId < NumberOfCells.
CellIterator CellIteratorType
vtkCell * GetCell(vtkIdType cellId) override
Get cell with cellId such that: 0 <= cellId < NumberOfCells.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int GetCellType(vtkIdType cellId) override
Get type of cell with cellId such that: 0 <= cellId < NumberOfCells.
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.
vtkTypeUInt32 vtkMTimeType