thrust::system::omp::universal_pointer

Defined in thrust/system/omp/pointer.h

template<typename T>
using thrust::system::omp::universal_pointer = thrust::pointer<T, thrust::system::omp::tag, typename std::add_lvalue_reference<T>::type>

omp::universal_pointer stores a pointer to an object allocated in memory accessible by the omp system and host systems.

omp::universal_pointer has pointer semantics: it may be dereferenced and manipulated with pointer arithmetic.

omp::universal_pointer can be created with omp::universal_allocator or by explicitly calling its constructor with a raw pointer.

The raw pointer encapsulated by a omp::universal_pointer may be obtained by eiter its get member function or the raw_pointer_cast function.

See also

omp::universal_allocator

See also

raw_pointer_cast

Note

omp::universal_pointer is not a “smart” pointer; it is the programmer’s responsibility to deallocate memory pointed to by omp::universal_pointer.

Template Parameters

T – specifies the type of the pointee.