38#include "vtkCommonDataModelModule.h"
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;
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];
249 memcpy(cells, this->
Array[ptId].cells,
an abstract base class for classes that build topological links from points to cells
object to represent cell connectivity
object represents upward pointers from points to list of cells using each point
void InsertCellReference(vtkIdType ptId, unsigned short pos, vtkIdType cellId)
Insert a cell id into the list of cells using the point.
void BuildLinks(vtkDataSet *data) override
Build the link list array.
void InsertNextCellReference(vtkIdType ptId, vtkIdType cellId)
Insert a cell id into the list of cells (at the end) using the cell id provided.
void DeepCopy(vtkCellLinks *src)
Standard DeepCopy method.
void RemoveCellReference(vtkIdType cellId, vtkIdType ptId)
Delete the reference to the cell (cellId) from the point (ptId).
void Allocate(vtkIdType numLinks, vtkIdType ext=1000)
Allocate the specified number of links (i.e., number of points) that will be built.
void AllocateLinks(vtkIdType n)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void AddCellReference(vtkIdType cellId, vtkIdType ptId)
Add the reference to the cell (cellId) from the point (ptId).
void Initialize()
Clear out any previously allocated data structures.
Link & GetLink(vtkIdType ptId)
Get a link structure given a point id.
vtkIdType * GetCells(vtkIdType ptId)
Return a list of cell ids using the point.
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 Squeeze()
Reclaim any unused memory.
unsigned short GetNcells(vtkIdType ptId)
Get the number of cells using the point specified by ptId.
unsigned long GetActualMemorySize()
Return the memory in kibibytes (1024 bytes) consumed by this cell links array.
vtkIdType InsertNextPoint(int numLinks)
Insert a new point into the cell-links data structure.
static vtkCellLinks * New()
Standard methods to instantiate, print, and obtain type information.
void BuildLinks(vtkDataSet *data, vtkCellArray *Connectivity)
Build the link list array with a provided connectivity array.
Link * Resize(vtkIdType sz)
void Reset()
Reset to a state of no entries without freeing the memory.
void DeletePoint(vtkIdType ptId)
Delete point (and storage) by destroying links to using cells.
abstract class to specify dataset behavior
a simple class to control print indentation