20 #if !defined(__EDID_PARSER_H__)
21 #define __EDID_PARSER_H__
26 namespace edid_parser {
30 EDID_STATUS_INVALID_PARAMETER,
31 EDID_STATUS_NOT_SUPPORTED,
32 EDID_STATUS_INVALID_HEADER,
33 EDID_STATUS_INVALID_CHECKSUM
41 enum edid_progressive_e {
47 HDR_standard_NONE = 0x0,
48 HDR_standard_HDR10 = 0x01,
49 HDR_standard_HLG = 0x02,
50 HDR_standard_DolbyVersion = 0x04,
51 HDR_standard_SDR = 0x08,
52 HDR_standard_Traditional_HDR = 0x10
59 edid_progressive_e progressive;
63 enum colorimetry_info_t {
64 COLORIMETRY_INFO_NONE = 0x0,
65 COLORIMETRY_INFO_XVYCC601 = 0x01,
66 COLORIMETRY_INFO_XVYCC709 = 0x02,
67 COLORIMETRY_INFO_SYCC601 = 0x04,
68 COLORIMETRY_INFO_ADOBEYCC601 = 0x08,
69 COLORIMETRY_INFO_ADOBERGB = 0x10,
70 COLORIMETRY_INFO_BT2020CL = 0x20,
71 COLORIMETRY_INFO_BT2020NCL = 0x40,
72 COLORIMETRY_INFO_BT2020RGB = 0x80,
73 COLORIMETRY_INFO_DCI_P3 = 0x100
79 uint8_t hdr_capabilities;
80 char manufacturer_name[4];
82 int32_t serial_number;
83 int32_t manufacture_week;
84 int32_t manufacture_year;
85 uint8_t edid_version[2];
86 uint8_t physical_address_a;
87 uint8_t physical_address_b;
88 uint8_t physical_address_c;
89 uint8_t physical_address_d;
90 char monitor_name[14];
91 uint32_t colorimetry_info;
94 edid_status_e EDID_Parse(
unsigned char* bytes,
size_t count,
edid_data_t* data_ptr);
95 edid_status_e EDID_Verify(
unsigned char* bytes,
size_t count);