@@ -139,23 +139,35 @@ struct vidcap_deltacast_dvi_state {
139139
140140static decltype (EEDDIDOK) CheckEEDID(BYTE pEEDIDBuffer[256 ]);
141141
142- const static map<VHD_DV_EEDID_PRESET, const char *> edid_presets = {
143- { VHD_DV_EEDID_EMPTY, " empty E-EDID - the host should force its output regardless of the DELTA-dvi E-EDID" },
144- { VHD_DV_EEDID_DVIA, " DVI-A E-EDID" },
145- { VHD_DV_EEDID_DVID, " DVI-D E-EDID" },
146- { VHD_DV_EEDID_HDMI, " HDMI E-EDID" },
147- { VHD_DV_EEDID_DVID_DUAL, " DVI-D E-EDID with dual-link formats" },
148- { VHD_DV_EEDID_HDMI_H4K, " HDMI H4K E-EDID" },
149- { VHD_DV_EEDID_DVID_H4K, " DVI-D H4K E-EDID" },
142+ static const char *
143+ get_edid_preset_name (VHD_DV_EEDID_PRESET preset)
144+ {
145+ switch (preset) {
146+ case VHD_DV_EEDID_EMPTY: return " empty E-EDID - the host should force its output regardless of the DELTA-dvi E-EDID" ;
147+ case VHD_DV_EEDID_DVIA: return " DVI-A E-EDID" ;
148+ case VHD_DV_EEDID_DVID: return " DVI-D E-EDID" ;
149+ case VHD_DV_EEDID_HDMI: return " HDMI E-EDID" ;
150+ case VHD_DV_EEDID_DVID_DUAL: return " DVI-D E-EDID with dual-link formats" ;
151+ case VHD_DV_EEDID_HDMI_H4K: return " HDMI H4K E-EDID" ;
152+ case VHD_DV_EEDID_DVID_H4K: return " DVI-D H4K E-EDID" ;
150153#if defined VHD_MIN_6_00
151- { VHD_DV_EEDID_HDMI_H4K2, " HDMI H4K2 E-EDID" },
152- { VHD_DV_EEDID_DVID_H4K2, " DVI-D H4K2 E-EDID" },
153- { VHD_DV_EEDID_DISPLAYPORT_1_2, " DisplayPort 1.2 E-EDID" },
154- { VHD_DV_EEDID_HDMI_FLEX_HMI, " HDMI FLEX-HMI E-EDID" },
155- { VHD_DV_EEDID_DVID_FLEX_HMI, " DVI-D FLEX-HMI E-EDID" },
154+ case VHD_DV_EEDID_HDMI_H4K2: return " HDMI H4K2 E-EDID" ;
155+ case VHD_DV_EEDID_DVID_H4K2: return " DVI-D H4K2 E-EDID" ;
156+ case VHD_DV_EEDID_DISPLAYPORT_1_2: return " DisplayPort 1.2 E-EDID" ;
157+ case VHD_DV_EEDID_HDMI_FLEX_HMI: return " HDMI FLEX-HMI E-EDID" ;
158+ case VHD_DV_EEDID_DVID_FLEX_HMI: return " DVI-D FLEX-HMI E-EDID" ;
156159#endif
157- { (VHD_DV_EEDID_PRESET) -1 , " avoid E-EDID loading" },
158- };
160+ #if defined VHD_MIN_6_30
161+ case VHD_DV_EEDID_HDMI_12GxC_HMI: return " HDMI 12G-xC-hmi E-EDID" ;
162+ case VHD_DV_EEDID_DVID_12GxC_HMI: return " DVI-D 12G-xC-hmi E-EDID" ;
163+ case VHD_DV_EEDID_HDMI_DELTA_HMI: return " HDMI DELTA-hmi E-EDID" ;
164+ case VHD_DV_EEDID_HDMI_DELTA_HMI_FRL3: return " HDMI DELTA-hmi E-EDID FRL1/2/3 Support" ;
165+ case VHD_DV_EEDID_HDMI_DELTA_HMI_FRL5: return " HDMI DELTA-hmi E-EDID FRL1/2/3/4/5 Support" ;
166+ #endif
167+ case NB_VHD_DV_EEDID_PRESET: abort ();
168+ }
169+ return nullptr ; // can occur if new presets add to SDK
170+ }
159171
160172static void
161173usage (bool full)
@@ -172,8 +184,14 @@ usage(bool full)
172184 << MAX_DELTA_CH << " )\n " ;
173185
174186 col () << SBOLD (" \t <preset>" ) << " may be one of following\n " ;
175- for (const auto &it : edid_presets) {
176- col () << SBOLD (" \t\t " << setw (2 ) << it.first ) << " - " << it.second << " \n " ;
187+ for (unsigned i = 0 ; i < NB_VHD_DV_EEDID_PRESET; ++i) {
188+ const char *preset_name =
189+ get_edid_preset_name ((VHD_DV_EEDID_PRESET) i);
190+ if (preset_name == nullptr ) {
191+ continue ;
192+ }
193+ col () << " \t\t " << setw (2 ) << SBOLD (i) << " - " << preset_name
194+ << " \n " ;
177195 }
178196
179197 col () << SBOLD (" \t <color_spec>" ) << " may be one of following\n " ;
0 commit comments