cec: added HandleSystemAudioStatus()
[deb_libcec.git] / src / lib / implementations / CECCommandHandler.h
index 9ef20aee0bfd58e62ae6108ea2c6c9553f3c2dd7..7dea0c090ca23b1ad3763e025eb0c6532d1b85f1 100644 (file)
@@ -32,6 +32,7 @@
  */
 
 #include <cectypes.h>
+#include <vector>
 
 namespace CEC
 {
@@ -46,7 +47,20 @@ namespace CEC
     virtual bool HandleCommand(const cec_command &command);
     virtual cec_vendor_id GetVendorId(void) { return CEC_VENDOR_UNKNOWN; };
 
+    static const char *ToString(const cec_menu_state state);
+    static const char *ToString(const cec_deck_control_mode mode);
+    static const char *ToString(const cec_version version);
+    static const char *ToString(const cec_power_status status);
+    static const char *ToString(const cec_deck_info status);
+    static const char* ToString(const cec_logical_address address);
+    static const char* ToString(const cec_opcode opcode);
+    static const char *ToString(const cec_system_audio_status mode);
+    static const char *ToString(const cec_audio_status status);
+    static const char *ToString(const cec_vendor_id vendor);
+
   protected:
+    virtual bool HandleActiveSource(const cec_command &command);
+    virtual bool HandleDeckControl(const cec_command &command);
     virtual bool HandleDeviceCecVersion(const cec_command &command);
     virtual bool HandleDeviceVendorCommandWithId(const cec_command &command);
     virtual bool HandleDeviceVendorId(const cec_command &command);
@@ -58,19 +72,27 @@ namespace CEC
     virtual bool HandleGiveOSDName(const cec_command &command);
     virtual bool HandleGivePhysicalAddress(const cec_command &command);
     virtual bool HandleMenuRequest(const cec_command &command);
+    virtual bool HandleReportAudioStatus(const cec_command &command);
+    virtual bool HandleReportPhysicalAddress(const cec_command &command);
     virtual bool HandleReportPowerStatus(const cec_command &command);
     virtual bool HandleRequestActiveSource(const cec_command &command);
     virtual bool HandleRoutingChange(const cec_command &command);
+    virtual bool HandleRoutingInformation(const cec_command &command);
     virtual bool HandleSetMenuLanguage(const cec_command &command);
+    virtual bool HandleSetOSDName(const cec_command &command);
     virtual bool HandleSetStreamPath(const cec_command &command);
     virtual bool HandleSetSystemAudioModeRequest(const cec_command &command);
+    virtual bool HandleStandby(const cec_command &command);
+    virtual bool HandleSystemAudioStatus(const cec_command &command);
     virtual bool HandleGiveSystemAudioModeStatus(const cec_command &command);
     virtual bool HandleUserControlPressed(const cec_command &command);
     virtual bool HandleUserControlRelease(const cec_command &command);
     virtual void UnhandledCommand(const cec_command &command);
 
+    virtual unsigned int GetMyDevices(std::vector<CCECBusDevice *> &devices) const;
     virtual CCECBusDevice *GetDevice(cec_logical_address iLogicalAddress) const;
     virtual CCECBusDevice *GetDeviceByPhysicalAddress(uint16_t iPhysicalAddress) const;
+    virtual CCECBusDevice *GetDeviceByType(cec_device_type type) const;
 
     virtual void SetVendorId(const cec_command &command);
     CCECBusDevice *m_busDevice;