class MPlayerApplicationSettingsObserver |
This class is for supporting the player application settings PDUs in AVRCP1.3 specification section 5.2. The RegisterNotification PDU for EVENT_PLAYER_APPLICATION_SETTING_CHANGED is also supported through this API.
The media player should first define all the attributes it supports, using DefineAttributeL. When an attribute's value is changed by the media player, it should call SetAttributeL to inform the controller. When the controller changes a setting, the media player application receives a callback via the MPlayerApplicationSettingsNotify interface
Public Member Functions | |
---|---|
IMPORT_C void | DefineAttributeL(TUint, TDesC8 &, RArray< TUint > &, RArray< TPtrC8 > &, TUint) |
IMPORT_C void | SetAttributeL(TUint, TUint) |
Private Member Functions | |
---|---|
void | DoDefineAttributeL(TUint, TDesC8 &, RArray< TUint > &, RArray< TPtrC8 > &, TUint) |
void | DoSetAttributeL(TUint, TUint) |
IMPORT_C void | DefineAttributeL | ( | TUint | aAttributeID, |
TDesC8 & | aAttributeText, | |||
RArray< TUint > & | aValues, | |||
RArray< TPtrC8 > & | aValueTexts, | |||
TUint | aInitialValue | |||
) |
Define an attribute supported by this player. It will be included in future responses to the following PDUs: ListPlayerApplicationSettingAttributes, ListPlayerApplicationSettingValues, GetCurrentPlayerApplicationSettingValue, GetPlayerApplicationSettingAttributeText, GetPlayerApplicationSettingValueText, leave
KErrNoMemory if memory could not be allocated to store the copies of aAttributeID and relative settings
leave
KErrNotSupported if attribute or value is out of specification defined range, or aValueTexts is not equal length to aValues
TUint aAttributeID | The specification or player defined attribute |
TDesC8 & aAttributeText | The UTF8 text name of the attribute(allowed text length is 1-255) - the API will take a copy |
RArray< TUint > & aValues | The list of defined values |
RArray< TPtrC8 > & aValueTexts | The UTF8 text for each defined value(allowed text length is 1-255) - The API will make copies. |
TUint aInitialValue | The initial value for this attribute |
void | DoDefineAttributeL | ( | TUint | aAttributeID, |
TDesC8 & | aAttributeText, | |||
RArray< TUint > & | aValues, | |||
RArray< TPtrC8 > & | aValueTexts, | |||
TUint | aInitialValue | |||
) | [private, pure virtual] |
void | DoSetAttributeL | ( | TUint | aAttributeID, |
TUint | aValue | |||
) | [private, pure virtual] |
IMPORT_C void | SetAttributeL | ( | TUint | aAttributeID, |
TUint | aValue | |||
) |
Set the current value of a previously defined attribute This updates the cache and will cause completion of a pending EVENT_PLAYER_APPLICATION_SETTING_CHANGED notification PDU leave
KErrNotFound if the attribute is not defined, KErrArgument if the value is not valid according to the definition