CVB++ 15.0
pfnc_format.hpp
1#pragma once
2
3#include "global.hpp"
4
5#include "data_type.hpp"
6#include "exception.hpp"
7#include "string.hpp"
8
9namespace Cvb
10{
11 CVB_BEGIN_INLINE_NS
12
14
27 namespace Pfnc
28 {
29
33 enum class PfncFormat
34 {
38 Mono1p = 0x01010037,
42 Mono2p = 0x01020038,
46 Mono4p = 0x01040039,
50 Mono8 = 0x01080001,
54 Mono8s = 0x01080002,
58 Mono10 = 0x01100003,
62 Mono10p = 0x010A0046,
66 Mono12 = 0x01100005,
70 Mono12p = 0x010C0047,
74 Mono14 = 0x01100025,
78 Mono16 = 0x01100007,
82 BayerBG8 = 0x0108000B,
86 BayerBG10 = 0x0110000F,
90 BayerBG10p = 0x010A0052,
94 BayerBG12 = 0x01100013,
98 BayerBG12p = 0x010C0053,
102 BayerBG16 = 0x01100031,
106 BayerGB8 = 0x0108000A,
110 BayerGB10 = 0x0110000E,
114 BayerGB10p = 0x010A0054,
118 BayerGB12 = 0x01100012,
122 BayerGB12p = 0x010C0055,
126 BayerGB16 = 0x01100030,
130 BayerGR8 = 0x01080008,
134 BayerGR10 = 0x0110000C,
138 BayerGR10p = 0x010A0056,
142 BayerGR12 = 0x01100010,
146 BayerGR12p = 0x010C0057,
150 BayerGR16 = 0x0110002E,
154 BayerRG8 = 0x01080009,
158 BayerRG10 = 0x0110000D,
162 BayerRG10p = 0x010A0058,
166 BayerRG12 = 0x01100011,
170 BayerRG12p = 0x010C0059,
174 BayerRG16 = 0x0110002F,
178 RGBa8 = 0x02200016,
182 RGBa10 = 0x0240005F,
186 RGBa10p = 0x02280060,
190 RGBa12 = 0x02400061,
194 RGBa12p = 0x02300062,
198 RGBa14 = 0x02400063,
202 RGBa16 = 0x02400064,
206 RGB8 = 0x02180014,
210 RGB8_Planar = 0x02180021,
214 RGB10 = 0x02300018,
218 RGB10_Planar = 0x02300022,
222 RGB10p = 0x021E005C,
226 RGB10p32 = 0x0220001D,
230 RGB12 = 0x0230001A,
234 RGB12_Planar = 0x02300023,
238 RGB12p = 0x0224005D,
242 RGB14 = 0x0230005E,
246 RGB16 = 0x02300033,
250 RGB16_Planar = 0x02300024,
254 RGB565p = 0x02100035,
258 BGRa8 = 0x02200017,
262 BGRa10 = 0x0240004C,
266 BGRa10p = 0x0228004D,
270 BGRa12 = 0x0240004E,
274 BGRa12p = 0x0230004F,
278 BGRa14 = 0x02400050,
282 BGRa16 = 0x02400051,
286 BGR8 = 0x02180015,
290 BGR10 = 0x02300019,
294 BGR10p = 0x021E0048,
298 BGR12 = 0x0230001B,
302 BGR12p = 0x02240049,
306 BGR14 = 0x0230004A,
310 BGR16 = 0x0230004B,
314 BGR565p = 0x02100036,
318 R8 = 0x010800C9,
322 R10 = 0x010A00CA,
326 R12 = 0x010C00CB,
330 R16 = 0x011000CC,
334 G8 = 0x010800CD,
338 G10 = 0x010A00CE,
342 G12 = 0x010C00CF,
346 G16 = 0x011000D0,
350 B8 = 0x010800D1,
354 B10 = 0x010A00D2,
358 B12 = 0x010C00D3,
362 B16 = 0x011000D4,
366 Coord3D_ABC8 = 0x021800B2,
374 Coord3D_ABC10p = 0x021E00DB,
382 Coord3D_ABC12p = 0x022400DE,
390 Coord3D_ABC16 = 0x023000B9,
398 Coord3D_ABC32f = 0x026000C0,
406 Coord3D_AC8 = 0x021000B4,
410 Coord3D_AC8_Planar = 0x021000B5,
414 Coord3D_AC10p = 0x021400F0,
422 Coord3D_AC12p = 0x021800F2,
430 Coord3D_AC16 = 0x022000BB,
438 Coord3D_AC32f = 0x024000C2,
446 Coord3D_A8 = 0x010800AF,
450 Coord3D_A10p = 0x010A00D5,
454 Coord3D_A12p = 0x010C00D8,
458 Coord3D_A16 = 0x011000B6,
462 Coord3D_A32f = 0x012000BD,
466 Coord3D_B8 = 0x010800B0,
470 Coord3D_B10p = 0x010A00D6,
474 Coord3D_B12p = 0x010C00D9,
478 Coord3D_B16 = 0x011000B7,
482 Coord3D_B32f = 0x012000BE,
486 Coord3D_C8 = 0x010800B1,
490 Coord3D_C10p = 0x010A00D7,
494 Coord3D_C12p = 0x010C00DA,
498 Coord3D_C16 = 0x011000B8,
502 Coord3D_C32f = 0x012000BF,
506 Confidence1 = 0x010800C4,
510 Confidence1p = 0x010100C5,
514 Confidence8 = 0x010800C6,
518 Confidence16 = 0x011000C7,
522 Confidence32f = 0x012000C8,
526 BiColorBGRG8 = 0x021000A6,
530 BiColorBGRG10 = 0x022000A9,
534 BiColorBGRG10p = 0x021400AA,
538 BiColorBGRG12 = 0x022000AD,
542 BiColorBGRG12p = 0x021800AE,
546 BiColorRGBG8 = 0x021000A5,
550 BiColorRGBG10 = 0x022000A7,
554 BiColorRGBG10p = 0x021400A8,
558 BiColorRGBG12 = 0x022000AB,
562 BiColorRGBG12p = 0x021800AC,
566 SCF1WBWG8 = 0x01080067,
570 SCF1WBWG10 = 0x01100068,
574 SCF1WBWG10p = 0x010A0069,
578 SCF1WBWG12 = 0x0110006A,
582 SCF1WBWG12p = 0x010C006B,
586 SCF1WBWG14 = 0x0110006C,
590 SCF1WBWG16 = 0x0110006D,
594 SCF1WGWB8 = 0x0108006E,
598 SCF1WGWB10 = 0x0110006F,
602 SCF1WGWB10p = 0x010A0070,
606 SCF1WGWB12 = 0x01100071,
610 SCF1WGWB12p = 0x010C0072,
614 SCF1WGWB14 = 0x01100073,
618 SCF1WGWB16 = 0x01100074,
622 SCF1WGWR8 = 0x01080075,
626 SCF1WGWR10 = 0x01100076,
630 SCF1WGWR10p = 0x010A0077,
634 SCF1WGWR12 = 0x01100078,
638 SCF1WGWR12p = 0x010C0079,
642 SCF1WGWR14 = 0x0110007A,
646 SCF1WGWR16 = 0x0110007B,
650 SCF1WRWG8 = 0x0108007C,
654 SCF1WRWG10 = 0x0110007D,
658 SCF1WRWG10p = 0x010A007E,
662 SCF1WRWG12 = 0x0110007F,
666 SCF1WRWG12p = 0x010C0080,
670 SCF1WRWG14 = 0x01100081,
674 SCF1WRWG16 = 0x01100082,
678 YCbCr8 = 0x0218005B,
682 YCbCr8_CbYCr = 0x0218003A,
686 YCbCr10_CbYCr = 0x02300083,
690 YCbCr10p_CbYCr = 0x021E0084,
694 YCbCr12_CbYCr = 0x02300085,
698 YCbCr12p_CbYCr = 0x02240086,
702 YCbCr411_8 = 0x020C005A,
710 YCbCr422_8 = 0x0210003B,
714 YCbCr422_8_CbYCrY = 0x02100043,
718 YCbCr422_10 = 0x02200065,
722 YCbCr422_10_CbYCrY = 0x02200099,
726 YCbCr422_10p = 0x02140087,
734 YCbCr422_12 = 0x02200066,
738 YCbCr422_12_CbYCrY = 0x0220009B,
742 YCbCr422_12p = 0x02180088,
750 YCbCr601_8_CbYCr = 0x0218003D,
754 YCbCr601_10_CbYCr = 0x02300089,
758 YCbCr601_10p_CbYCr = 0x021E008A,
762 YCbCr601_12_CbYCr = 0x0230008B,
766 YCbCr601_12p_CbYCr = 0x0224008C,
774 YCbCr601_422_8 = 0x0210003E,
782 YCbCr601_422_10 = 0x0220008D,
790 YCbCr601_422_10p = 0x0214008E,
798 YCbCr601_422_12 = 0x0220008F,
806 YCbCr601_422_12p = 0x02180090,
814 YCbCr709_8_CbYCr = 0x02180040,
818 YCbCr709_10_CbYCr = 0x02300091,
822 YCbCr709_10p_CbYCr = 0x021E0092,
826 YCbCr709_12_CbYCr = 0x02300093,
830 YCbCr709_12p_CbYCr = 0x02240094,
838 YCbCr709_422_8 = 0x02100041,
846 YCbCr709_422_10 = 0x02200095,
854 YCbCr709_422_10p = 0x02140096,
862 YCbCr709_422_12 = 0x02200097,
870 YCbCr709_422_12p = 0x02180098,
878 YCbCr2020_8_CbYCr = 0x021800F4,
882 YCbCr2020_10_CbYCr = 0x023000F5,
890 YCbCr2020_12_CbYCr = 0x023000F7,
902 YCbCr2020_422_8 = 0x021000FA,
910 YCbCr2020_422_10 = 0x022000FC,
918 YCbCr2020_422_10p = 0x021400FE,
926 YCbCr2020_422_12 = 0x02200100,
934 YCbCr2020_422_12p = 0x02180102,
942 YUV8_UYV = 0x02180020,
946 YUV411_8_UYYVYY = 0x020C001E,
950 YUV422_8 = 0x02100032,
954 YUV422_8_UYVY = 0x0210001F,
958 Mono10Packed = 0x010C0004,
962 Mono12Packed = 0x010C0006,
966 BayerBG10Packed = 0x010C0029,
970 BayerBG12Packed = 0x010C002D,
974 BayerGB10Packed = 0x010C0028,
978 BayerGB12Packed = 0x010C002C,
982 BayerGR10Packed = 0x010C0026,
986 BayerGR12Packed = 0x010C002A,
990 BayerRG10Packed = 0x010C0027,
994 BayerRG12Packed = 0x010C002B,
998 RGB10V1Packed = 0x0220001C,
1002 RGB12V1Packed = 0x02240034,
1006 Data8 = 0x01080116,
1010 Data8s = 0x01080117,
1014 Data16 = 0x01100118,
1018 Data16s = 0x01080119,
1022 Data32 = 0x0120011A,
1026 Data32f = 0x0120011C,
1030 Data32s = 0x0120011B,
1034 Data64 = 0x0140011D,
1038 Data64f = 0x0140011F,
1042 Data64s = 0x0140011E,
1046 Custom = static_cast<int>(0x80000000), // == -2147483648
1051 };
1052
1058 {
1067 public:
1068 static PfncFormat From(const ColorModel &colorModel, const DataType &dataType)
1069 {
1070 if (dataType.IsFloat() || dataType.BitsPerPixel() > 16)
1072
1073 switch (colorModel)
1074 {
1077 if (dataType.IsUnsignedInteger())
1078 {
1079 if (dataType.BitsPerPixel() <= 8)
1080 return PfncFormat::Mono8;
1081 else if (dataType.BitsPerPixel() <= 10)
1082 return PfncFormat::Mono10;
1083 else if (dataType.BitsPerPixel() <= 12)
1084 return PfncFormat::Mono12;
1085 else if (dataType.BitsPerPixel() <= 14)
1086 return PfncFormat::Mono14;
1087 else if (dataType.BitsPerPixel() <= 16)
1088 return PfncFormat::Mono16;
1089 else
1091 }
1092 else
1093 {
1094 if (dataType.BitsPerPixel() <= 8)
1095 return PfncFormat::Mono8s;
1096 else
1098 }
1099 break;
1100
1103 if (dataType.IsUnsignedInteger())
1104 {
1105 if (dataType.BitsPerPixel() <= 8)
1106 return PfncFormat::RGB8;
1107 else if (dataType.BitsPerPixel() <= 10)
1108 return PfncFormat::RGB10;
1109 else if (dataType.BitsPerPixel() <= 12)
1110 return PfncFormat::RGB12;
1111 else if (dataType.BitsPerPixel() <= 14)
1112 return PfncFormat::RGB14;
1113 else if (dataType.BitsPerPixel() <= 16)
1114 return PfncFormat::RGB16;
1115 else
1117 }
1118 else
1120 break;
1122 if (dataType.IsUnsignedInteger() && dataType.BitsPerPixel() == 8)
1123 return PfncFormat::YUV8_UYV;
1124 else
1126 break;
1128 if (dataType.IsUnsignedInteger() && dataType.BitsPerPixel() == 8)
1129 return PfncFormat::YCbCr8;
1130 else
1132 break;
1133 default:
1143 break;
1144 }
1145 }
1146
1152 static String ToString(const PfncFormat &pixelFormat)
1153 {
1154 std::size_t length = 0;
1155 auto result = CExports::_ppCVCGetPFNCValueNameTyped(static_cast<CExports::cvbuint32_t>(pixelFormat),
1156 reinterpret_cast<Char *>(0), length);
1157 if (result < 0)
1158 std::rethrow_exception(CvbException::FromCvbResult(result, "Unknown PfncFormat."));
1159
1160 std::vector<Char> buffer(length);
1161 result = CExports::_ppCVCGetPFNCValueNameTyped(static_cast<CExports::cvbuint32_t>(pixelFormat), buffer.data(),
1162 length);
1163 if (result < 0)
1164 std::rethrow_exception(CvbException::FromCvbResult(result, "Could not get Pfnc value by name."));
1165
1166 return buffer.data();
1167 }
1168
1169 static std::string ToANSI(const PfncFormat &pixelFormat)
1170 {
1171 std::size_t length = 0;
1172 auto result = CExports::CVCGetPFNCValueName(static_cast<CExports::cvbuint32_t>(pixelFormat),
1173 reinterpret_cast<char *>(0), length);
1174 if (result < 0)
1175 std::rethrow_exception(CvbException::FromCvbResult(result, "Unknown PfncFormat."));
1176
1177 std::vector<char> buffer(static_cast<CExports::cvbuint32_t>(length));
1178 result = CExports::CVCGetPFNCValueName(static_cast<CExports::cvbuint32_t>(pixelFormat), buffer.data(), length);
1179 if (result < 0)
1180 std::rethrow_exception(CvbException::FromCvbResult(result, "Could not get Pfnc value by name."));
1181
1182 return std::string(buffer.data(), length);
1183 }
1184 };
1185
1186 } // namespace Pfnc
1187
1188 using namespace Pfnc;
1189
1190 CVB_END_INLINE_NS
1191} // namespace Cvb
Data type description for an image plane.
Definition data_type.hpp:23
int BitsPerPixel() const noexcept
Number of actually valid bits per pixel.
Definition data_type.hpp:322
bool IsUnsignedInteger() const noexcept
Gets whether the pixels of the plane have unsigned integer values.
Definition data_type.hpp:364
bool IsFloat() const noexcept
Gets whether the pixels of the plane have floating point values.
Definition data_type.hpp:343
Helper methods for PfncFormat values. ///.
Definition pfnc_format.hpp:1058
static String ToString(const PfncFormat &pixelFormat)
Gets the official name for the given pixelFormat .
Definition pfnc_format.hpp:1152
static PfncFormat From(const ColorModel &colorModel, const DataType &dataType)
Tries to coerce the PfncFormat from the given colorModel and dataType .
Definition pfnc_format.hpp:1068
GenICam Pixel Format Naming Convention (PFNC) related components.
Definition pfnc_format.hpp:28
PfncFormat
GenICam Pixel Format Naming Convention (PFNC) format values.
Definition pfnc_format.hpp:34
@ Coord3D_B8
3D coordinate B 8-bit.
Definition pfnc_format.hpp:466
@ SCF1WGWR14
Sparse Color Filter #1 White-Green-White-Red 14-bit unpacked.
Definition pfnc_format.hpp:642
@ RGBa16
Red-Green-Blue-alpha 16-bit.
Definition pfnc_format.hpp:202
@ YCbCr2020_422_12
YCbCr 4:2:2 12-bit unpacked BT.2020.
Definition pfnc_format.hpp:926
@ RGBa12p
Red-Green-Blue-alpha 12-bit packed.
Definition pfnc_format.hpp:194
@ Mono1p
Monochrome 1-bit packed.
Definition pfnc_format.hpp:38
@ Data32s
Binary 32-bit data signed.
Definition pfnc_format.hpp:1030
@ Coord3D_ABC16_Planar
3D coordinate A-B-C 16-bit planar.
Definition pfnc_format.hpp:394
@ SCF1WGWB12
Sparse Color Filter #1 White-Green-White-Blue 12-bit unpacked.
Definition pfnc_format.hpp:606
@ SCF1WBWG8
Sparse Color Filter #1 White-Blue-White-Green 8-bit.
Definition pfnc_format.hpp:566
@ BiColorBGRG12p
Bi-color Blue/Green - Red/Green 12-bit packed.
Definition pfnc_format.hpp:542
@ Coord3D_C8
3D coordinate C 8-bit.
Definition pfnc_format.hpp:486
@ RGB565p
Red-Green-Blue 5/6/5-bit packed.
Definition pfnc_format.hpp:254
@ RGBa10
Red-Green-Blue-alpha 10-bit unpacked.
Definition pfnc_format.hpp:182
@ BGR10p
Blue-Green-Red 10-bit packed.
Definition pfnc_format.hpp:294
@ YCbCr601_422_10_CbYCrY
YCbCr 4:2:2 10-bit unpacked BT.601.
Definition pfnc_format.hpp:786
@ RGB8
Red-Green-Blue 8-bit.
Definition pfnc_format.hpp:206
@ R12
Red 12-bit.
Definition pfnc_format.hpp:326
@ BiColorBGRG12
Bi-color Blue/Green - Red/Green 12-bit unpacked.
Definition pfnc_format.hpp:538
@ SCF1WGWB10
Sparse Color Filter #1 White-Green-White-Blue 10-bit unpacked.
Definition pfnc_format.hpp:598
@ BGR14
Blue-Green-Red 14-bit unpacked.
Definition pfnc_format.hpp:306
@ Coord3D_B12p
3D coordinate B 12-bit packed.
Definition pfnc_format.hpp:474
@ Data16s
Binary 16-bit data signed.
Definition pfnc_format.hpp:1018
@ Mono12p
Monochrome 12-bit packed.
Definition pfnc_format.hpp:70
@ BiColorRGBG10p
Bi-color Red/Green - Blue/Green 10-bit packed.
Definition pfnc_format.hpp:554
@ YCbCr12_CbYCr
YCbCr 4:4:4 12-bit unpacked.
Definition pfnc_format.hpp:694
@ Mono12
Monochrome 12-bit unpacked.
Definition pfnc_format.hpp:66
@ RGB16
Red-Green-Blue 16-bit.
Definition pfnc_format.hpp:246
@ BGRa16
Blue-Green-Red-alpha 16-bit.
Definition pfnc_format.hpp:282
@ YCbCr422_10p
YCbCr 4:2:2 10-bit packed.
Definition pfnc_format.hpp:726
@ BayerGB10
Bayer Green-Blue 10-bit unpacked.
Definition pfnc_format.hpp:110
@ YUV411_8_UYYVYY
YUV 4:1:1 8-bit.
Definition pfnc_format.hpp:946
@ BayerBG12Packed
GigE Vision specific format, Bayer Blue-Green 12-bit packed.
Definition pfnc_format.hpp:970
@ YCbCr2020_422_12p_CbYCrY
YCbCr 4:2:2 12-bit packed BT.2020.
Definition pfnc_format.hpp:938
@ Coord3D_ABC32f_Planar
3D coordinate A-B-C 32-bit floating point planar.
Definition pfnc_format.hpp:402
@ Coord3D_AC16
3D coordinate A-C 16-bit.
Definition pfnc_format.hpp:430
@ SCF1WGWB10p
Sparse Color Filter #1 White-Green-White-Blue 10-bit packed.
Definition pfnc_format.hpp:602
@ Data8s
Binary 8-bit data signed.
Definition pfnc_format.hpp:1010
@ G16
Green 16-bit.
Definition pfnc_format.hpp:346
@ BayerRG12p
Bayer Red-Green 12-bit packed.
Definition pfnc_format.hpp:170
@ Confidence32f
Confidence 32-bit floating point.
Definition pfnc_format.hpp:522
@ Coord3D_ABC10p
3D coordinate A-B-C 10-bit packed.
Definition pfnc_format.hpp:374
@ BayerBG10
Bayer Blue-Green 10-bit unpacked.
Definition pfnc_format.hpp:86
@ RGBa8
Red-Green-Blue-alpha 8-bit.
Definition pfnc_format.hpp:178
@ YCbCr12p_CbYCr
YCbCr 4:4:4 12-bit packed.
Definition pfnc_format.hpp:698
@ Coord3D_A16
3D coordinate A 16-bit.
Definition pfnc_format.hpp:458
@ Coord3D_ABC10p_Planar
3D coordinate A-B-C 10-bit packed planar.
Definition pfnc_format.hpp:378
@ YCbCr2020_422_10
YCbCr 4:2:2 10-bit unpacked BT.2020.
Definition pfnc_format.hpp:910
@ YCbCr2020_422_10p
YCbCr 4:2:2 10-bit packed BT.2020.
Definition pfnc_format.hpp:918
@ Coord3D_ABC12p_Planar
3D coordinate A-B-C 12-bit packed planar.
Definition pfnc_format.hpp:386
@ R10
Red 10-bit.
Definition pfnc_format.hpp:322
@ Confidence1
Confidence 1-bit unpacked.
Definition pfnc_format.hpp:506
@ BiColorRGBG12p
Bi-color Red/Green - Blue/Green 12-bit packed.
Definition pfnc_format.hpp:562
@ YCbCr709_422_12_CbYCrY
YCbCr 4:2:2 12-bit unpacked BT.709.
Definition pfnc_format.hpp:866
@ Mono14
Monochrome 14-bit unpacked.
Definition pfnc_format.hpp:74
@ YCbCr601_10p_CbYCr
YCbCr 4:4:4 10-bit packed BT.601.
Definition pfnc_format.hpp:758
@ SCF1WRWG10
Sparse Color Filter #1 White-Red-White-Green 10-bit unpacked.
Definition pfnc_format.hpp:654
@ YCbCr601_10_CbYCr
YCbCr 4:4:4 10-bit unpacked BT.601.
Definition pfnc_format.hpp:754
@ SCF1WBWG12
Sparse Color Filter #1 White-Blue-White-Green 12-bit unpacked.
Definition pfnc_format.hpp:578
@ YCbCr8_CbYCr
YCbCr 4:4:4 8-bit.
Definition pfnc_format.hpp:682
@ Coord3D_C10p
3D coordinate C 10-bit packed.
Definition pfnc_format.hpp:490
@ BayerBG10p
Bayer Blue-Green 10-bit packed.
Definition pfnc_format.hpp:90
@ Coord3D_A8
3D coordinate A 8-bit.
Definition pfnc_format.hpp:446
@ RGBa12
Red-Green-Blue-alpha 12-bit unpacked.
Definition pfnc_format.hpp:190
@ RGB12p
Red-Green-Blue 12-bit packed.
Definition pfnc_format.hpp:238
@ YCbCr709_422_8
YCbCr 4:2:2 8-bit BT.709.
Definition pfnc_format.hpp:838
@ SCF1WGWR12p
Sparse Color Filter #1 White-Green-White-Red 12-bit packed.
Definition pfnc_format.hpp:638
@ BayerGB12p
Bayer Green-Blue 12-bit packed.
Definition pfnc_format.hpp:122
@ YCbCr709_12_CbYCr
YCbCr 4:4:4 12-bit unpacked BT.709.
Definition pfnc_format.hpp:826
@ YCbCr601_8_CbYCr
YCbCr 4:4:4 8-bit BT.601.
Definition pfnc_format.hpp:750
@ BGRa12
Blue-Green-Red-alpha 12-bit unpacked.
Definition pfnc_format.hpp:270
@ BayerGR12
Bayer Green-Red 12-bit unpacked.
Definition pfnc_format.hpp:142
@ BayerRG10p
Bayer Red-Green 10-bit packed.
Definition pfnc_format.hpp:162
@ Coord3D_ABC8_Planar
3D coordinate A-B-C 8-bit planar.
Definition pfnc_format.hpp:370
@ BayerRG12
Bayer Red-Green 12-bit unpacked.
Definition pfnc_format.hpp:166
@ YCbCr8
YCbCr 4:4:4 8-bit.
Definition pfnc_format.hpp:678
@ YCbCr601_422_10p
YCbCr 4:2:2 10-bit packed BT.601.
Definition pfnc_format.hpp:790
@ B10
Blue 10-bit.
Definition pfnc_format.hpp:354
@ YCbCr709_411_8_CbYYCrYY
YCbCr 4:1:1 8-bit BT.709.
Definition pfnc_format.hpp:834
@ SCF1WGWB14
Sparse Color Filter #1 White-Green-White-Blue 14-bit unpacked.
Definition pfnc_format.hpp:614
@ BayerGR12p
Bayer Green-Red 12-bit packed.
Definition pfnc_format.hpp:146
@ BayerGR8
Bayer Green-Red 8-bit.
Definition pfnc_format.hpp:130
@ BayerBG12p
Bayer Blue-Green 12-bit packed.
Definition pfnc_format.hpp:98
@ Mono10Packed
GigE Vision specific format, Monochrome 10-bit packed.
Definition pfnc_format.hpp:958
@ YCbCr422_12p
YCbCr 4:2:2 12-bit packed.
Definition pfnc_format.hpp:742
@ BGR12p
Blue-Green-Red 12-bit packed.
Definition pfnc_format.hpp:302
@ BayerBG8
Bayer Blue-Green 8-bit.
Definition pfnc_format.hpp:82
@ Confidence16
Confidence 16-bit.
Definition pfnc_format.hpp:518
@ YCbCr2020_422_8_CbYCrY
YCbCr 4:2:2 8-bit BT.2020.
Definition pfnc_format.hpp:906
@ YCbCr2020_422_12p
YCbCr 4:2:2 12-bit packed BT.2020.
Definition pfnc_format.hpp:934
@ SCF1WBWG12p
Sparse Color Filter #1 White-Blue-White-Green 12-bit packed.
Definition pfnc_format.hpp:582
@ YCbCr709_422_10p
YCbCr 4:2:2 10-bit packed BT.709.
Definition pfnc_format.hpp:854
@ YCbCr2020_12p_CbYCr
YCbCr 4:4:4 12-bit packed BT.2020.
Definition pfnc_format.hpp:894
@ RGB12_Planar
Red-Green-Blue 12-bit unpacked planar.
Definition pfnc_format.hpp:234
@ Coord3D_AC12p_Planar
3D coordinate A-C 12-bit packed planar.
Definition pfnc_format.hpp:426
@ BiColorBGRG8
Bi-color Blue/Green - Red/Green 8-bit.
Definition pfnc_format.hpp:526
@ SCF1WRWG8
Sparse Color Filter #1 White-Red-White-Green 8-bit.
Definition pfnc_format.hpp:650
@ BayerRG10
Bayer Red-Green 10-bit unpacked.
Definition pfnc_format.hpp:158
@ Coord3D_AC10p_Planar
3D coordinate A-C 10-bit packed planar.
Definition pfnc_format.hpp:418
@ BayerGB10Packed
GigE Vision specific format, Bayer Green-Blue 10-bit packed.
Definition pfnc_format.hpp:974
@ BayerGB12
Bayer Green-Blue 12-bit unpacked.
Definition pfnc_format.hpp:118
@ BiColorRGBG10
Bi-color Red/Green - Blue/Green 10-bit unpacked.
Definition pfnc_format.hpp:550
@ YCbCr10p_CbYCr
YCbCr 4:4:4 10-bit packed.
Definition pfnc_format.hpp:690
@ YCbCr601_12p_CbYCr
YCbCr 4:4:4 12-bit packed BT.601.
Definition pfnc_format.hpp:766
@ YCbCr10_CbYCr
YCbCr 4:4:4 10-bit unpacked.
Definition pfnc_format.hpp:686
@ YCbCr422_8
YCbCr 4:2:2 8-bit.
Definition pfnc_format.hpp:710
@ YUV422_8
YUV 4:2:2 8-bit.
Definition pfnc_format.hpp:950
@ Coord3D_ABC12p
3D coordinate A-B-C 12-bit packed.
Definition pfnc_format.hpp:382
@ YCbCr2020_411_8_CbYYCrYY
YCbCr 4:1:1 8-bit BT.2020.
Definition pfnc_format.hpp:898
@ YCbCr422_10p_CbYCrY
YCbCr 4:2:2 10-bit packed.
Definition pfnc_format.hpp:730
@ Coord3D_B10p
3D coordinate B 10-bit packed.
Definition pfnc_format.hpp:470
@ Mono2p
Monochrome 2-bit packed.
Definition pfnc_format.hpp:42
@ BayerRG8
Bayer Red-Green 8-bit.
Definition pfnc_format.hpp:154
@ YCbCr2020_422_12_CbYCrY
YCbCr 4:2:2 12-bit unpacked BT.2020.
Definition pfnc_format.hpp:930
@ BayerGR10p
Bayer Green-Red 10-bit packed.
Definition pfnc_format.hpp:138
@ YCbCr411_8_CbYYCrYY
YCbCr 4:1:1 8-bit.
Definition pfnc_format.hpp:706
@ Coord3D_AC8
3D coordinate A-C 8-bit.
Definition pfnc_format.hpp:406
@ Coord3D_A10p
3D coordinate A 10-bit packed.
Definition pfnc_format.hpp:450
@ RGB16_Planar
Red-Green-Blue 16-bit planar.
Definition pfnc_format.hpp:250
@ RGB14
Red-Green-Blue 14-bit unpacked.
Definition pfnc_format.hpp:242
@ YCbCr2020_12_CbYCr
YCbCr 4:4:4 12-bit unpacked BT.2020.
Definition pfnc_format.hpp:890
@ SCF1WBWG10
Sparse Color Filter #1 White-Blue-White-Green 10-bit unpacked.
Definition pfnc_format.hpp:570
@ SCF1WGWB16
Sparse Color Filter #1 White-Green-White-Blue 16-bit.
Definition pfnc_format.hpp:618
@ RGB8_Planar
Red-Green-Blue 8-bit planar.
Definition pfnc_format.hpp:210
@ BayerRG10Packed
GigE Vision specific format, Bayer Red-Green 10-bit packed.
Definition pfnc_format.hpp:990
@ BiColorBGRG10
Bi-color Blue/Green - Red/Green 10-bit unpacked.
Definition pfnc_format.hpp:530
@ BGRa12p
Blue-Green-Red-alpha 12-bit packed.
Definition pfnc_format.hpp:274
@ YUV422_8_UYVY
YUV 4:2:2 8-bit.
Definition pfnc_format.hpp:954
@ BiColorRGBG12
Bi-color Red/Green - Blue/Green 12-bit unpacked.
Definition pfnc_format.hpp:558
@ RGB12V1Packed
GigE Vision specific format, Red-Green-Blue 12-bit packed - variant 1.
Definition pfnc_format.hpp:1002
@ Coord3D_ABC8
3D coordinate A-B-C 8-bit.
Definition pfnc_format.hpp:366
@ SCF1WRWG12
Sparse Color Filter #1 White-Red-White-Green 12-bit unpacked.
Definition pfnc_format.hpp:662
@ YCbCr2020_10p_CbYCr
YCbCr 4:4:4 10-bit packed BT.2020.
Definition pfnc_format.hpp:886
@ BiColorBGRG10p
Bi-color Blue/Green - Red/Green 10-bit packed.
Definition pfnc_format.hpp:534
@ B12
Blue 12-bit.
Definition pfnc_format.hpp:358
@ Coord3D_C12p
3D coordinate C 12-bit packed.
Definition pfnc_format.hpp:494
@ YCbCr601_422_12p
YCbCr 4:2:2 12-bit packed BT.601.
Definition pfnc_format.hpp:806
@ YCbCr709_12p_CbYCr
YCbCr 4:4:4 12-bit packed BT.709.
Definition pfnc_format.hpp:830
@ SCF1WGWR10p
Sparse Color Filter #1 White-Green-White-Red 10-bit packed.
Definition pfnc_format.hpp:630
@ YCbCr709_10_CbYCr
YCbCr 4:4:4 10-bit unpacked BT.709.
Definition pfnc_format.hpp:818
@ Custom
Start number for custom pixel formats.
Definition pfnc_format.hpp:1046
@ BayerGB8
Bayer Green-Blue 8-bit.
Definition pfnc_format.hpp:106
@ BayerGR12Packed
GigE Vision specific format, Bayer Green-Red 12-bit packed.
Definition pfnc_format.hpp:986
@ SCF1WGWB12p
Sparse Color Filter #1 White-Green-White-Blue 12-bit packed.
Definition pfnc_format.hpp:610
@ SCF1WRWG14
Sparse Color Filter #1 White-Red-White-Green 14-bit unpacked.
Definition pfnc_format.hpp:670
@ BiColorRGBG8
Bi-color Red/Green - Blue/Green 8-bit.
Definition pfnc_format.hpp:546
@ SCF1WGWR8
Sparse Color Filter #1 White-Green-White-Red 8-bit.
Definition pfnc_format.hpp:622
@ YCbCr2020_422_10_CbYCrY
YCbCr 4:2:2 10-bit unpacked BT.2020.
Definition pfnc_format.hpp:914
@ BGR12
Blue-Green-Red 12-bit unpacked.
Definition pfnc_format.hpp:298
@ YCbCr601_12_CbYCr
YCbCr 4:4:4 12-bit unpacked BT.601.
Definition pfnc_format.hpp:762
@ Mono4p
Monochrome 4-bit packed.
Definition pfnc_format.hpp:46
@ YCbCr422_12p_CbYCrY
YCbCr 4:2:2 12-bit packed.
Definition pfnc_format.hpp:746
@ R16
Red 16-bit.
Definition pfnc_format.hpp:330
@ Mono8s
Monochrome 8-bit signed.
Definition pfnc_format.hpp:54
@ Coord3D_AC16_Planar
3D coordinate A-C 16-bit planar.
Definition pfnc_format.hpp:434
@ YCbCr422_8_CbYCrY
YCbCr 4:2:2 8-bit.
Definition pfnc_format.hpp:714
@ YCbCr601_422_12p_CbYCrY
YCbCr 4:2:2 12-bit packed BT.601.
Definition pfnc_format.hpp:810
@ Confidence8
Confidence 8-bit.
Definition pfnc_format.hpp:514
@ YCbCr601_422_8
YCbCr 4:2:2 8-bit BT.601.
Definition pfnc_format.hpp:774
@ BayerRG16
Bayer Red-Green 16-bit.
Definition pfnc_format.hpp:174
@ RGBa10p
Red-Green-Blue-alpha 10-bit packed.
Definition pfnc_format.hpp:186
@ BayerGB12Packed
GigE Vision specific format, Bayer Green-Blue 12-bit packed.
Definition pfnc_format.hpp:978
@ YCbCr2020_10_CbYCr
YCbCr 4:4:4 10-bit unpacked BT.2020.
Definition pfnc_format.hpp:882
@ SCF1WGWB8
Sparse Color Filter #1 White-Green-White-Blue 8-bit.
Definition pfnc_format.hpp:594
@ RGB10
Red-Green-Blue 10-bit unpacked.
Definition pfnc_format.hpp:214
@ YCbCr422_12_CbYCrY
YCbCr 4:2:2 12-bit unpacked.
Definition pfnc_format.hpp:738
@ BGR565p
Blue-Green-Red 5/6/5-bit packed.
Definition pfnc_format.hpp:314
@ Coord3D_A12p
3D coordinate A 12-bit packed.
Definition pfnc_format.hpp:454
@ YCbCr709_422_10
YCbCr 4:2:2 10-bit unpacked BT.709.
Definition pfnc_format.hpp:846
@ BGRa14
Blue-Green-Red-alpha 14-bit unpacked.
Definition pfnc_format.hpp:278
@ YCbCr601_411_8_CbYYCrYY
YCbCr 4:1:1 8-bit BT.601.
Definition pfnc_format.hpp:770
@ BayerGR10
Bayer Green-Red 10-bit unpacked.
Definition pfnc_format.hpp:134
@ Coord3D_C32f
3D coordinate C 32-bit floating point.
Definition pfnc_format.hpp:502
@ Mono16
Monochrome 16-bit.
Definition pfnc_format.hpp:78
@ InvalidPixelFormat
Invalid pixel format.
Definition pfnc_format.hpp:1050
@ Data64
Binary 64-bit data.
Definition pfnc_format.hpp:1034
@ Data32f
Binary 32-bit data floating point.
Definition pfnc_format.hpp:1026
@ Mono10
Monochrome 10-bit unpacked.
Definition pfnc_format.hpp:58
@ YCbCr709_422_10_CbYCrY
YCbCr 4:2:2 10-bit unpacked BT.709.
Definition pfnc_format.hpp:850
@ YCbCr411_8
YCbCr 4:1:1 8-bit.
Definition pfnc_format.hpp:702
@ RGB10_Planar
Red-Green-Blue 10-bit unpacked planar.
Definition pfnc_format.hpp:218
@ YCbCr422_10
YCbCr 4:2:2 10-bit unpacked.
Definition pfnc_format.hpp:718
@ Mono8
Monochrome 8-bit.
Definition pfnc_format.hpp:50
@ Coord3D_AC32f
3D coordinate A-C 32-bit floating point.
Definition pfnc_format.hpp:438
@ BGR10
Blue-Green-Red 10-bit unpacked.
Definition pfnc_format.hpp:290
@ Coord3D_AC8_Planar
3D coordinate A-C 8-bit planar.
Definition pfnc_format.hpp:410
@ BGRa10p
Blue-Green-Red-alpha 10-bit packed.
Definition pfnc_format.hpp:266
@ YCbCr601_422_12_CbYCrY
YCbCr 4:2:2 12-bit unpacked BT.601.
Definition pfnc_format.hpp:802
@ Coord3D_ABC32f
3D coordinate A-B-C 32-bit floating point.
Definition pfnc_format.hpp:398
@ RGB12
Red-Green-Blue 12-bit unpacked.
Definition pfnc_format.hpp:230
@ YCbCr2020_422_10p_CbYCrY
YCbCr 4:2:2 10-bit packed BT.2020.
Definition pfnc_format.hpp:922
@ Coord3D_B16
3D coordinate B 16-bit.
Definition pfnc_format.hpp:478
@ SCF1WBWG16
Sparse Color Filter #1 White-Blue-White-Green 16-bit unpacked.
Definition pfnc_format.hpp:590
@ YCbCr709_422_8_CbYCrY
YCbCr 4:2:2 8-bit BT.709.
Definition pfnc_format.hpp:842
@ B8
Blue 8-bit.
Definition pfnc_format.hpp:350
@ YCbCr601_422_10
YCbCr 4:2:2 10-bit unpacked BT.601.
Definition pfnc_format.hpp:782
@ Data32
Binary 32-bit data.
Definition pfnc_format.hpp:1022
@ R8
Red 8-bit.
Definition pfnc_format.hpp:318
@ YCbCr709_10p_CbYCr
YCbCr 4:4:4 10-bit packed BT.709.
Definition pfnc_format.hpp:822
@ YCbCr601_422_8_CbYCrY
YCbCr 4:2:2 8-bit BT.601.
Definition pfnc_format.hpp:778
@ SCF1WBWG10p
Sparse Color Filter #1 White-Blue-White-Green 10-bit packed.
Definition pfnc_format.hpp:574
@ YCbCr422_12
YCbCr 4:2:2 12-bit unpacked.
Definition pfnc_format.hpp:734
@ Data16
Binary 16-bit data.
Definition pfnc_format.hpp:1014
@ Data64s
Binary 64-bit data signed.
Definition pfnc_format.hpp:1042
@ RGBa14
Red-Green-Blue-alpha 14-bit unpacked.
Definition pfnc_format.hpp:198
@ BayerBG12
Bayer Blue-Green 12-bit unpacked.
Definition pfnc_format.hpp:94
@ YUV8_UYV
YUV 4:4:4 8-bit.
Definition pfnc_format.hpp:942
@ BayerGR16
Bayer Green-Red 16-bit,.
Definition pfnc_format.hpp:150
@ BayerGB10p
Bayer Green-Blue 10-bit packed.
Definition pfnc_format.hpp:114
@ SCF1WRWG10p
Sparse Color Filter #1 White-Red-White-Green 10-bit packed.
Definition pfnc_format.hpp:658
@ YCbCr709_8_CbYCr
YCbCr 4:4:4 8-bit BT.709.
Definition pfnc_format.hpp:814
@ SCF1WGWR16
Sparse Color Filter #1 White-Green-White-Red 16-bit.
Definition pfnc_format.hpp:646
@ Confidence1p
Confidence 1-bit packed.
Definition pfnc_format.hpp:510
@ BGRa8
Blue-Green-Red-alpha 8-bit.
Definition pfnc_format.hpp:258
@ G8
Green 8-bit.
Definition pfnc_format.hpp:334
@ Coord3D_AC12p
3D coordinate A-C 12-bit packed.
Definition pfnc_format.hpp:422
@ RGB10V1Packed
GigE Vision specific format, Red-Green-Blue 10-bit packed - variant 1.
Definition pfnc_format.hpp:998
@ YCbCr601_422_12
YCbCr 4:2:2 12-bit unpacked BT.601.
Definition pfnc_format.hpp:798
@ SCF1WRWG12p
Sparse Color Filter #1 White-Red-White-Green 12-bit packed.
Definition pfnc_format.hpp:666
@ BGR16
Blue-Green-Red 16-bit.
Definition pfnc_format.hpp:310
@ BGRa10
Blue-Green-Red-alpha 10-bit unpacked.
Definition pfnc_format.hpp:262
@ Coord3D_C16
3D coordinate C 16-bit.
Definition pfnc_format.hpp:498
@ BayerRG12Packed
GigE Vision specific format, Bayer Red-Green 12-bit packed.
Definition pfnc_format.hpp:994
@ BayerGB16
Bayer Green-Blue 16-bit.
Definition pfnc_format.hpp:126
@ Coord3D_AC32f_Planar
3D coordinate A-C 32-bit floating point planar.
Definition pfnc_format.hpp:442
@ Coord3D_B32f
3D coordinate B 32-bit floating point.
Definition pfnc_format.hpp:482
@ BGR8
Blue-Green-Red 8-bit.
Definition pfnc_format.hpp:286
@ RGB10p
Red-Green-Blue 10-bit packed.
Definition pfnc_format.hpp:222
@ YCbCr422_10_CbYCrY
YCbCr 4:2:2 10-bit unpacked.
Definition pfnc_format.hpp:722
@ YCbCr709_422_12p_CbYCrY
YCbCr 4:2:2 12-bit packed BT.709.
Definition pfnc_format.hpp:874
@ BayerBG10Packed
GigE Vision specific format, Bayer Blue-Green 10-bit packed.
Definition pfnc_format.hpp:966
@ SCF1WGWR10
Sparse Color Filter #1 White-Green-White-Red 10-bit unpacked.
Definition pfnc_format.hpp:626
@ BayerGR10Packed
GigE Vision specific format, Bayer Green-Red 10-bit packed.
Definition pfnc_format.hpp:982
@ G12
Green 12-bit.
Definition pfnc_format.hpp:342
@ SCF1WRWG16
Sparse Color Filter #1 White-Red-White-Green 16-bit.
Definition pfnc_format.hpp:674
@ Mono10p
Monochrome 10-bit packed.
Definition pfnc_format.hpp:62
@ Data64f
Binary 64-bit data floating point.
Definition pfnc_format.hpp:1038
@ Coord3D_A32f
3D coordinate A 32-bit floating point.
Definition pfnc_format.hpp:462
@ Data8
Binary 8-bit data.
Definition pfnc_format.hpp:1006
@ YCbCr601_422_10p_CbYCrY
YCbCr 4:2:2 10-bit packed BT.601.
Definition pfnc_format.hpp:794
@ SCF1WBWG14
Sparse Color Filter #1 White-Blue-White-Green 14-bit unpacked.
Definition pfnc_format.hpp:586
@ YCbCr2020_422_8
YCbCr 4:2:2 8-bit BT.2020.
Definition pfnc_format.hpp:902
@ G10
Green 10-bit.
Definition pfnc_format.hpp:338
@ B16
Blue 16-bit.
Definition pfnc_format.hpp:362
@ YCbCr709_422_10p_CbYCrY
YCbCr 4:2:2 10-bit packed BT.709.
Definition pfnc_format.hpp:858
@ Coord3D_ABC16
3D coordinate A-B-C 16-bit.
Definition pfnc_format.hpp:390
@ YCbCr2020_8_CbYCr
YCbCr 4:4:4 8-bit BT.2020.
Definition pfnc_format.hpp:878
@ RGB10p32
Red-Green-Blue 10-bit packed into 32-bit.
Definition pfnc_format.hpp:226
@ YCbCr709_422_12p
YCbCr 4:2:2 12-bit packed BT.709.
Definition pfnc_format.hpp:870
@ SCF1WGWR12
Sparse Color Filter #1 White-Green-White-Red 12-bit unpacked.
Definition pfnc_format.hpp:634
@ YCbCr709_422_12
YCbCr 4:2:2 12-bit unpacked BT.709.
Definition pfnc_format.hpp:862
@ Mono12Packed
GigE Vision specific format, Monochrome 12-bit packed.
Definition pfnc_format.hpp:962
@ Coord3D_AC10p
3D coordinate A-C 10-bit packed.
Definition pfnc_format.hpp:414
@ BayerBG16
Bayer Blue-Green 16-bit.
Definition pfnc_format.hpp:102
Root namespace for the Image Manager interface.
Definition c_bayer_to_rgb.h:17
char Char
Character type for wide characters or unicode characters.
Definition string.hpp:63
std::string String
String for wide characters or unicode characters.
Definition string.hpp:49
ColorModel
Color model that this image is using.
Definition global.hpp:176
@ CieLUV
Definition global.hpp:216
@ HLS
Definition global.hpp:224
@ CieLab
Definition global.hpp:220
@ MonoGuess
Definition global.hpp:184
@ HSI
Definition global.hpp:208
@ Mono
Definition global.hpp:192
@ HSV
Definition global.hpp:232
@ CieXYZ
Definition global.hpp:236
@ Unknown
Definition global.hpp:188
@ RGB
Definition global.hpp:200
@ YUV
Definition global.hpp:204
@ YCC
Definition global.hpp:228
@ YCbCr
Definition global.hpp:212
@ RGBGuess
Definition global.hpp:180
T rethrow_exception(T... args)