Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



Loading...
Searching...
No Matches
PvGenDCInterfaces.h
Go to the documentation of this file.
1// *****************************************************************************
2//
3// Copyright (c) 2025, Pleora Technologies Inc., All rights reserved.
4//
5// *****************************************************************************
6
7#pragma once
8
9#include <PvGenDCLib.h>
10#include <PvPixelType.h>
11#include <stdint.h>
12
18
20
21namespace PvGenDCLib
22{
23class IContainerBuffer;
24}
25
32class PV_GENDC_API IPvGenDCImage
33{
34public:
35 virtual ~IPvGenDCImage() {}
36
42 virtual const uint8_t *GetDataPointer() const = 0;
43
49 virtual uint8_t *GetDataPointer() = 0;
50
56 virtual uint32_t GetImageSize() const = 0;
57
63 virtual uint32_t GetWidth() const = 0;
64
70 virtual uint32_t GetHeight() const = 0;
71
78 virtual PvPixelType GetPixelType() const = 0;
79
86 virtual uint32_t GetBitsPerPixel() const = 0;
87
93 virtual uint32_t GetOffsetX() const = 0;
94
100 virtual uint32_t GetOffsetY() const = 0;
101
107 virtual uint16_t GetPaddingX() const = 0;
108
114 virtual uint16_t GetPaddingY() const = 0;
115
121 virtual uint64_t GetBlockID() const = 0;
122};
123
124
131class PV_GENDC_API IPvGenDCChunkData
132{
133public:
134 virtual ~IPvGenDCChunkData() {}
135
141 virtual bool HasChunks() const = 0;
142
148 virtual uint32_t GetChunkCount() const = 0;
149
161 virtual PvResult GetChunkIDByIndex( uint32_t aIndex, uint32_t &aID ) const = 0;
162
170 virtual uint32_t GetChunkSizeByIndex( uint32_t aIndex ) const = 0;
171
179 virtual uint32_t GetChunkSizeByID( uint32_t aID ) const = 0;
180
188 virtual const uint8_t *GetChunkRawDataByIndex( uint32_t aIndex ) const = 0;
189
197 virtual const uint8_t *GetChunkRawDataByID( uint32_t aID ) const = 0;
198
204 virtual uint32_t GetChunkLayoutID() const = 0;
205};
206
213class PV_GENDC_API IPvGenDCChunkWriter
214{
215public:
235 virtual PvResult AddChunk( uint32_t aID, const uint8_t *aData, uint32_t aLength ) = 0;
236
251 virtual void ResetChunks() = 0;
252
253};
254
255
264class PV_GENDC_API IPvGenDCManager
265{
266public:
270 virtual uint64_t GetTotalPayloadSize() const = 0;
271
276 virtual IPvGenericDataContainer &GetGenDC() const = 0;
277
281 virtual void ResetContainer() = 0;
282};
283
PvPixelType
Definition PvPixelType.h:51
Generic chunk data interface for GenDC parts.
Definition PvGenDCInterfaces.h:132
virtual PvResult GetChunkIDByIndex(uint32_t aIndex, uint32_t &aID) const =0
Get chunk ID by index.
virtual const uint8_t * GetChunkRawDataByID(uint32_t aID) const =0
Get chunk raw data by ID.
virtual uint32_t GetChunkSizeByID(uint32_t aID) const =0
Get chunk size by ID.
virtual uint32_t GetChunkCount() const =0
Returns the number of chunks.
virtual uint32_t GetChunkSizeByIndex(uint32_t aIndex) const =0
Get chunk size by index.
virtual const uint8_t * GetChunkRawDataByIndex(uint32_t aIndex) const =0
Get chunk raw data by index.
virtual bool HasChunks() const =0
Returns true if the buffer has data chunks.
virtual uint32_t GetChunkLayoutID() const =0
Get the chunk data layout ID.
Generic chunk data writer interface for GenDC parts.
Definition PvGenDCInterfaces.h:214
virtual void ResetChunks()=0
Resets the internal chunk state.
virtual PvResult AddChunk(uint32_t aID, const uint8_t *aData, uint32_t aLength)=0
Add chunk data to the buffer.
Generic image interface for GenDC parts.
Definition PvGenDCInterfaces.h:33
virtual uint16_t GetPaddingX() const =0
Get the horizontal image padding.
virtual uint32_t GetImageSize() const =0
Actual image size within the payload or buffer.
virtual uint32_t GetOffsetY() const =0
Get the image's vertical offset.
virtual uint8_t * GetDataPointer()=0
Get the image's data pointer.
virtual uint64_t GetBlockID() const =0
Return the block ID.
virtual uint32_t GetOffsetX() const =0
Get the image's horizontal offset.
virtual uint32_t GetWidth() const =0
Get the image's width.
virtual uint16_t GetPaddingY() const =0
Get the vertical image padding.
virtual PvPixelType GetPixelType() const =0
The buffer's pixel type.
virtual uint32_t GetBitsPerPixel() const =0
Returns how many bits are required to hold a pixel using the current buffer's pixel type.
virtual uint32_t GetHeight() const =0
Get the image's height.
virtual const uint8_t * GetDataPointer() const =0
Get the image's data pointer.
Interface for managing GenDC (Generic Data Container) operations.
Definition PvGenDCInterfaces.h:265
virtual void ResetContainer()=0
Resets the GenDC Descriptor to a default state (no components, no parts).
virtual uint64_t GetTotalPayloadSize() const =0
Returns the total GenDC payload size, including descriptor and data.
virtual IPvGenericDataContainer & GetGenDC() const =0
Returns an interface to the Generic Data Container, which is then used to construct the GenDC Compone...
Interface used to read from a GenDC container.
Definition PvGenericDataContainer.h:648
Result information.
Definition PvResult.h:30

Copyright (c) 2002-2026 Pleora Technologies Inc.
www.pleora.com