OpenVDB 13.1.0
Loading...
Searching...
No Matches
unique_ptr< T > Class Template Reference

Simple (naive) implementation of a unique device pointer using stream ordered memory allocation and deallocation. More...

#include <nanovdb/util/cuda/Util.h>

Public Member Functions

 unique_ptr (size_t count=0, cudaStream_t stream=0)
 unique_ptr (const unique_ptr &)=delete
 unique_ptr (unique_ptr &&other)
 ~unique_ptr ()
unique_ptroperator= (const unique_ptr &)=delete
unique_ptroperator= (unique_ptr &&rhs) noexcept
void reset ()
T * get () const
 operator bool () const

Detailed Description

template<typename T>
class nanovdb::util::cuda::unique_ptr< T >

Simple (naive) implementation of a unique device pointer using stream ordered memory allocation and deallocation.

Template Parameters
TType of the device pointer

Constructor & Destructor Documentation

◆ unique_ptr() [1/3]

template<typename T>
unique_ptr ( size_t count = 0,
cudaStream_t stream = 0 )
inline

◆ unique_ptr() [2/3]

template<typename T>
unique_ptr ( const unique_ptr< T > & )
delete

◆ unique_ptr() [3/3]

template<typename T>
unique_ptr ( unique_ptr< T > && other)
inline

◆ ~unique_ptr()

template<typename T>
~unique_ptr ( )
inline

Member Function Documentation

◆ get()

template<typename T>
T * get ( ) const
inline

◆ operator bool()

template<typename T>
operator bool ( ) const
inlineexplicit

◆ operator=() [1/2]

template<typename T>
unique_ptr & operator= ( const unique_ptr< T > & )
delete

◆ operator=() [2/2]

template<typename T>
unique_ptr & operator= ( unique_ptr< T > && rhs)
inlinenoexcept

◆ reset()

template<typename T>
void reset ( )
inline