#define CEC_POWER_STATE_REFRESH_TIME 30000
#define CEC_FW_VERSION_UNKNOWN 0xFFFF
+#define CEC_DEFAULT_SETTING_USE_TV_MENU_LANGUAGE 1
+#define CEC_DEFAULT_SETTING_POWER_ON_STARTUP 1
+#define CEC_DEFAULT_SETTING_POWER_OFF_SHUTDOWN 1
+#define CEC_DEFAULT_SETTING_POWER_OFF_SCREENSAVER 1
+#define CEC_DEFAULT_SETTING_POWER_OFF_ON_STANDBY 1
+
#define CEC_DEFAULT_TRANSMIT_RETRY_WAIT 500
#define CEC_DEFAULT_TRANSMIT_TIMEOUT 1000
#define CEC_DEFAULT_TRANSMIT_WAIT 2000
typedef struct libcec_configuration
{
- char strDeviceName[13]; /*!< how to name the device on the CEC bus */
- cec_device_type_list deviceTypes; /*!< the CEC device types to emulate */
- uint16_t iPhysicalAddress; /*!< the physical address of the CEC adapter */
- cec_logical_address baseDevice; /*!< the logical address of the device to which the adapter is connected. only used when iPhysicalAddress = 0 */
- uint8_t iHDMIPort; /*!< the HDMI port to which the adapter is connected. only used when iPhysicalAddress = 0 */
- cec_client_version clientVersion; /*!< the version of the client that is connecting */
+ char strDeviceName[13]; /*!< how to name the device on the CEC bus */
+ cec_device_type_list deviceTypes; /*!< the CEC device types to emulate */
+ uint16_t iPhysicalAddress; /*!< the physical address of the CEC adapter */
+ cec_logical_address baseDevice; /*!< the logical address of the device to which the adapter is connected. only used when iPhysicalAddress = 0 */
+ uint8_t iHDMIPort; /*!< the HDMI port to which the adapter is connected. only used when iPhysicalAddress = 0 */
+ cec_client_version clientVersion; /*!< the version of the client that is connecting */
+
+ // player specific settings
+ uint8_t bGetSettingsFromROM; /*!< true to get the settings from the ROM (if set, and a v2 ROM is present), false to use these settings. */
+ uint8_t bUseTVMenuLanguage; /*!< use the menu language of the TV in the player application */
+ uint8_t bPowerOnStartup; /*!< power on CEC devices when start the player application */
+ uint8_t bPowerOffShutdown; /*!< power off CEC devices when stopping the player application */
+ uint8_t bPowerOffScreensaver; /*!< put devices in standby mode when activating the screensaver */
+ uint8_t bPowerOffOnStandby; /*!< put this PC in standby mode when the TV is switched off */
- void * callbackParam; /*!< the object to pass along with a call of the callback methods. NULL to ignore */
- ICECCallbacks * callbacks; /*!< the callback methods to use. set this to NULL when not using callbacks */
+ void * callbackParam; /*!< the object to pass along with a call of the callback methods. NULL to ignore */
+ ICECCallbacks * callbacks; /*!< the callback methods to use. set this to NULL when not using callbacks */
#ifdef __cplusplus
void Clear(void)
baseDevice = (cec_logical_address)CEC_DEFAULT_BASE_DEVICE;
iHDMIPort = CEC_DEFAULT_HDMI_PORT;
clientVersion = CEC_CLIENT_VERSION_PRE_1_5;
+
+ bGetSettingsFromROM = 0;
+ bUseTVMenuLanguage = CEC_DEFAULT_SETTING_USE_TV_MENU_LANGUAGE;
+ bPowerOnStartup = CEC_DEFAULT_SETTING_POWER_ON_STARTUP;
+ bPowerOffShutdown = CEC_DEFAULT_SETTING_POWER_OFF_SHUTDOWN;
+ bPowerOffScreensaver = CEC_DEFAULT_SETTING_POWER_OFF_SCREENSAVER;
+ bPowerOffOnStandby = CEC_DEFAULT_SETTING_POWER_OFF_ON_STANDBY;
+
callbackParam = NULL;
callbacks = NULL;
}