|
| NodeManagerHandle (GridType gridType, BufferT &&buffer) |
| Move constructor from a buffer. More...
|
|
| NodeManagerHandle ()=default |
| Empty ctor. More...
|
|
| NodeManagerHandle (const NodeManagerHandle &)=delete |
| Disallow copy-construction. More...
|
|
NodeManagerHandle & | operator= (const NodeManagerHandle &)=delete |
| Disallow copy assignment operation. More...
|
|
NodeManagerHandle & | operator= (NodeManagerHandle &&other) noexcept |
| Move copy assignment operation. More...
|
|
| NodeManagerHandle (NodeManagerHandle &&other) noexcept |
| Move copy-constructor. More...
|
|
| ~NodeManagerHandle () |
| Default destructor. More...
|
|
void | reset () |
| clear the buffer More...
|
|
BufferT & | buffer () |
| Return a reference to the buffer. More...
|
|
const BufferT & | buffer () const |
| Return a const reference to the buffer. More...
|
|
void * | data () |
| Returns a non-const pointer to the data. More...
|
|
const void * | 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 NodeManagerHandle's allocator. More...
|
|
template<typename BuildT > |
const NodeManager< BuildT > * | mgr () const |
| Returns a const pointer to the NodeManager encoded in this NodeManagerHandle. More...
|
|
template<typename BuildT > |
NodeManager< BuildT > * | mgr () |
| Returns a pointer to the NodeManager encoded in this NodeManagerHandle. More...
|
|
template<typename BuildT , typename U = BufferT> |
util::enable_if< BufferTraits< U >::hasDeviceDual, const NodeManager< BuildT > * >::type | deviceMgr () const |
| Return a const pointer to the NodeManager encoded in this NodeManagerHandle on the device, e.g. GPU. More...
|
|
template<typename BuildT , typename U = BufferT> |
util::enable_if< BufferTraits< U >::hasDeviceDual, NodeManager< BuildT > * >::type | deviceMgr () |
| Return a const pointer to the NodeManager encoded in this NodeManagerHandle on the device, e.g. GPU. More...
|
|
template<typename U = BufferT> |
util::enable_if< BufferTraits< U >::hasDeviceDual, void >::type | deviceUpload (void *deviceGrid, void *stream=nullptr, bool sync=true) |
| Upload the NodeManager to the device, e.g. from CPU to GPU. More...
|
|
template<typename U = BufferT> |
util::enable_if< BufferTraits< U >::hasDeviceDual, void >::type | deviceDownload (void *stream=nullptr, bool sync=true) |
| Download the NodeManager to from the device, e.g. from GPU to CPU. More...
|
|
template<typename BufferT>
class nanovdb::NodeManagerHandle< BufferT >
NodeManagerHandle manages the memory of a NodeManager.
This class serves to manage a raw memory buffer of a NanoVDB NodeManager or LeafManager.