35 #ifndef vtkCellLinks_h
36 #define vtkCellLinks_h
38 #include "vtkCommonDataModelModule.h"
156 unsigned long GetActualMemorySize();
171 void IncrementLinkCount(
vtkIdType ptId) { this->Array[ptId].ncells++;};
178 void InsertCellReference(
vtkIdType ptId,
unsigned short pos,
189 void operator=(const
vtkCellLinks&) VTK_DELETE_FUNCTION;
197 this->Array[ptId].
cells[pos] = cellId;
203 this->Array[ptId].
ncells = 0;
204 delete [] this->Array[ptId].
cells;
205 this->Array[ptId].
cells = NULL;
212 this->Array[ptId].
cells[this->Array[ptId].
ncells++] = cellId;
219 int ncells=this->Array[ptId].
ncells;
221 for (
int i=0; i < ncells; i++)
223 if (cells[i] == cellId)
225 for (
int j=i; j < (ncells-1); j++)
227 cells[j] = cells[j+1];
229 this->Array[ptId].
ncells--;
238 this->Array[ptId].
cells[this->Array[ptId].
ncells++] = cellId;
249 memcpy(cells, this->Array[ptId].cells,
250 this->Array[ptId].ncells*
sizeof(
vtkIdType));
251 delete [] this->Array[ptId].
cells;
252 this->Array[ptId].
cells = cells;
void ResizeCellList(vtkIdType ptId, int size)
Change the length of a point's link list (i.e., list of cells using a point) by the size specified...
void AddCellReference(vtkIdType cellId, vtkIdType ptId)
Add the reference to the cell (cellId) from the point (ptId).
object represents upward pointers from points to list of cells using each point
abstract class to specify dataset behavior
void InsertNextCellReference(vtkIdType ptId, vtkIdType cellId)
Insert a cell id into the list of cells (at the end) using the cell id provided.
an abstract base class for classes that build topological links from points to cells ...
void DeepCopy(vtkPistonReference *self, vtkPistonReference *other)
unsigned short GetNcells(vtkIdType ptId)
Get the number of cells using the point specified by ptId.
vtkIdType * GetCells(vtkIdType ptId)
Return a list of cell ids using the point.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard type and print methods.
virtual void BuildLinks(vtkDataSet *data)=0
Build the link list array.
a simple class to control print indentation
Link & GetLink(vtkIdType ptId)
Get a link structure given a point id.
object to represent cell connectivity
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
void DeletePoint(vtkIdType ptId)
Delete point (and storage) by destroying links to using cells.
void RemoveCellReference(vtkIdType cellId, vtkIdType ptId)
Delete the reference to the cell (cellId) from the point (ptId).