bool RegisterClient(CCECClient *client);
bool UnregisterClient(CCECClient *client);
void UnregisterClients(void);
+ uint16_t GetPhysicalAddressFromEeprom(void);
CCECClient *GetPrimaryClient(void);
CCECClient *GetClient(const cec_logical_address address);
bool SetDeckInfo(cec_deck_info info, bool bSendUpdate = true);
bool ActivateSource(uint16_t iStreamPath);
+ void SetActiveSource(bool bSetTo, bool bClientUnregistered);
bool PollDevice(cec_logical_address iAddress);
void SetStandardLineTimeout(uint8_t iTimeout);
uint8_t GetStandardLineTimeout(void);
void SwitchMonitoring(bool bSwitchTo);
bool AllocateLogicalAddresses(CCECClient* client);
+
+ uint16_t GetAdapterVendorId(void) const;
+ uint16_t GetAdapterProductId(void) const;
private:
bool OpenConnection(const char *strPort, uint16_t iBaudRate, uint32_t iTimeoutMs, bool bStartListening = true);
void SetCECInitialised(bool bSetTo = true);
std::map<cec_logical_address, CCECClient *> m_clients;
bool m_bMonitor;
CCECAllocateLogicalAddress* m_addrAllocator;
+ bool m_bStallCommunication;
};
};