epoc32/include/mmf/common/mmfbase.h
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
equal deleted inserted replaced
3:e1b950c65cb4 4:837f303aceeb
     1 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // 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
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     7 //
     8 // Initial Contributors:
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
     9 // Nokia Corporation - initial contribution.
    10 //
    10 //
    11 // Contributors:
    11 // Contributors:
    53 
    53 
    54 /**
    54 /**
    55 @publishedAll
    55 @publishedAll
    56 @released
    56 @released
    57 
    57 
    58 A set of priority values which define the behaviour to be adopted by an
    58 Audio priority preference values. These are to be interpreted as discrete values and not separate flags.
    59 audio client if a higher priority client takes over the device.
       
    60 */
    59 */
    61 enum TMdaPriorityPreference
    60 enum TMdaPriorityPreference
    62 	{
    61 	{
    63 	/**
    62 	/**
    64 	No priority.
    63 	Default value - no specific meaning.
    65 	*/
    64 	*/
    66     EMdaPriorityPreferenceNone =	0x00000000,
    65     EMdaPriorityPreferenceNone =	0,
    67 	/**
    66 	/**
    68 	The audio data is time sensitive. The playback operation fails if it cannot happen when 
    67 	The audio data is time sensitive. The playback operation may fail if it cannot happen when 
    69 	requested but degraded output such as mixing or muting is allowed.
    68 	requested but degraded output such as mixing or muting is allowed. Note that this is the
       
    69 	default behaviour anyway, but this declaration is maintained for compatability.	*/
       
    70     EMdaPriorityPreferenceTime =	1,
       
    71 	/**
       
    72     The audio data should be played at the best possible quality (for example, it should not be degraded by 
       
    73 	muting or mixing). This is an advisory to the adaptation and can be ignored.
    70 	*/
    74 	*/
    71     EMdaPriorityPreferenceTime =	0x00000001,
    75     EMdaPriorityPreferenceQuality = 2,
    72 	/**
    76 	/**
    73     The audio data must be played at the best possible quality (for example, it must not be degraded by 
    77     The audio data is both time and quality sensitive. Identical in behaviour to EMdaPriorityPreferenceQuality.
    74 	muting or mixing). The playback operation is delayed until the sound device is available for exclusive use.
       
    75 	*/
    78 	*/
    76     EMdaPriorityPreferenceQuality = 0x00000002,
    79     EMdaPriorityPreferenceTimeAndQuality = 3
    77 	/**
       
    78     The audio data is both time and quality sensitive. The playback operation fails if it cannot 
       
    79 	happen immediately at the highest quality.
       
    80 	*/
       
    81     EMdaPriorityPreferenceTimeAndQuality = EMdaPriorityPreferenceTime|EMdaPriorityPreferenceQuality
       
    82 	};
    80 	};
    83 
    81 
    84 /**
    82 /**
    85 @publishedAll
    83 @publishedAll
    86 @released
    84 @released
   113 @publishedAll
   111 @publishedAll
   114 @released
   112 @released
   115 
   113 
   116 A class type representing the audio client's priority,
   114 A class type representing the audio client's priority,
   117 priority preference and state settings.
   115 priority preference and state settings.
       
   116 
       
   117 Note: The Priority Value and Priority Preference are used primarily when deciding what to do when
       
   118 several audio clients attempt to play or record simultaneously. In addition to the Priority Value and Preference, 
       
   119 the adaptation may consider other parameters such as the SecureId and Capabilities of the client process. 
       
   120 Whatever, the decision  as to what to do in such situations is up to the audio adaptation, and may
       
   121 vary between different phones. Portable applications are advised not to assume any specific behaviour. 
       
   122 
   118 */
   123 */
   119 class TMMFPrioritySettings
   124 class TMMFPrioritySettings
   120 	{
   125 	{
   121 public:
   126 public:
   122 	TMMFPrioritySettings();
   127 	TMMFPrioritySettings();
   123 	/**
   128 	/**
   124 	Absolute priority of a client of the MMF Server.
   129     The Priority Value - this client's relative priority. This is a value between EMdaPriorityMin and 
   125 
   130     EMdaPriorityMax and represents a relative priority. A higher value indicates a more important request.
   126 	Used by the policy server to determine which client should gain access to the sound device.
       
   127 
       
   128 	The priority which should be an integer in the range -100 to +100.
       
   129 	*/
   131 	*/
   130 	TInt iPriority;
   132 	TInt iPriority;
   131 
   133 
   132 	/**
   134 	/**
   133     The priority preference that expresses the nature of the priority that can be none, 
   135     The Priority Preference - an additional audio policy parameter. The suggested default is 
   134 	time (or speed), quality or both time and quality.
   136     EMdaPriorityPreferenceNone. Further values are given by TMdaPriorityPreference, and additional 
   135 
   137     values may be supported by given phones and/or platforms, but should not be depended upon by 
   136 	If this is set to EMdaPriorityPreferenceTime then the audio data is time sensitive. The playback 
   138     portable code.
   137 	operation fails if it cannot happen when requested but degraded output such as mixing or muting 
       
   138 	is allowed.
       
   139 
       
   140 	If this is set to EMdaPriorityPreferenceQuality then the audio data must be played at the best possible 
       
   141 	quality (for example, it must not be degraded by muting or mixing). The playback operation is delayed
       
   142 	until the sound device is available for exclusive use.
       
   143 
       
   144 	If this is set to EMdaPriorityPreferenceTimeAndQuality then the audio data is both time and quality 
       
   145 	sensitive. The playback operation fails if it cannot happen immediately at the highest quality.
       
   146 	*/
   139 	*/
   147 	TMdaPriorityPreference iPref;
   140 	TInt iPref;
   148 
   141 
   149 	/**
   142 	/**
   150     The state of the MMF player such as idle, playing, recording and so on. See the TMMFState enum for possible states.
   143     The state of the MMF player such as idle, playing, recording and so on. See the TMMFState enum for possible states.
   151 	*/
   144 	*/
   152 	TMMFState iState;
   145 	TMMFState iState;