VTK
Public Member Functions | Protected Attributes | List of all members
vtkStaticCellLinksTemplate< TIds > Class Template Reference

object represents upward pointers from points to list of cells using each point (template implementation) More...

#include <vtkStaticCellLinksTemplate.h>

Inheritance diagram for vtkStaticCellLinksTemplate< TIds >:
[legend]

Public Member Functions

 vtkStaticCellLinksTemplate ()
 Instantiate and destructor methods. More...
 
 ~vtkStaticCellLinksTemplate ()
 
void Initialize ()
 Make sure any previously created links are cleaned up. More...
 
void BuildLinks (vtkDataSet *ds)
 Build the link list array for a general dataset. More...
 
void BuildLinks (vtkPolyData *pd)
 Build the link list array for vtkPolyData. More...
 
void BuildLinks (vtkUnstructuredGrid *ugrid)
 Build the link list array for vtkUnstructuredGrid. More...
 
void BuildLinks (vtkExplicitStructuredGrid *esgrid)
 Build the link list array for vtkExplicitStructuredGrid. More...
 
void SerialBuildLinks (const vtkIdType numPts, const vtkIdType numCells, vtkCellArray *cellArray)
 Specialized methods for building links from cell array. More...
 
void ThreadedBuildLinks (const vtkIdType numPts, const vtkIdType numCells, vtkCellArray *cellArray)
 
TIds GetNumberOfCells (vtkIdType ptId)
 Get the number of cells using the point specified by ptId. More...
 
vtkIdType GetNcells (vtkIdType ptId)
 
TIds * GetCells (vtkIdType ptId)
 Return a list of cell ids using the point specified by ptId. More...
 
unsigned long GetActualMemorySize ()
 Support vtkAbstractCellLinks API. More...
 
void DeepCopy (vtkAbstractCellLinks *src)
 
void SetSequentialProcessing (vtkTypeBool seq)
 Control whether to thread or serial process. More...
 
vtkTypeBool GetSequentialProcessing ()
 

Protected Attributes

TIds LinksSize
 
TIds NumPts
 
TIds NumCells
 
TIds * Links
 
TIds * Offsets
 
int Type
 
vtkTypeBool SequentialProcessing
 

Detailed Description

template<typename TIds>
class vtkStaticCellLinksTemplate< TIds >

object represents upward pointers from points to list of cells using each point (template implementation)

vtkStaticCellLinksTemplate is a supplemental object to vtkCellArray and vtkCellTypes, enabling access to the list of cells using each point. vtkStaticCellLinksTemplate is an array of links, each link represents a list of cell ids using a particular point. The information provided by this object can be used to determine neighbors (e.g., face neighbors, edge neighbors)and construct other local topological information. This class is a faster implementation of vtkCellLinks. However, it cannot be incrementally constructed; it is meant to be constructed once (statically) and must be rebuilt if the cells change.

This is a templated implementation for vtkStaticCellLinks. The reason for the templating is to gain performance and reduce memory by using smaller integral types to represent ids. For example, if the maximum id can be represented by an int (as compared to a vtkIdType), it is possible to reduce memory requirements by half and increase performance. This templated class can be used directly; alternatively the non-templated class vtkStaticCellLinks can be used for convenience; although it uses vtkIdType and so will lose some speed and memory advantages.

See also
vtkAbstractCellLinks vtkCellLinks vtkStaticCellLinks

Definition at line 57 of file vtkStaticCellLinksTemplate.h.

Constructor & Destructor Documentation

◆ vtkStaticCellLinksTemplate()

template<typename TIds>
vtkStaticCellLinksTemplate< TIds >::vtkStaticCellLinksTemplate ( )

Instantiate and destructor methods.

◆ ~vtkStaticCellLinksTemplate()

template<typename TIds>
vtkStaticCellLinksTemplate< TIds >::~vtkStaticCellLinksTemplate ( )

Member Function Documentation

◆ Initialize()

template<typename TIds>
void vtkStaticCellLinksTemplate< TIds >::Initialize ( )

Make sure any previously created links are cleaned up.

◆ BuildLinks() [1/4]

template<typename TIds>
void vtkStaticCellLinksTemplate< TIds >::BuildLinks ( vtkDataSet ds)

Build the link list array for a general dataset.

Slower than the specialized methods that follow.

◆ BuildLinks() [2/4]

template<typename TIds>
void vtkStaticCellLinksTemplate< TIds >::BuildLinks ( vtkPolyData pd)

Build the link list array for vtkPolyData.

◆ BuildLinks() [3/4]

template<typename TIds>
void vtkStaticCellLinksTemplate< TIds >::BuildLinks ( vtkUnstructuredGrid ugrid)

Build the link list array for vtkUnstructuredGrid.

◆ BuildLinks() [4/4]

template<typename TIds>
void vtkStaticCellLinksTemplate< TIds >::BuildLinks ( vtkExplicitStructuredGrid esgrid)

Build the link list array for vtkExplicitStructuredGrid.

◆ SerialBuildLinks()

template<typename TIds>
void vtkStaticCellLinksTemplate< TIds >::SerialBuildLinks ( const vtkIdType  numPts,
const vtkIdType  numCells,
vtkCellArray cellArray 
)

Specialized methods for building links from cell array.

◆ ThreadedBuildLinks()

template<typename TIds>
void vtkStaticCellLinksTemplate< TIds >::ThreadedBuildLinks ( const vtkIdType  numPts,
const vtkIdType  numCells,
vtkCellArray cellArray 
)

◆ GetNumberOfCells()

template<typename TIds>
TIds vtkStaticCellLinksTemplate< TIds >::GetNumberOfCells ( vtkIdType  ptId)
inline

Get the number of cells using the point specified by ptId.

Definition at line 105 of file vtkStaticCellLinksTemplate.h.

◆ GetNcells()

template<typename TIds>
vtkIdType vtkStaticCellLinksTemplate< TIds >::GetNcells ( vtkIdType  ptId)
inline

Definition at line 106 of file vtkStaticCellLinksTemplate.h.

◆ GetCells()

template<typename TIds>
TIds* vtkStaticCellLinksTemplate< TIds >::GetCells ( vtkIdType  ptId)
inline

Return a list of cell ids using the point specified by ptId.

Definition at line 112 of file vtkStaticCellLinksTemplate.h.

◆ GetActualMemorySize()

template<typename TIds>
unsigned long vtkStaticCellLinksTemplate< TIds >::GetActualMemorySize ( )

Support vtkAbstractCellLinks API.

◆ DeepCopy()

template<typename TIds>
void vtkStaticCellLinksTemplate< TIds >::DeepCopy ( vtkAbstractCellLinks src)

◆ SetSequentialProcessing()

template<typename TIds>
void vtkStaticCellLinksTemplate< TIds >::SetSequentialProcessing ( vtkTypeBool  seq)
inline

Control whether to thread or serial process.

Definition at line 126 of file vtkStaticCellLinksTemplate.h.

◆ GetSequentialProcessing()

template<typename TIds>
vtkTypeBool vtkStaticCellLinksTemplate< TIds >::GetSequentialProcessing ( )
inline

Definition at line 127 of file vtkStaticCellLinksTemplate.h.

Member Data Documentation

◆ LinksSize

template<typename TIds>
TIds vtkStaticCellLinksTemplate< TIds >::LinksSize
protected

Definition at line 132 of file vtkStaticCellLinksTemplate.h.

◆ NumPts

template<typename TIds>
TIds vtkStaticCellLinksTemplate< TIds >::NumPts
protected

Definition at line 133 of file vtkStaticCellLinksTemplate.h.

◆ NumCells

template<typename TIds>
TIds vtkStaticCellLinksTemplate< TIds >::NumCells
protected

Definition at line 134 of file vtkStaticCellLinksTemplate.h.

◆ Links

template<typename TIds>
TIds* vtkStaticCellLinksTemplate< TIds >::Links
protected

Definition at line 137 of file vtkStaticCellLinksTemplate.h.

◆ Offsets

template<typename TIds>
TIds* vtkStaticCellLinksTemplate< TIds >::Offsets
protected

Definition at line 138 of file vtkStaticCellLinksTemplate.h.

◆ Type

template<typename TIds>
int vtkStaticCellLinksTemplate< TIds >::Type
protected

Definition at line 141 of file vtkStaticCellLinksTemplate.h.

◆ SequentialProcessing

template<typename TIds>
vtkTypeBool vtkStaticCellLinksTemplate< TIds >::SequentialProcessing
protected

Definition at line 142 of file vtkStaticCellLinksTemplate.h.


The documentation for this class was generated from the following file: