13#include <peak/dll_interface/peak_dll_interface_util.hpp>
89 friend ClassCreator<BufferChunk>;
93 std::weak_ptr<Buffer> m_parentBuffer;
107 : m_backendHandle(bufferChunkHandle)
108 , m_parentBuffer(parentBuffer)
118 return QueryNumericFromCInterfaceFunction<uint64_t>(
124 return QueryNumericFromCInterfaceFunction<void*>(
130 return QueryNumericFromCInterfaceFunction<size_t>(
136 return LockOrThrow(m_parentBuffer);
PEAK_COMMON_NO_DISCARD std::shared_ptr< Buffer > ParentBuffer() const
Returns the parent buffer.
Definition peak_buffer_chunk.hpp:134
BufferChunk(BufferChunk &&other)=delete
~BufferChunk()
Definition peak_buffer_chunk.hpp:111
PEAK_COMMON_NO_DISCARD uint64_t ID() const
Returns the ID.
Definition peak_buffer_chunk.hpp:116
PEAK_COMMON_NO_DISCARD void * BasePtr() const
Returns the base pointer.
Definition peak_buffer_chunk.hpp:122
BufferChunk & operator=(BufferChunk &&other)=delete
PEAK_COMMON_NO_DISCARD size_t Size() const
Returns the size.
Definition peak_buffer_chunk.hpp:128
BufferChunk & operator=(const BufferChunk &other)=delete
BufferChunk(const BufferChunk &other)=delete
Represents a GenTL buffer module.
Definition peak_buffer.hpp:85
The "core" namespace contains the direct GenAPI and GenTL wrapper.
Definition peak_buffer.hpp:32
The "peak" namespace directly contains convenience functionality like the DeviceManager as well as th...
Definition peak_buffer.hpp:29
struct PEAK_BUFFER_CHUNK * PEAK_BUFFER_CHUNK_HANDLE
Definition peak_backend.h:407
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_COMMON_NO_DISCARD
Definition peak_common_defines.h:89
#define PEAK_C_ABI_PREFIX
Definition peak_dll_defines.h:13