+
+ /*!
+ * @brief Transfer a changed configuration from libCEC to the client
+ * @param configuration The configuration to transfer
+ * @return 1 when ok, 0 otherwise
+ */
+ CBCecConfigurationChangedType CBCecConfigurationChanged;
+
+ /*!
+ * @brief Transfer a libcec alert message from libCEC to the client
+ * @param alert The alert type transfer.
+ * @param data Misc. additional information.
+ * @return 1 when ok, 0 otherwise
+ */
+ CBCecAlertType CBCecAlert;
+
+ /*!
+ * @brief Transfer a menu state change to the client.
+ * Transfer a menu state change to the client. If the command returns 1, then the change will be processed by
+ * the busdevice. If 0, then the state of the busdevice won't be changed, and will always be kept 'activated',
+ * so keypresses are always routed.
+ * @param newVal The new value.
+ * @return 1 when this change should be processed by the CCECBusDevice, false otherwise.
+ */
+ CBCecMenuStateChangedType CBCecMenuStateChanged;
+
+#ifdef __cplusplus
+ ICECCallbacks(void) { Clear(); }
+ ~ICECCallbacks(void) { Clear(); };
+
+ void Clear(void)
+ {
+ CBCecLogMessage = NULL;
+ CBCecKeyPress = NULL;
+ CBCecCommand = NULL;
+ CBCecConfigurationChanged = NULL;
+ CBCecAlert = NULL;
+ CBCecMenuStateChanged = NULL;
+ }
+#endif