15#include <peak/dll_interface/peak_dll_interface_util.hpp>
90 friend ClassCreator<BufferChunk>;
94 std::weak_ptr<Buffer> m_parentBuffer;
108 : m_backendHandle(bufferChunkHandle)
109 , m_parentBuffer(parentBuffer)
119 return QueryNumericFromCInterfaceFunction<uint64_t>(
125 return QueryNumericFromCInterfaceFunction<void*>(
131 return QueryNumericFromCInterfaceFunction<size_t>(
137 return LockOrThrow(m_parentBuffer);
Represents a buffer chunk.
Definition peak_buffer_chunk.hpp:36
std::shared_ptr< Buffer > ParentBuffer() const
Returns the parent buffer.
Definition peak_buffer_chunk.hpp:135
BufferChunk(BufferChunk &&other)=delete
~BufferChunk()
Definition peak_buffer_chunk.hpp:112
uint64_t ID() const
Returns the ID.
Definition peak_buffer_chunk.hpp:117
void * BasePtr() const
Returns the base pointer.
Definition peak_buffer_chunk.hpp:123
BufferChunk & operator=(BufferChunk &&other)=delete
size_t Size() const
Returns the size.
Definition peak_buffer_chunk.hpp:129
BufferChunk & operator=(const BufferChunk &other)=delete
BufferChunk(const BufferChunk &other)=delete
The "peak" namespace directly contains convenience functionality like the DeviceManager as well as th...
Definition peak_dynamic_loader.h:32
struct PEAK_BUFFER_CHUNK * PEAK_BUFFER_CHUNK_HANDLE
Definition peak_backend.h:391
PEAK_C_API PEAK_BufferChunk_GetID(PEAK_BUFFER_CHUNK_HANDLE bufferChunkHandle, uint64_t *id)
Asks the given buffer chunk for its ID.
PEAK_C_API PEAK_BufferChunk_GetBasePtr(PEAK_BUFFER_CHUNK_HANDLE bufferChunkHandle, void **basePtr)
Asks the given buffer chunk for its base pointer.
PEAK_C_API PEAK_BufferChunk_GetSize(PEAK_BUFFER_CHUNK_HANDLE bufferChunkHandle, size_t *size)
Asks the given buffer chunk for its size.
PEAK_C_API PEAK_BufferChunk_Destruct(PEAK_BUFFER_CHUNK_HANDLE bufferChunkHandle)
Destroys the given buffer chunk.
#define PEAK_C_ABI_PREFIX
Definition peak_dll_defines.h:16