X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Flib%2FLibCEC.cpp;h=abc800c19cc528af2ff0029f43b6787a9f9a5625;hb=48a229b119ab50aab51bfaefe8b5930204ea2dcf;hp=23c4b18b544cd9be3886388389ab2b02b9e2c5a9;hpb=2abe74ebbd27d8c30060b3eebb363e10d3fbfd80;p=deb_libcec.git diff --git a/src/lib/LibCEC.cpp b/src/lib/LibCEC.cpp index 23c4b18..abc800c 100644 --- a/src/lib/LibCEC.cpp +++ b/src/lib/LibCEC.cpp @@ -36,12 +36,12 @@ #include "AdapterDetection.h" #include "CECProcessor.h" #include "util/StdString.h" -#include "util/timeutils.h" +#include "platform/timeutils.h" using namespace std; using namespace CEC; -CLibCEC::CLibCEC(const char *strDeviceName, cec_logical_address iLogicalAddress /* = CECDEVICE_PLAYBACKDEVICE1 */, int iPhysicalAddress /* = CEC_DEFAULT_PHYSICAL_ADDRESS */) : +CLibCEC::CLibCEC(const char *strDeviceName, cec_logical_address iLogicalAddress /* = CECDEVICE_PLAYBACKDEVICE1 */, uint16_t iPhysicalAddress /* = CEC_DEFAULT_PHYSICAL_ADDRESS */) : m_iCurrentButton(CEC_USER_CONTROL_CODE_UNKNOWN), m_buttontime(0) { @@ -51,6 +51,7 @@ CLibCEC::CLibCEC(const char *strDeviceName, cec_logical_address iLogicalAddress CLibCEC::~CLibCEC(void) { + Close(); delete m_cec; m_cec = NULL; @@ -58,10 +59,13 @@ CLibCEC::~CLibCEC(void) m_comm = NULL; } -bool CLibCEC::Open(const char *strPort, int iTimeoutMs /* = 10000 */) +bool CLibCEC::Open(const char *strPort, uint64_t iTimeoutMs /* = 10000 */) { if (!m_comm) + { + AddLog(CEC_LOG_ERROR, "no comm port"); return false; + } if (m_comm->IsOpen()) { @@ -225,7 +229,7 @@ void CLibCEC::SetCurrentButton(cec_user_control_code iButtonCode) m_buttontime = GetTimeMs(); } -DECLSPEC void * CECCreate(const char *strDeviceName, CEC::cec_logical_address iLogicalAddress /*= CEC::CECDEVICE_PLAYBACKDEVICE1 */, int iPhysicalAddress /* = CEC_DEFAULT_PHYSICAL_ADDRESS */) +DECLSPEC void * CECCreate(const char *strDeviceName, CEC::cec_logical_address iLogicalAddress /*= CEC::CECDEVICE_PLAYBACKDEVICE1 */, uint16_t iPhysicalAddress /* = CEC_DEFAULT_PHYSICAL_ADDRESS */) { return static_cast< void* > (new CLibCEC(strDeviceName, iLogicalAddress, iPhysicalAddress)); }