+ return cec_parser->SetPhysicalAddress(iPhysicalAddress) ? 1 : 0;
+ return -1;
+}
+
+int cec_power_on_devices(cec_logical_address address /* = CECDEVICE_TV */)
+{
+ if (cec_parser)
+ return cec_parser->PowerOnDevices(address) ? 1 : 0;
+ return -1;
+}
+
+int cec_standby_devices(cec_logical_address address /* = CECDEVICE_BROADCAST */)
+{
+ if (cec_parser)
+ return cec_parser->StandbyDevices(address) ? 1 : 0;
+ return -1;
+}
+
+int cec_set_active_view(void)
+{
+ if (cec_parser)
+ return cec_parser->SetActiveView() ? 1 : 0;
+ return -1;
+}
+
+int cec_set_active_source(cec_device_type type)
+{
+ if (cec_parser)
+ return cec_parser->SetActiveSource(type) ? 1 : 0;
+ return -1;
+}
+
+int cec_set_deck_control_mode(cec_deck_control_mode mode, int bSendUpdate) {
+ if (cec_parser)
+ return cec_parser->SetDeckControlMode(mode, bSendUpdate == 1) ? 1 : 0;
+ return -1;
+}
+
+int cec_set_deck_info(cec_deck_info info, int bSendUpdate) {
+ if (cec_parser)
+ return cec_parser->SetDeckInfo(info, bSendUpdate == 1) ? 1 : 0;
+ return -1;
+
+}
+
+int cec_set_inactive_view(void)
+{
+ if (cec_parser)
+ return cec_parser->SetInactiveView() ? 1 : 0;
+ return -1;
+}
+
+int cec_set_menu_state(cec_menu_state state, int bSendUpdate) {
+ if (cec_parser)
+ return cec_parser->SetMenuState(state, bSendUpdate == 1) ? 1 : 0;
+ return -1;
+}
+
+int cec_set_osd_string(cec_logical_address iLogicalAddress, cec_display_control duration, const char *strMessage)
+{
+ if (cec_parser)
+ return cec_parser->SetOSDString(iLogicalAddress, duration, strMessage) ? 1 : 0;
+ return -1;
+}
+
+int cec_switch_monitoring(int bEnable)
+{
+ if (cec_parser)
+ return cec_parser->SwitchMonitoring(bEnable == 1) ? 1 : 0;
+ return -1;
+}
+
+cec_version cec_get_device_cec_version(cec_logical_address iLogicalAddress)
+{
+ if (cec_parser)
+ return cec_parser->GetDeviceCecVersion(iLogicalAddress);
+ return CEC_VERSION_UNKNOWN;
+}
+
+int cec_get_device_menu_language(cec_logical_address iLogicalAddress, cec_menu_language *language)
+{
+ if (cec_parser)
+ return cec_parser->GetDeviceMenuLanguage(iLogicalAddress, language) ? 1 : 0;
+ return -1;
+}
+
+uint64_t cec_get_device_vendor_id(cec_logical_address iLogicalAddress)
+{
+ if (cec_parser)
+ return cec_parser->GetDeviceVendorId(iLogicalAddress);
+ return 0;
+}
+
+uint16_t cec_get_device_physical_address(cec_logical_address iLogicalAddress)
+{
+ if (cec_parser)
+ return cec_parser->GetDevicePhysicalAddress(iLogicalAddress);
+ return 0;
+}
+
+cec_logical_address cec_get_active_source(void)
+{
+ if (cec_parser)
+ return cec_parser->GetActiveSource();
+ return CECDEVICE_UNKNOWN;