VTK-m  2.0
Public Member Functions | List of all members
vtkm::cont::ArrayHandleBasic< T > Class Template Reference

#include <ArrayHandleBasic.h>

Inheritance diagram for vtkm::cont::ArrayHandleBasic< T >:
vtkm::cont::ArrayHandle< T, vtkm::cont::StorageTagBasic >

Public Member Functions

 VTKM_ARRAY_HANDLE_SUBCLASS (ArrayHandleBasic,(ArrayHandleBasic< T >),(ArrayHandle< T, vtkm::cont::StorageTagBasic >))
 
 ArrayHandleBasic (T *array, vtkm::Id numberOfValues, vtkm::cont::internal::BufferInfo::Deleter deleter, vtkm::cont::internal::BufferInfo::Reallocater reallocater=internal::InvalidRealloc)
 
 ArrayHandleBasic (T *array, vtkm::Id numberOfValues, vtkm::cont::DeviceAdapterId device, vtkm::cont::internal::BufferInfo::Deleter deleter, vtkm::cont::internal::BufferInfo::Reallocater reallocater=internal::InvalidRealloc)
 
 ArrayHandleBasic (T *array, void *container, vtkm::Id numberOfValues, vtkm::cont::internal::BufferInfo::Deleter deleter, vtkm::cont::internal::BufferInfo::Reallocater reallocater=internal::InvalidRealloc)
 
 ArrayHandleBasic (T *array, void *container, vtkm::Id numberOfValues, vtkm::cont::DeviceAdapterId device, vtkm::cont::internal::BufferInfo::Deleter deleter, vtkm::cont::internal::BufferInfo::Reallocater reallocater=internal::InvalidRealloc)
 
const T * GetReadPointer (vtkm::cont::Token &token) const
 Gets raw access to the ArrayHandle's data. More...
 
const T * GetReadPointer () const
 Gets raw access to the ArrayHandle's data. More...
 
T * GetWritePointer (vtkm::cont::Token &token) const
 Gets raw access to the ArrayHandle's data. More...
 
T * GetWritePointer () const
 Gets raw access to the ArrayHandle's data. More...
 
const T * GetReadPointer (vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token) const
 Gets raw access to the ArrayHandle's data. More...
 
const T * GetReadPointer (vtkm::cont::DeviceAdapterId device) const
 Gets raw access to the ArrayHandle's data. More...
 
T * GetWritePointer (vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token) const
 Gets raw access to the ArrayHandle's data. More...
 
T * GetWritePointer (vtkm::cont::DeviceAdapterId device) const
 Gets raw access to the ArrayHandle's data. More...
 
- Public Member Functions inherited from vtkm::cont::ArrayHandle< T, vtkm::cont::StorageTagBasic >
VTKM_CONT ArrayHandle ()
 Constructs an empty ArrayHandle. More...
 
VTKM_CONT ArrayHandle (const vtkm::cont::ArrayHandle< ValueType, StorageTag > &src)
 Copy constructor. More...
 
VTKM_CONT ArrayHandle (vtkm::cont::ArrayHandle< ValueType, StorageTag > &&src) noexcept
 Move constructor. More...
 
VTKM_CONT ~ArrayHandle ()
 Destructs an empty ArrayHandle. More...
 
VTKM_CONT vtkm::cont::ArrayHandle< ValueType, StorageTag > & operator= (const vtkm::cont::ArrayHandle< ValueType, StorageTag > &src)
 Copies an ArrayHandle. More...
 
VTKM_CONT vtkm::cont::ArrayHandle< ValueType, StorageTag > & operator= (vtkm::cont::ArrayHandle< ValueType, StorageTag > &&src) noexcept
 Move and Assignment of an ArrayHandle. More...
 
VTKM_CONT bool operator== (const ArrayHandle< ValueType, StorageTag > &rhs) const
 Like a pointer, two ArrayHandles are considered equal if they point to the same location in memory. More...
 
VTKM_CONT bool operator== (const ArrayHandle< VT, ST > &) const
 
VTKM_CONT bool operator!= (const ArrayHandle< ValueType, StorageTag > &rhs) const
 
VTKM_CONT bool operator!= (const ArrayHandle< VT, ST > &) const
 
VTKM_CONT StorageType GetStorage () const
 Get the storage. More...
 
VTKM_CONT WritePortalType WritePortal () const
 Get an array portal that can be used in the control environment. More...
 
VTKM_CONT WritePortalType WritePortal (vtkm::cont::Token &token) const
 
VTKM_CONT vtkm::Id GetNumberOfValues () const
 Returns the number of entries in the array. More...
 
VTKM_CONT void ReleaseResourcesExecution () const
 Releases any resources being used in the execution environment (that are not being shared by the control environment). More...
 
VTKM_CONT void ReleaseResources () const
 Releases all resources in both the control and execution environments. More...
 
VTKM_CONT ReadPortalType PrepareForInput (vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token) const
 Prepares this array to be used as an input to an operation in the execution environment. More...
 
VTKM_CONT WritePortalType PrepareForInPlace (vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token) const
 Prepares this array to be used in an in-place operation (both as input and output) in the execution environment. More...
 
VTKM_CONT WritePortalType PrepareForOutput (vtkm::Id numberOfValues, vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token) const
 Prepares (allocates) this array to be used as an output from an operation in the execution environment. More...
 
VTKM_CONT bool IsOnDevice (vtkm::cont::DeviceAdapterId device) const
 Returns true if the ArrayHandle's data is on the given device. More...
 
VTKM_CONT bool IsOnHost () const
 Returns true if the ArrayHandle's data is on the host. More...
 
VTKM_CONT void SyncControlArray () const
 Synchronizes the control array with the execution array. More...
 
VTKM_CONT void Enqueue (const vtkm::cont::Token &token) const
 Enqueue a token for access to this ArrayHandle. More...
 
VTKM_CONT void DeepCopyFrom (const vtkm::cont::ArrayHandle< ValueType, StorageTag > &source) const
 Deep copies the data in the array. More...
 
const VTKM_CONT std::vector< vtkm::cont::internal::Buffer > & GetBuffers () const
 Returns the internal Buffer structures that hold the data. More...
 
VTKM_CONT std::vector< vtkm::cont::internal::Buffer > & GetBuffers ()
 
VTKM_CONT ArrayHandle (const std::vector< vtkm::cont::internal::Buffer > &buffers)
 
VTKM_CONT ArrayHandle (std::vector< vtkm::cont::internal::Buffer > &&buffers) noexcept
 
VTKM_CONT ReadPortalType ReadPortal () const
 Get an array portal that can be used in the control environment. More...
 
VTKM_CONT ReadPortalType ReadPortal (vtkm::cont::Token &token) const
 Get an array portal that can be used in the control environment. More...
 
VTKM_CONT void Allocate (vtkm::Id numberOfValues, vtkm::CopyFlag preserve, vtkm::cont::Token &token) const
 Allocates an array large enough to hold the given number of values. More...
 
VTKM_CONT void Allocate (vtkm::Id numberOfValues, vtkm::CopyFlag preserve=vtkm::CopyFlag::Off) const
 Allocates an array large enough to hold the given number of values. More...
 
VTKM_CONT void AllocateAndFill (vtkm::Id numberOfValues, const ValueType &fillValue, vtkm::CopyFlag preserve, vtkm::cont::Token &token) const
 Allocates an array and fills it with an initial value. More...
 
VTKM_CONT void AllocateAndFill (vtkm::Id numberOfValues, const ValueType &fillValue, vtkm::CopyFlag preserve=vtkm::CopyFlag::Off) const
 Allocates an array and fills it with an initial value. More...
 
VTKM_CONT void Fill (const ValueType &fillValue, vtkm::Id startIndex, vtkm::Id endIndex, vtkm::cont::Token &token) const
 Fills the array with a given value. More...
 
VTKM_CONT void Fill (const ValueType &fillValue, vtkm::Id startIndex, vtkm::Id endIndex) const
 Fills the array with a given value. More...
 
VTKM_CONT void Fill (const ValueType &fillValue, vtkm::Id startIndex=0) const
 Fills the array with a given value. More...
 

Additional Inherited Members

- Public Types inherited from vtkm::cont::ArrayHandle< T, vtkm::cont::StorageTagBasic >
using ValueType = T
 
using StorageTag = vtkm::cont::StorageTagBasic
 
using StorageType = vtkm::cont::internal::Storage< ValueType, StorageTag >
 
using ReadPortalType = typename StorageType::ReadPortalType
 
using WritePortalType = typename StorageType::WritePortalType
 
- Protected Member Functions inherited from vtkm::cont::ArrayHandle< T, vtkm::cont::StorageTagBasic >
VTKM_CONT void SetBuffer (vtkm::IdComponent index, const vtkm::cont::internal::Buffer &buffer)
 
VTKM_CONT void SetBuffers (const std::vector< vtkm::cont::internal::Buffer > &buffers)
 
VTKM_CONT void SetBuffers (std::vector< vtkm::cont::internal::Buffer > &&buffers)
 

Constructor & Destructor Documentation

◆ ArrayHandleBasic() [1/4]

template<typename T >
vtkm::cont::ArrayHandleBasic< T >::ArrayHandleBasic ( T *  array,
vtkm::Id  numberOfValues,
vtkm::cont::internal::BufferInfo::Deleter  deleter,
vtkm::cont::internal::BufferInfo::Reallocater  reallocater = internal::InvalidRealloc 
)
inline

◆ ArrayHandleBasic() [2/4]

template<typename T >
vtkm::cont::ArrayHandleBasic< T >::ArrayHandleBasic ( T *  array,
vtkm::Id  numberOfValues,
vtkm::cont::DeviceAdapterId  device,
vtkm::cont::internal::BufferInfo::Deleter  deleter,
vtkm::cont::internal::BufferInfo::Reallocater  reallocater = internal::InvalidRealloc 
)
inline

◆ ArrayHandleBasic() [3/4]

template<typename T >
vtkm::cont::ArrayHandleBasic< T >::ArrayHandleBasic ( T *  array,
void *  container,
vtkm::Id  numberOfValues,
vtkm::cont::internal::BufferInfo::Deleter  deleter,
vtkm::cont::internal::BufferInfo::Reallocater  reallocater = internal::InvalidRealloc 
)
inline

◆ ArrayHandleBasic() [4/4]

template<typename T >
vtkm::cont::ArrayHandleBasic< T >::ArrayHandleBasic ( T *  array,
void *  container,
vtkm::Id  numberOfValues,
vtkm::cont::DeviceAdapterId  device,
vtkm::cont::internal::BufferInfo::Deleter  deleter,
vtkm::cont::internal::BufferInfo::Reallocater  reallocater = internal::InvalidRealloc 
)
inline

Member Function Documentation

◆ GetReadPointer() [1/4]

template<typename T >
const T* vtkm::cont::ArrayHandleBasic< T >::GetReadPointer ( ) const
inline

Gets raw access to the ArrayHandle's data.

Note that the returned array may become invalidated by other operations on the ArryHandle unless you provide a token.

◆ GetReadPointer() [2/4]

template<typename T >
const T* vtkm::cont::ArrayHandleBasic< T >::GetReadPointer ( vtkm::cont::DeviceAdapterId  device) const
inline

Gets raw access to the ArrayHandle's data.

Note that the returned array may become invalidated by other operations on the ArryHandle unless you provide a token.

◆ GetReadPointer() [3/4]

template<typename T >
const T* vtkm::cont::ArrayHandleBasic< T >::GetReadPointer ( vtkm::cont::DeviceAdapterId  device,
vtkm::cont::Token token 
) const
inline

Gets raw access to the ArrayHandle's data.

Note that the returned array may become invalidated by other operations on the ArryHandle unless you provide a token.

◆ GetReadPointer() [4/4]

template<typename T >
const T* vtkm::cont::ArrayHandleBasic< T >::GetReadPointer ( vtkm::cont::Token token) const
inline

Gets raw access to the ArrayHandle's data.

Note that the returned array may become invalidated by other operations on the ArryHandle unless you provide a token.

◆ GetWritePointer() [1/4]

template<typename T >
T* vtkm::cont::ArrayHandleBasic< T >::GetWritePointer ( ) const
inline

Gets raw access to the ArrayHandle's data.

Note that the returned array may become invalidated by other operations on the ArryHandle unless you provide a token.

◆ GetWritePointer() [2/4]

template<typename T >
T* vtkm::cont::ArrayHandleBasic< T >::GetWritePointer ( vtkm::cont::DeviceAdapterId  device) const
inline

Gets raw access to the ArrayHandle's data.

Note that the returned array may become invalidated by other operations on the ArryHandle unless you provide a token.

◆ GetWritePointer() [3/4]

template<typename T >
T* vtkm::cont::ArrayHandleBasic< T >::GetWritePointer ( vtkm::cont::DeviceAdapterId  device,
vtkm::cont::Token token 
) const
inline

Gets raw access to the ArrayHandle's data.

Note that the returned array may become invalidated by other operations on the ArryHandle unless you provide a token.

◆ GetWritePointer() [4/4]

template<typename T >
T* vtkm::cont::ArrayHandleBasic< T >::GetWritePointer ( vtkm::cont::Token token) const
inline

Gets raw access to the ArrayHandle's data.

Note that the returned array may become invalidated by other operations on the ArryHandle unless you provide a token.

◆ VTKM_ARRAY_HANDLE_SUBCLASS()

template<typename T >
vtkm::cont::ArrayHandleBasic< T >::VTKM_ARRAY_HANDLE_SUBCLASS ( ArrayHandleBasic< T >  ,
(ArrayHandleBasic< T >)  ,
(ArrayHandle< T, vtkm::cont::StorageTagBasic >)   
)

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