X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=include%2Fcec.h;h=82c0a603fd7455417aa03960705bd4f056a1bc08;hb=718b36327e63c34d6eaebacfe1d3c9cd76fc86ef;hp=8780857988852a7f25b1fe1aa6b9da608b597c4f;hpb=a4b8e3f0b62e289ad5e0e6bf58949bbdeed1c623;p=deb_libcec.git diff --git a/include/cec.h b/include/cec.h index 8780857..82c0a60 100644 --- a/include/cec.h +++ b/include/cec.h @@ -369,6 +369,25 @@ namespace CEC */ virtual cec_logical_addresses GetLogicalAddresses(void) = 0; + /*! + * @brief Get libCEC's current configuration. + * @param configuration The configuration. + * @return True when the configuration was updated, false otherwise. + */ + virtual bool GetCurrentConfiguration(libcec_configuration *configuration) = 0; + + /*! + * @return True when this device can persist the user configuration, false otherwise. + */ + virtual bool CanPersistConfiguration(void) = 0; + + /*! + * @brief Persist the given configuration in adapter (if supported) + * @brief The configuration to store. + * @return True when the configuration was persisted, false otherwise. + */ + virtual bool PersistConfiguration(libcec_configuration *configuration) = 0; + virtual const char *ToString(const cec_menu_state state) = 0; virtual const char *ToString(const cec_version version) = 0; virtual const char *ToString(const cec_power_status status) = 0; @@ -379,6 +398,7 @@ namespace CEC virtual const char *ToString(const cec_system_audio_status mode) = 0; virtual const char *ToString(const cec_audio_status status) = 0; virtual const char *ToString(const cec_vendor_id vendor) = 0; + virtual const char *ToString(const cec_client_version version) = 0; }; }; @@ -386,9 +406,17 @@ namespace CEC * @brief Load the CEC adapter library. * @param strDeviceName How to present this device to other devices. * @param deviceTypes The device types to use on the CEC bus. + * @param iPhysicalAddress The physical address to assume on the bus. If set to 0, libCEC will try to autodetect the address, with the data provided via SetHDMIPort() + * @return An instance of ICECAdapter or NULL on error. + */ +extern "C" DECLSPEC void * CECInit(const char *strDeviceName, CEC::cec_device_type_list deviceTypes, uint16_t iPhysicalAddress = 0); + +/*! + * @brief Load the CEC adapter library. + * @param configuration The configuration to pass to libCEC * @return An instance of ICECAdapter or NULL on error. */ -extern "C" DECLSPEC void * CECInit(const char *strDeviceName, CEC::cec_device_type_list devicesTypes); +extern "C" DECLSPEC void * CECInitialise(const CEC::libcec_configuration *configuration); /*! * @brief Unload the CEC adapter library.