Builder class for constructing std::shared_ptr<ucxx::MemoryHandle> objects. More...
#include <memory_handle_builder.h>
Public Member Functions | |
| MemoryHandleBuilder (std::shared_ptr< Context > context, size_t size) | |
| Constructor for MemoryHandleBuilder. | |
| ~MemoryHandleBuilder () | |
| MemoryHandleBuilder destructor. | |
| MemoryHandleBuilder (const MemoryHandleBuilder &other) | |
| Copy constructor (deep-copies internal state). | |
| MemoryHandleBuilder & | operator= (const MemoryHandleBuilder &other) |
| Copy assignment operator (deep-copies internal state). | |
| MemoryHandleBuilder (MemoryHandleBuilder &&) noexcept | |
| Move constructor. | |
| MemoryHandleBuilder & | operator= (MemoryHandleBuilder &&) noexcept |
| Move assignment operator. | |
| operator std::shared_ptr< MemoryHandle > () | |
| Implicit conversion operator to shared_ptr<MemoryHandle>. | |
| MemoryHandleBuilder & | buffer (void *buffer) |
| Configure the buffer to map. | |
| MemoryHandleBuilder & | memoryType (ucs_memory_type_t memoryType) |
| Configure the mapped memory type. | |
| std::shared_ptr< MemoryHandle > | build () |
| Build and return the MemoryHandle. | |
Builder class for constructing std::shared_ptr<ucxx::MemoryHandle> objects.
This class implements the builder pattern for std::shared_ptr<ucxx::MemoryHandle>. Construction happens when build() is called or when the builder is implicitly converted to std::shared_ptr<MemoryHandle>.
| ucxx::MemoryHandleBuilder::MemoryHandleBuilder | ( | std::shared_ptr< Context > | context, |
| size_t | size ) |
Constructor for MemoryHandleBuilder.
| [in] | context | parent context where memory is mapped. |
| [in] | size | minimum size of the memory allocation. |
| MemoryHandleBuilder & ucxx::MemoryHandleBuilder::buffer | ( | void * | buffer | ) |
Configure the buffer to map.
| [in] | buffer | pointer to an existing allocation or nullptr to allocate memory. |
|
nodiscard |
Build and return the MemoryHandle.
Each call to build() creates a new MemoryHandle instance with the current parameters.
| MemoryHandleBuilder & ucxx::MemoryHandleBuilder::memoryType | ( | ucs_memory_type_t | memoryType | ) |
Configure the mapped memory type.
| [in] | memoryType | the type of memory the handle points to. |
| ucxx::MemoryHandleBuilder::operator std::shared_ptr< MemoryHandle > | ( | ) |
Implicit conversion operator to shared_ptr<MemoryHandle>.