Symbian
Symbian Developer Library

SYMBIAN OS V9.4

Feedback

[Index] [Previous] [Next]

#include <playerinformationtargetobserver.h>
Link against: remconplayerinformation.lib
This item is not part of the S60 5th Edition SDK

Class MPlayerApplicationSettingsObserver

class MPlayerApplicationSettingsObserver;

Description

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

Members

Defined in MPlayerApplicationSettingsObserver:


Member functions


DefineAttributeL(TUint,TDesC8 &,RArray< TUint > &,RArray< TPtrC8 > &,TUint)

IMPORT_C void DefineAttributeL(TUint aAttributeID, TDesC8 &aAttributeText, RArray< TUint > &aValues, RArray< TPtrC8 > &aValueTexts, TUint aInitialValue);

Description

Define an attribute supported by this player. It will be included in future responses to the following PDUs: ListPlayerApplicationSettingAttributes, ListPlayerApplicationSettingValues, GetCurrentPlayerApplicationSettingValue, GetPlayerApplicationSettingAttributeText, GetPlayerApplicationSettingValueText,

Parameters

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

Leave codes

KErrNoMemory

if memory could not be allocated to store the copies of aAttributeID and relative settings

KErrNotSupported

if attribute or value is out of specification defined range, or aValueTexts is not equal length to aValues


SetAttributeL(TUint,TUint)

IMPORT_C void SetAttributeL(TUint aAttributeID, TUint aValue);

Description

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

Parameters

TUint aAttributeID

The specification or player defined attribute

TUint aValue

The current value

Leave codes

KErrNotFound

if the attribute is not defined, KErrArgument if the value is not valid according to the definition


DoDefineAttributeL(TUint,TDesC8 &,RArray< TUint > &,RArray< TPtrC8 > &,TUint)

private: virtual void DoDefineAttributeL(TUint aAttributeID, TDesC8 &aAttributeText, RArray< TUint > &aValues, RArray< TPtrC8 > &aValueTexts, TUint aInitialValue)=0;

Description

Parameters

TUint aAttributeID

TDesC8 &aAttributeText

RArray< TUint > &aValues

RArray< TPtrC8 > &aValueTexts

TUint aInitialValue


DoSetAttributeL(TUint,TUint)

private: virtual void DoSetAttributeL(TUint aAttributeID, TUint aValue)=0;

Description

Parameters

TUint aAttributeID

TUint aValue