16 #include <peak/dll_interface/peak_dll_interface_util.hpp> 77 uint64_t SourceID()
const;
87 void* BasePtr()
const;
117 uint64_t Format()
const;
127 uint64_t FormatNamespace()
const;
137 size_t Width()
const;
147 size_t Height()
const;
157 size_t XOffset()
const;
167 size_t YOffset()
const;
177 size_t XPadding()
const;
187 size_t DeliveredImageHeight()
const;
198 std::shared_ptr<Buffer> ParentBuffer()
const;
201 friend ClassCreator<BufferPart>;
205 std::weak_ptr<Buffer> m_parentBuffer;
219 std::string entryString;
223 entryString =
"Unknown";
227 entryString =
"Image2D";
231 entryString =
"PlaneBiPlanar2D";
235 entryString =
"PlaneTriPlanar2D";
239 entryString =
"PlaneQuadPlanar2D";
243 entryString =
"Image3D";
247 entryString =
"PlaneBiPlanar3D";
251 entryString =
"PlaneTriPlanar3D";
255 entryString =
"PlaneQuadPlanar3D";
259 entryString =
"ConfidenceMap";
263 entryString =
"Custom";
270 : m_backendHandle(bufferPartHandle)
271 , m_parentBuffer(parentBuffer)
281 return QueryRawInformationFromCInterfaceFunction([&](int32_t* dataType, uint8_t* buffer,
size_t* bufferSize) {
283 m_backendHandle, infoCommand, dataType, buffer, bufferSize);
289 return QueryNumericFromCInterfaceFunction<uint64_t>([&](uint64_t* sourceId) {
296 return QueryNumericFromCInterfaceFunction<void*>(
302 return QueryNumericFromCInterfaceFunction<size_t>(
316 return QueryNumericFromCInterfaceFunction<uint64_t>(
322 return QueryNumericFromCInterfaceFunction<uint64_t>([&](uint64_t* formatNamespace) {
329 return QueryNumericFromCInterfaceFunction<size_t>(
335 return QueryNumericFromCInterfaceFunction<size_t>(
341 return QueryNumericFromCInterfaceFunction<size_t>(
347 return QueryNumericFromCInterfaceFunction<size_t>(
353 return QueryNumericFromCInterfaceFunction<size_t>([&](
size_t* xPadding) {
360 return QueryNumericFromCInterfaceFunction<size_t>([&](
size_t* deliveredImageHeight) {
367 return LockOrThrow(m_parentBuffer);
RawInformation Info(int32_t infoCommand) const
Delivers information based on the given GenTL info command.
Definition: peak_buffer_part.hpp:279
PEAK_C_API PEAK_BufferPart_GetYOffset(PEAK_BUFFER_PART_HANDLE bufferPartHandle, size_t *yOffset)
Asks the given buffer part for its Y offset.
uint64_t FormatNamespace() const
Returns the format namespace.
Definition: peak_buffer_part.hpp:320
uint64_t SourceID() const
Returns the source ID.
Definition: peak_buffer_part.hpp:287
PEAK_C_API PEAK_BufferPart_GetXOffset(PEAK_BUFFER_PART_HANDLE bufferPartHandle, size_t *xOffset)
Asks the given buffer part for its X offset.
Represents a buffer part.
Definition: peak_buffer_part.hpp:56
PEAK_C_API PEAK_BufferPart_Destruct(PEAK_BUFFER_PART_HANDLE bufferPartHandle)
Destroys the given buffer part.
The "peak" namespace directly contains convenience functionality like the DeviceManager as well as th...
Definition: peak_dynamic_loader.h:32
std::string ToString(BufferPayloadType entry)
Definition: peak_buffer.hpp:472
void * BasePtr() const
Returns the base pointer.
Definition: peak_buffer_part.hpp:294
std::shared_ptr< Buffer > ParentBuffer() const
Returns the parent buffer.
Definition: peak_buffer_part.hpp:365
size_t DeliveredImageHeight() const
Returns the delivered image height.
Definition: peak_buffer_part.hpp:358
size_t XPadding() const
Returns the x padding.
Definition: peak_buffer_part.hpp:351
int32_t PEAK_BUFFER_PART_TYPE
Definition: peak_backend.h:63
BufferPartType Type() const
Returns the type.
Definition: peak_buffer_part.hpp:306
PEAK_C_API PEAK_BufferPart_GetFormatNamespace(PEAK_BUFFER_PART_HANDLE bufferPartHandle, uint64_t *formatNamespace)
Asks the given buffer part for its format namespace.
PEAK_C_API PEAK_BufferPart_GetDeliveredImageHeight(PEAK_BUFFER_PART_HANDLE bufferPartHandle, size_t *deliveredImageHeight)
Asks the given buffer part for its delivered image height.
size_t YOffset() const
Returns the y offset.
Definition: peak_buffer_part.hpp:345
BufferPartType
Data type of the buffer part.
Definition: peak_buffer_part.hpp:33
PEAK_C_API PEAK_BufferPart_GetSize(PEAK_BUFFER_PART_HANDLE bufferPartHandle, size_t *size)
Asks the given buffer part for its size.
Represents a GenTL buffer module.
Definition: peak_buffer.hpp:78
size_t Width() const
Returns the width.
Definition: peak_buffer_part.hpp:327
~BufferPart()
Definition: peak_buffer_part.hpp:274
size_t XOffset() const
Returns the x offset.
Definition: peak_buffer_part.hpp:339
PEAK_C_API PEAK_BufferPart_GetFormat(PEAK_BUFFER_PART_HANDLE bufferPartHandle, uint64_t *format)
Asks the given buffer part for its format.
size_t Size() const
Returns the size in bytes.
Definition: peak_buffer_part.hpp:300
#define PEAK_C_ABI_PREFIX
Definition: peak_dll_defines.h:16
PEAK_C_API PEAK_BufferPart_GetType(PEAK_BUFFER_PART_HANDLE bufferPartHandle, PEAK_BUFFER_PART_TYPE *type)
Asks the given buffer part for its type.
PEAK_C_API PEAK_BufferPart_GetBasePtr(PEAK_BUFFER_PART_HANDLE bufferPartHandle, void **basePtr)
Asks the given buffer part for its base pointer.
size_t Height() const
Returns the height.
Definition: peak_buffer_part.hpp:333
PEAK_C_API PEAK_BufferPart_GetInfo(PEAK_BUFFER_PART_HANDLE bufferPartHandle, int32_t infoCommand, int32_t *infoDataType, uint8_t *info, size_t *infoSize)
Asks the given buffer part for an information based on a specific command.
uint64_t Format() const
Returns the format.
Definition: peak_buffer_part.hpp:314
PEAK_C_API PEAK_BufferPart_GetSourceID(PEAK_BUFFER_PART_HANDLE bufferPartHandle, uint64_t *sourceId)
Asks the given buffer part for its source ID.
PEAK_C_API PEAK_BufferPart_GetWidth(PEAK_BUFFER_PART_HANDLE bufferPartHandle, size_t *width)
Asks the given buffer part for its width.
struct PEAK_BUFFER_PART * PEAK_BUFFER_PART_HANDLE
Definition: peak_backend.h:393
PEAK_C_API PEAK_BufferPart_GetXPadding(PEAK_BUFFER_PART_HANDLE bufferPartHandle, size_t *xPadding)
Asks the given buffer part for its X padding.