X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Flib%2FLibCEC.cpp;h=449231d5fcc47028e2c284e75c0be0cbef24260a;hb=0b71487197ed7281dda06f53ecaf846f1fd7e942;hp=9b200a6556316a31aa803bc712dc22cacf44b90b;hpb=e1804a4e359f5e188a02705c85e7e666d1d1482e;p=deb_libcec.git diff --git a/src/lib/LibCEC.cpp b/src/lib/LibCEC.cpp index 9b200a6..449231d 100644 --- a/src/lib/LibCEC.cpp +++ b/src/lib/LibCEC.cpp @@ -447,6 +447,26 @@ void CLibCEC::AddCommand(const cec_command &command) AddLog(CEC_LOG_WARNING, "command buffer is full"); } +void CLibCEC::Alert(const libcec_alert type, const libcec_parameter ¶m) +{ + CLibCEC *instance = CLibCEC::GetInstance(); + if (!instance) + return; + CLockObject lock(instance->m_mutex); + + libcec_configuration config; + instance->GetCurrentConfiguration(&config); + + if (instance->m_callbacks && + config.clientVersion >= CEC_CLIENT_VERSION_1_6_0 && + instance->m_cec->IsInitialised() && + instance->m_callbacks->CBCecAlert != NULL) + instance->m_callbacks->CBCecAlert(instance->m_cbParam, type, param); + + if (type == CEC_ALERT_CONNECTION_LOST) + instance->Close(); +} + void CLibCEC::CheckKeypressTimeout(void) { if (m_iCurrentButton != CEC_USER_CONTROL_CODE_UNKNOWN && GetTimeMs() - m_buttontime > CEC_BUTTON_TIMEOUT) @@ -472,8 +492,8 @@ int CLibCEC::MenuStateChanged(const cec_menu_state newState) if (instance->m_callbacks && config.clientVersion >= CEC_CLIENT_VERSION_1_6_2 && - instance->m_callbacks->CBMenuStatusChanged) - iReturn = instance->m_callbacks->CBMenuStatusChanged(instance->m_cbParam, newState); + instance->m_callbacks->CBCecMenuStateChanged) + iReturn = instance->m_callbacks->CBCecMenuStateChanged(instance->m_cbParam, newState); return iReturn; } @@ -616,7 +636,7 @@ const char *CLibCEC::ToString(const cec_device_type type) bool CLibCEC::GetCurrentConfiguration(libcec_configuration *configuration) { - return m_cec->IsInitialised() && m_cec->GetCurrentConfiguration(configuration); + return m_cec->GetCurrentConfiguration(configuration); } bool CLibCEC::SetConfiguration(const libcec_configuration *configuration)