Pleora Technologies Inc. eBUS SDK v6.4.0.6670 API



PvMultiPartSection.h
Go to the documentation of this file.
1 // *****************************************************************************
2 //
3 // Copyright (c) 2018, Pleora Technologies Inc., All rights reserved.
4 //
5 // *****************************************************************************
6 
7 #ifndef __PVMULTIPARTSECTION_H__
8 #define __PVMULTIPARTSECTION_H__
9 
10 #include <PvBufferLib.h>
11 #include <PvImage.h>
12 #include <PvChunkData.h>
13 #include <PvImageJPEG.h>
14 
17 
21 
24 
29 
34 
39 
44 
49 
54 
59 
64 
70 
75 
80 
85 EBUS_ENUM(PvMultiPartDataType)
86 {
87  PvMultiPartInvalid = 0,
88  PvMultiPart2DImage = 1,
89  PvMultiPart2DPlaneOfBiPlanar = 2,
90  PvMultiPart2DPlaneOfTriPlanar = 3,
91  PvMultiPart2DPlaneOfQuadPlanar = 4,
92  PvMultiPart3DImage = 5,
93  PvMultiPart3DPlaneOfBiPlanar = 6,
94  PvMultiPart3DPlaneOfTriPlanar = 7,
95  PvMultiPart3DPlaneOfQuadPlanar = 8,
96  PvMultiPartConfidenceMap = 9,
97  PvMultiPartChunkData = 10,
98  PvMultiPartJPEGImage = 11,
99  PvMultiPartJPEG2000Image = 12
100 
101 } PvMultiPartDataType;
102 
106 
109 
112 
115 
118 
122 
125 
130 
134 
138 EBUS_ENUM(PvComponentType)
139 {
140  PvComponentUndefined = 0,
141  PvComponentIntensity = 1,
142  PvComponentInfrared = 2,
143  PvComponentUltraviolet = 3,
144  PvComponentRange = 4,
145  PvComponentReflectance = 5,
146  PvComponentConfidence = 6,
147  PvComponentScatter = 7,
148  PvComponentDisparity = 8,
149  PvComponentMultispectral = 9
150 
151 } PvComponentType;
152 
157 class PV_BUFFER_API IPvMultiPartSection
158 {
159 public:
160 
161  virtual ~IPvMultiPartSection() {}
162 
168  virtual const uint8_t *GetDataPointer() const = 0;
169 
175  virtual uint8_t *GetDataPointer() = 0;
176 
182  virtual uint32_t GetSize() const = 0;
183 
189  virtual uint32_t GetEffectiveSize() const = 0;
190 
196  virtual PvMultiPartDataType GetDataType() const = 0;
197 
205  virtual operator IPvImage *() = 0;
206 
214  virtual operator IPvImageJPEG *() = 0;
215 
223  virtual operator IPvChunkData *() = 0;
224 
240  virtual IPvImage *GetImage() = 0;
241 
255  virtual IPvImageJPEG *GetJPEG() = 0;
256 
272  virtual IPvChunkData *GetChunkData() = 0;
273 
283  virtual uint32_t GetSourceID() const = 0;
284 
295  virtual uint32_t GetDataPurposeID() const = 0;
296 
307  virtual uint32_t GetRegionID() const = 0;
308 
319  virtual uint32_t GetAdditionalZones() const = 0;
320 
335  virtual uint32_t GetZoneDirectionMask() const = 0;
336 
337 };
338 
339 
340 #endif
IPvImage
Generic image interface.
Definition: PvImage.h:20
IPvMultiPartSection
One section (part) of a multi-part container.
Definition: PvMultiPartSection.h:157
IPvImageJPEG
Generic interface to a JPEG image.
Definition: PvImageJPEG.h:20
IPvChunkData
Generic chunk data interface.
Definition: PvChunkData.h:17

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