X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Flib%2Fadapter%2FAdapterCommunication.h;h=b1762b7a111db0755c03ede6922cf4e7ac785ae8;hb=0c271bd0fc05728d0dd90065a064737a979f50d3;hp=03880b6ef921dafaa46657aa6069c2c56456c47b;hpb=b0a5e4fc9b66620b00f937f7e9a406bf22aaaf1d;p=deb_libcec.git diff --git a/src/lib/adapter/AdapterCommunication.h b/src/lib/adapter/AdapterCommunication.h index 03880b6..b1762b7 100644 --- a/src/lib/adapter/AdapterCommunication.h +++ b/src/lib/adapter/AdapterCommunication.h @@ -75,6 +75,12 @@ namespace CEC */ virtual bool HandleReceiveFailed(cec_logical_address initiator) = 0; + /*! + * @brief Callback method for IAdapterCommunication, called when a logical address that libCEC uses was taken by another device. + * @param oldAddress The logical address that was taken by another device. + */ + virtual void HandleLogicalAddressLost(cec_logical_address oldAddress) = 0; + virtual CLibCEC *GetLib(void) const = 0; }; @@ -200,6 +206,28 @@ namespace CEC */ virtual bool SupportsSourceLogicalAddress(const cec_logical_address address) = 0; + /*! + * @return The type of adapter that this instance is connected to. + */ + virtual cec_adapter_type GetAdapterType(void) = 0; + + /*! + * @return The (virtual) USB vendor id + */ + virtual uint16_t GetAdapterVendorId(void) const = 0; + + /*! + * @return The (virtual) USB product id + */ + virtual uint16_t GetAdapterProductId(void) const = 0; + + /*! + * @brief Marks the adapter as active or inactive source + * @param bSetTo True to mark as active source, false to mark as inactive source + * @param bClientUnregistered True when the client was unregistered, false when the device was explicitly marked as (in)active source + */ + virtual void SetActiveSource(bool bSetTo, bool bClientUnregistered) = 0; + IAdapterCommunicationCallback *m_callback; }; };