29 #ifndef _ARGUS_TYPES_H
30 #define _ARGUS_TYPES_H
42 #include <EGL/eglext.h>
61 class CaptureMetadata;
62 class CaptureMetadataContainer;
67 class OutputStreamSettings;
74 class ICameraProperties;
75 class ICameraProvider;
76 class ICaptureSession;
77 class IAutoControlSettings;
80 class IStreamSettings;
95 , uint16_t time_hi_and_version_
97 , uint8_t c0, uint8_t c1, uint8_t c2, uint8_t c3, uint8_t c4, uint8_t c5
99 :
NamedUUID(time_low_, time_mid_, time_hi_and_version_, clock_seq_,
100 c0, c1, c2, c3, c4, c5, name)
104 :
NamedUUID(0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
"EXT_UNSPECIFIED")
123 DEFINE_UUID(AwbMode, AWB_MODE_OFF, FB3F365A,CC62,11E5,9956,62,56,62,87,07,61);
124 DEFINE_UUID(AwbMode, AWB_MODE_AUTO, FB3F365B,CC62,11E5,9956,62,56,62,87,07,61);
125 DEFINE_UUID(AwbMode, AWB_MODE_INCANDESCENT, FB3F365C,CC62,11E5,9956,62,56,62,87,07,61);
126 DEFINE_UUID(AwbMode, AWB_MODE_FLUORESCENT, FB3F365D,CC62,11E5,9956,62,56,62,87,07,61);
127 DEFINE_UUID(AwbMode, AWB_MODE_WARM_FLUORESCENT, FB3F365E,CC62,11E5,9956,62,56,62,87,07,61);
128 DEFINE_UUID(AwbMode, AWB_MODE_DAYLIGHT, FB3F365F,CC62,11E5,9956,62,56,62,87,07,61);
129 DEFINE_UUID(AwbMode, AWB_MODE_CLOUDY_DAYLIGHT, FB3F3660,CC62,11E5,9956,62,56,62,87,07,61);
130 DEFINE_UUID(AwbMode, AWB_MODE_TWILIGHT, FB3F3661,CC62,11E5,9956,62,56,62,87,07,61);
131 DEFINE_UUID(AwbMode, AWB_MODE_SHADE, FB3F3662,CC62,11E5,9956,62,56,62,87,07,61);
132 DEFINE_UUID(AwbMode, AWB_MODE_MANUAL, 20FB45DA,C49F,4293,AB02,13,3F,8C,CA,DD,69);
135 FB3F3663,CC62,11E5,9956,62,56,62,87,07,61);
137 FB3F3664,CC62,11E5,9956,62,56,62,87,07,61);
138 DEFINE_UUID(CaptureIntent, CAPTURE_INTENT_STILL_CAPTURE,
139 FB3F3665,CC62,11E5,9956,62,56,62,87,07,61);
140 DEFINE_UUID(CaptureIntent, CAPTURE_INTENT_VIDEO_RECORD,
141 FB3F3666,CC62,11E5,9956,62,56,62,87,07,61);
142 DEFINE_UUID(CaptureIntent, CAPTURE_INTENT_VIDEO_SNAPSHOT,
143 FB3F3667,CC62,11E5,9956,62,56,62,87,07,61);
145 DEFINE_UUID(DenoiseMode, DENOISE_MODE_OFF, FB3F3668,CC62,11E5,9956,62,56,62,87,07,61);
146 DEFINE_UUID(DenoiseMode, DENOISE_MODE_FAST, FB3F3669,CC62,11E5,9956,62,56,62,87,07,61);
147 DEFINE_UUID(DenoiseMode, DENOISE_MODE_HIGH_QUALITY, FB3F366A,CC62,11E5,9956,62,56,62,87,07,61);
149 DEFINE_UUID(EdgeEnhanceMode, EDGE_ENHANCE_MODE_OFF, F7100B40,6A5F,11E6,BDF4,08,00,20,0C,9A,66);
150 DEFINE_UUID(EdgeEnhanceMode, EDGE_ENHANCE_MODE_FAST, F7100B41,6A5F,11E6,BDF4,08,00,20,0C,9A,66);
151 DEFINE_UUID(EdgeEnhanceMode, EDGE_ENHANCE_MODE_HIGH_QUALITY, F7100B42,6A5F,11E6,BDF4,08,00,20,0C,9A,66);
153 DEFINE_UUID(SensorModeType, SENSOR_MODE_TYPE_DEPTH,
154 64483464,4b91,11e6,bbbd,40,16,7e,ab,86,92);
156 6453e00c,4b91,11e6,871d,40,16,7e,ab,86,92);
158 6463d4c6,4b91,11e6,88a3,40,16,7e,ab,86,92);
159 DEFINE_UUID(SensorModeType, SENSOR_MODE_TYPE_BAYER,
160 646f04ea,4b91,11e6,9c06,40,16,7e,ab,86,92);
162 DEFINE_UUID(VideoStabilizationMode, VIDEO_STABILIZATION_MODE_OFF,
163 FB3F366E,CC62,11E5,9956,62,56,62,87,07,61);
164 DEFINE_UUID(VideoStabilizationMode, VIDEO_STABILIZATION_MODE_ON,
165 FB3F366F,CC62,11E5,9956,62,56,62,87,07,61);
266 , uint16_t time_hi_and_version_
267 , uint16_t clock_seq_
268 , uint8_t c0, uint8_t c1, uint8_t c2, uint8_t c3, uint8_t c4, uint8_t c5
270 :
NamedUUID(time_low_, time_mid_, time_hi_and_version_, clock_seq_,
271 c0, c1, c2, c3, c4, c5, name)
278 DEFINE_UUID(PixelFormat, PIXEL_FMT_UNKNOWN, 00000000,93d5,11e5,0000,1c,b7,2c,ef,d4,1e);
279 DEFINE_UUID(PixelFormat, PIXEL_FMT_Y8, 569be14a,93d5,11e5,91bc,1c,b7,2c,ef,d4,1e);
280 DEFINE_UUID(PixelFormat, PIXEL_FMT_Y16, 56ddb19c,93d5,11e5,8e2c,1c,b7,2c,ef,d4,1e);
281 DEFINE_UUID(PixelFormat, PIXEL_FMT_YCbCr_420_888, 570c10e6,93d5,11e5,8ff3,1c,b7,2c,ef,d4,1e);
282 DEFINE_UUID(PixelFormat, PIXEL_FMT_YCbCr_422_888, 573a7940,93d5,11e5,99c2,1c,b7,2c,ef,d4,1e);
283 DEFINE_UUID(PixelFormat, PIXEL_FMT_YCbCr_444_888, 576043dc,93d5,11e5,8983,1c,b7,2c,ef,d4,1e);
284 DEFINE_UUID(PixelFormat, PIXEL_FMT_JPEG_BLOB, 578b08c4,93d5,11e5,9686,1c,b7,2c,ef,d4,1e);
285 DEFINE_UUID(PixelFormat, PIXEL_FMT_RAW16, 57b484d8,93d5,11e5,aeb6,1c,b7,2c,ef,d4,1e);
322 , uint16_t time_hi_and_version_
323 , uint16_t clock_seq_
324 , uint8_t c0, uint8_t c1, uint8_t c2, uint8_t c3, uint8_t c4, uint8_t c5
326 :
NamedUUID(time_low_, time_mid_, time_hi_and_version_, clock_seq_,
327 c0, c1, c2, c3, c4, c5, name)
331 :
NamedUUID(0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
"IID_UNSPECIFIED")
357 template <
typename TheInterface>
360 return static_cast<TheInterface*
>(obj ? obj->
getInterface(TheInterface::id()): 0);
363 template <
typename TheInterface>
366 return static_cast<TheInterface*
>(
404 return *
static_cast<rv<T>*
>(&
self);
410 template <
typename T>
struct remove_const;
416 template <
typename T>
435 operator bool()
const {
return !!
m_obj; }
447 template <
typename TheInterface,
typename TObject>
456 template <
typename T>
486 Rectangle(uint32_t _left, uint32_t _top, uint32_t _width, uint32_t _height)
541 return x == other.
x &&
y == other.
y;
569 template <
unsigned int N,
typename T>
587 template <
typename T>
619 AcRegion(uint32_t _left, uint32_t _top, uint32_t _width, uint32_t _height,
float _weight)
620 :
rect(_left, _top, _width, _height)
641 template <
typename T>
725 assert(i <
m_data.size());
744 #endif // _ARGUS_TYPES_H