OpenVDB 9.0.0
Public Member Functions | List of all members
DenseGridHandle< BufferT > Class Template Reference

#include <nanovdb/examples/benchmark/DenseGrid.h>

Public Member Functions

 DenseGridHandle (BufferT &&resources)
 
 DenseGridHandle ()=default
 
 DenseGridHandle (const DenseGridHandle &)=delete
 Disallow copy-construction. More...
 
DenseGridHandleoperator= (const DenseGridHandle &)=delete
 Disallow copy assignment operation. More...
 
DenseGridHandleoperator= (DenseGridHandle &&other) noexcept
 Move copy assignment operation. More...
 
 DenseGridHandle (DenseGridHandle &&other) noexcept
 Move copy-constructor. More...
 
 ~DenseGridHandle ()
 Default destructor. More...
 
void reset ()
 
BufferT & buffer ()
 
const BufferT & buffer () const
 
uint8_t * data ()
 Returns a non-const pointer to the data. More...
 
const uint8_t * data () const
 Returns a const pointer to the data. More...
 
uint64_t size () const
 Returns the size in bytes of the raw memory buffer managed by this DenseGridHandle's allocator. More...
 
template<typename ValueT >
const DenseGrid< ValueT > * grid () const
 Returns a const pointer to the NanoVDB grid encoded in the DenseGridHandle. More...
 
template<typename ValueT >
DenseGrid< ValueT > * grid ()
 
template<typename ValueT , typename U = BufferT>
std::enable_if< BufferTraits< U >::hasDeviceDual, constDenseGrid< ValueT > * >::type deviceGrid () const
 
template<typename U = BufferT>
std::enable_if< BufferTraits< U >::hasDeviceDual, void >::type deviceUpload (void *stream=nullptr, bool sync=true)
 
template<typename U = BufferT>
std::enable_if< BufferTraits< U >::hasDeviceDual, void >::type deviceDownload (void *stream=nullptr, bool sync=true)
 

Constructor & Destructor Documentation

◆ DenseGridHandle() [1/4]

DenseGridHandle ( BufferT &&  resources)
inline

◆ DenseGridHandle() [2/4]

DenseGridHandle ( )
default

◆ DenseGridHandle() [3/4]

DenseGridHandle ( const DenseGridHandle< BufferT > &  )
delete

Disallow copy-construction.

◆ DenseGridHandle() [4/4]

DenseGridHandle ( DenseGridHandle< BufferT > &&  other)
inlinenoexcept

Move copy-constructor.

◆ ~DenseGridHandle()

~DenseGridHandle ( )
inline

Default destructor.

Member Function Documentation

◆ buffer() [1/2]

BufferT & buffer ( )
inline

◆ buffer() [2/2]

const BufferT & buffer ( ) const
inline

◆ data() [1/2]

uint8_t * data ( )
inline

Returns a non-const pointer to the data.

Warning
Note that the return pointer can be NULL if the DenseGridHandle was not initialized

◆ data() [2/2]

const uint8_t * data ( ) const
inline

Returns a const pointer to the data.

Warning
Note that the return pointer can be NULL if the DenseGridHandle was not initialized

◆ deviceDownload()

std::enable_if< BufferTraits< U >::hasDeviceDual, void >::type deviceDownload ( void *  stream = nullptr,
bool  sync = true 
)
inline

◆ deviceGrid()

std::enable_if< BufferTraits< U >::hasDeviceDual, constDenseGrid< ValueT > * >::type deviceGrid ( ) const
inline

◆ deviceUpload()

std::enable_if< BufferTraits< U >::hasDeviceDual, void >::type deviceUpload ( void *  stream = nullptr,
bool  sync = true 
)
inline

◆ grid() [1/2]

DenseGrid< ValueT > * grid ( )
inline

◆ grid() [2/2]

const DenseGrid< ValueT > * grid ( ) const
inline

Returns a const pointer to the NanoVDB grid encoded in the DenseGridHandle.

Warning
Note that the return pointer can be NULL if the DenseGridHandle was not initialized or the template parameter does not match!

◆ operator=() [1/2]

DenseGridHandle & operator= ( const DenseGridHandle< BufferT > &  )
delete

Disallow copy assignment operation.

◆ operator=() [2/2]

DenseGridHandle & operator= ( DenseGridHandle< BufferT > &&  other)
inlinenoexcept

Move copy assignment operation.

◆ reset()

void reset ( )
inline

◆ size()

uint64_t size ( ) const
inline

Returns the size in bytes of the raw memory buffer managed by this DenseGridHandle's allocator.