+
+ /*!
+ * @return The build date in seconds since epoch, or 0 when no (valid) reply was received.
+ */
+ virtual uint32_t GetFirmwareBuildDate(void) = 0;
+
+ /*!
+ * @return True when this adapter is using the latest firmware build, or when the latest firmware build for this adapter type is unknown. False otherwise.
+ */
+ virtual bool IsRunningLatestFirmware(void) = 0;
+
+ /*!
+ * @return True when the control mode has been set, false otherwise.
+ */
+ virtual bool SetControlledMode(bool controlled) = 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(const libcec_configuration &configuration) = 0;
+
+ /*!
+ * @brief Get the persisted configuration from the adapter (if supported)
+ * @param configuration The updated configuration.
+ * @return True when the configuration was updated, false otherwise.
+ */
+ virtual bool GetConfiguration(libcec_configuration &configuration) = 0;
+
+ /*!
+ * @return The name of the port
+ */
+ virtual CStdString GetPortName(void) = 0;
+
+ /*!
+ * @return The physical address, if the adapter supports this. 0 otherwise.
+ */
+ virtual uint16_t GetPhysicalAddress(void) = 0;
+
+ IAdapterCommunicationCallback *m_callback;