epoc32/include/mmf/common/mmfbase.h
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
     1.1 --- a/epoc32/include/mmf/common/mmfbase.h	Wed Mar 31 12:27:01 2010 +0100
     1.2 +++ b/epoc32/include/mmf/common/mmfbase.h	Wed Mar 31 12:33:34 2010 +0100
     1.3 @@ -1,9 +1,9 @@
     1.4  // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
     1.5  // All rights reserved.
     1.6  // This component and the accompanying materials are made available
     1.7 -// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
     1.8 +// under the terms of "Eclipse Public License v1.0"
     1.9  // which accompanies this distribution, and is available
    1.10 -// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
    1.11 +// at the URL "http://www.eclipse.org/legal/epl-v10.html".
    1.12  //
    1.13  // Initial Contributors:
    1.14  // Nokia Corporation - initial contribution.
    1.15 @@ -55,30 +55,28 @@
    1.16  @publishedAll
    1.17  @released
    1.18  
    1.19 -A set of priority values which define the behaviour to be adopted by an
    1.20 -audio client if a higher priority client takes over the device.
    1.21 +Audio priority preference values. These are to be interpreted as discrete values and not separate flags.
    1.22  */
    1.23  enum TMdaPriorityPreference
    1.24  	{
    1.25  	/**
    1.26 -	No priority.
    1.27 +	Default value - no specific meaning.
    1.28  	*/
    1.29 -    EMdaPriorityPreferenceNone =	0x00000000,
    1.30 +    EMdaPriorityPreferenceNone =	0,
    1.31  	/**
    1.32 -	The audio data is time sensitive. The playback operation fails if it cannot happen when 
    1.33 -	requested but degraded output such as mixing or muting is allowed.
    1.34 +	The audio data is time sensitive. The playback operation may fail if it cannot happen when 
    1.35 +	requested but degraded output such as mixing or muting is allowed. Note that this is the
    1.36 +	default behaviour anyway, but this declaration is maintained for compatability.	*/
    1.37 +    EMdaPriorityPreferenceTime =	1,
    1.38 +	/**
    1.39 +    The audio data should be played at the best possible quality (for example, it should not be degraded by 
    1.40 +	muting or mixing). This is an advisory to the adaptation and can be ignored.
    1.41  	*/
    1.42 -    EMdaPriorityPreferenceTime =	0x00000001,
    1.43 +    EMdaPriorityPreferenceQuality = 2,
    1.44  	/**
    1.45 -    The audio data must be played at the best possible quality (for example, it must not be degraded by 
    1.46 -	muting or mixing). The playback operation is delayed until the sound device is available for exclusive use.
    1.47 +    The audio data is both time and quality sensitive. Identical in behaviour to EMdaPriorityPreferenceQuality.
    1.48  	*/
    1.49 -    EMdaPriorityPreferenceQuality = 0x00000002,
    1.50 -	/**
    1.51 -    The audio data is both time and quality sensitive. The playback operation fails if it cannot 
    1.52 -	happen immediately at the highest quality.
    1.53 -	*/
    1.54 -    EMdaPriorityPreferenceTimeAndQuality = EMdaPriorityPreferenceTime|EMdaPriorityPreferenceQuality
    1.55 +    EMdaPriorityPreferenceTimeAndQuality = 3
    1.56  	};
    1.57  
    1.58  /**
    1.59 @@ -115,36 +113,31 @@
    1.60  
    1.61  A class type representing the audio client's priority,
    1.62  priority preference and state settings.
    1.63 +
    1.64 +Note: The Priority Value and Priority Preference are used primarily when deciding what to do when
    1.65 +several audio clients attempt to play or record simultaneously. In addition to the Priority Value and Preference, 
    1.66 +the adaptation may consider other parameters such as the SecureId and Capabilities of the client process. 
    1.67 +Whatever, the decision  as to what to do in such situations is up to the audio adaptation, and may
    1.68 +vary between different phones. Portable applications are advised not to assume any specific behaviour. 
    1.69 +
    1.70  */
    1.71  class TMMFPrioritySettings
    1.72  	{
    1.73  public:
    1.74  	TMMFPrioritySettings();
    1.75  	/**
    1.76 -	Absolute priority of a client of the MMF Server.
    1.77 -
    1.78 -	Used by the policy server to determine which client should gain access to the sound device.
    1.79 -
    1.80 -	The priority which should be an integer in the range -100 to +100.
    1.81 +    The Priority Value - this client's relative priority. This is a value between EMdaPriorityMin and 
    1.82 +    EMdaPriorityMax and represents a relative priority. A higher value indicates a more important request.
    1.83  	*/
    1.84  	TInt iPriority;
    1.85  
    1.86  	/**
    1.87 -    The priority preference that expresses the nature of the priority that can be none, 
    1.88 -	time (or speed), quality or both time and quality.
    1.89 -
    1.90 -	If this is set to EMdaPriorityPreferenceTime then the audio data is time sensitive. The playback 
    1.91 -	operation fails if it cannot happen when requested but degraded output such as mixing or muting 
    1.92 -	is allowed.
    1.93 -
    1.94 -	If this is set to EMdaPriorityPreferenceQuality then the audio data must be played at the best possible 
    1.95 -	quality (for example, it must not be degraded by muting or mixing). The playback operation is delayed
    1.96 -	until the sound device is available for exclusive use.
    1.97 -
    1.98 -	If this is set to EMdaPriorityPreferenceTimeAndQuality then the audio data is both time and quality 
    1.99 -	sensitive. The playback operation fails if it cannot happen immediately at the highest quality.
   1.100 +    The Priority Preference - an additional audio policy parameter. The suggested default is 
   1.101 +    EMdaPriorityPreferenceNone. Further values are given by TMdaPriorityPreference, and additional 
   1.102 +    values may be supported by given phones and/or platforms, but should not be depended upon by 
   1.103 +    portable code.
   1.104  	*/
   1.105 -	TMdaPriorityPreference iPref;
   1.106 +	TInt iPref;
   1.107  
   1.108  	/**
   1.109      The state of the MMF player such as idle, playing, recording and so on. See the TMMFState enum for possible states.