VTK  9.7.1
Public Member Functions | List of all members
vtkIndexedImplicitBackend< ValueType > Class Template Referencefinal

A backend for the vtkImplicitArray framework allowing one to use a subset of a given data array, by providing a vtkIdList or vtkDataArray of indexes as indirection, as another vtkDataArray without any excess memory consumption. More...

#include <vtkIndexedImplicitBackend.h>

Public Member Functions

 ~vtkIndexedImplicitBackend ()
 
ValueType operator() (vtkIdType idx) const
 Indexing operation for the indexed array respecting the backend expectations of vtkImplicitArray More...
 
unsigned long getMemorySize () const
 Returns the smallest integer memory size in KiB needed to store the array. More...
 
vtkDataArray * GetBaseArray () const
 Get the original base array used for value lookup. More...
 
vtkDataArray * GetIndexArray () const
 Get the original index array used for indirection. More...
 
bool GetMapTuples () const
 Get if the indexed array is mapping tuples or values. More...
 
 vtkIndexedImplicitBackend (vtkIdList *indexes, vtkDataArray *array, bool mapTuples=false)
 Constructor. More...
 
 vtkIndexedImplicitBackend (vtkDataArray *indexes, vtkDataArray *array, bool mapTuples=false)
 Constructor. More...
 

Detailed Description

template<typename ValueType>
class vtkIndexedImplicitBackend< ValueType >

A backend for the vtkImplicitArray framework allowing one to use a subset of a given data array, by providing a vtkIdList or vtkDataArray of indexes as indirection, as another vtkDataArray without any excess memory consumption.

This structure can be classified as a closure and can be called using syntax similar to a function call.

An example of potential usage in a vtkImplicitArray:

Definition at line 55 of file vtkIndexedImplicitBackend.h.

Constructor & Destructor Documentation

template<typename ValueType >
vtkIndexedImplicitBackend< ValueType >::vtkIndexedImplicitBackend ( vtkIdList *  indexes,
vtkDataArray *  array,
bool  mapTuples = false 
)

Constructor.

Parameters
indexeslist of indexes to use for indirection of the array
arraybase array of interest
mapTuplesdecides if the indexes are mapping the tuples or the values WARNING: Mapping tuples only works with AOS and doesn't support SOA.
template<typename ValueType >
vtkIndexedImplicitBackend< ValueType >::vtkIndexedImplicitBackend ( vtkDataArray *  indexes,
vtkDataArray *  array,
bool  mapTuples = false 
)

Constructor.

Parameters
indexeslist of indexes to use for indirection of the array
arraybase array of interest
mapTuplesdecides if the indexes are mapping the tuples or the values WARNING: Mapping tuples only works with AOS and doesn't support SOA.
template<typename ValueType >
vtkIndexedImplicitBackend< ValueType >::~vtkIndexedImplicitBackend ( )

Member Function Documentation

template<typename ValueType >
ValueType vtkIndexedImplicitBackend< ValueType >::operator() ( vtkIdType  idx) const

Indexing operation for the indexed array respecting the backend expectations of vtkImplicitArray

template<typename ValueType >
unsigned long vtkIndexedImplicitBackend< ValueType >::getMemorySize ( ) const

Returns the smallest integer memory size in KiB needed to store the array.

Used to implement GetActualMemorySize on vtkIndexedImplicitBackend.

template<typename ValueType >
vtkDataArray* vtkIndexedImplicitBackend< ValueType >::GetBaseArray ( ) const

Get the original base array used for value lookup.

template<typename ValueType >
vtkDataArray* vtkIndexedImplicitBackend< ValueType >::GetIndexArray ( ) const

Get the original index array used for indirection.

template<typename ValueType >
bool vtkIndexedImplicitBackend< ValueType >::GetMapTuples ( ) const

Get if the indexed array is mapping tuples or values.


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