Symbian
Symbian OS Library

SYMBIAN OS V9.3

[Index] [Spacer] [Previous] [Next]



Location: bassnd.h
Link against: bafl.lib

Class BaSystemSound

class BaSystemSound;

Description

API class to retrieve and modify the system sounds settings.

Note that SystemSoundFile() is now deprecated and will be removed in a future release. The filename it returns is no longer valid but is kept for backwards compatibility. The system sounds settings are no longer stored in a data file.

Members

Defined in BaSystemSound:
GetSound(), SetSoundL(), SystemSoundFile()


Member functions


GetSound()

static IMPORT_C TInt GetSound(RFs &aFsSession, const TBaSystemSoundType &aType, TBaSystemSoundInfo &aInfo);

Description

Gets sound information from storage.

Parameters

RFs &aFsSession

unused parameter kept for compatibility reason.

const TBaSystemSoundType &aType

unique identifier of the sound. aType encapsulates a major and optionally a minor UID. The major UID specifes the sound category while the minor UID specifies an instance of the category.

TBaSystemSoundInfo &aInfo

On return, the sound.

Return value

TInt

KErrNone if successful, or one of the system wide errors if unsuccessful.


SetSoundL()

Capability: WriteDeviceData Note only clients with WriteDeviceData capability can sucessfully call this API.

static IMPORT_C void SetSoundL(RFs &aFsSession, const TBaSystemSoundInfo &aInfo);

Description

Adds the specified sound to the system sound table if it does not already exist in the table. If the sound already exists then overwrite the entry in the sound table.

Parameters

RFs &aFsSession

unused parameter kept for backward compatibility.

const TBaSystemSoundInfo &aInfo

The sound to add to the system sound table.

Leave codes

KErrPermissionDenied

caller does not have WriteDeviceData capability.

KErrArgument

if the sound has not been initialized. Other system-wide error codes may also be returned.


SystemSoundFile()

static IMPORT_C TFileName SystemSoundFile();

Description

Returns the system sound filename.

This function is now deprecated. System sounds are now stored in Central Repository. The function still returns the file name, but the file is no longer read from nor written to. There is no guarantee that the file exists.

Client code which uses the filename for backup and restore purposes should be removed. Central Repository handles backup and restore of system sound settings.

Client code that uses the filename for change notification must use KSystemSoundRepositoryUID to connect to Central Repository and must register for group notification on system sound repository changes. For example, if you used code such as:

iFs.Connect() ;
TFileName soundFileName = BaSystemSound ::SystemSoundFile();
iFs.NotifyChange(ENotifyAll, iRequestStatus, soundFileName);

you would now use:

const Tuint32 KDoNotCareValue = 0 ;
const Tuint32 KAllMask = 0 ;
iRepository = CRepository ::NewL(KBaSsndRepositoryUid);
iRepository.NotifyRequest(KDoNotCareValue, KAllMask, iRequestStatus);

Return value

TFileName

See also: