epoc32/include/mdaaudioinputstream.h
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
equal deleted inserted replaced
3:e1b950c65cb4 4:837f303aceeb
     1 
     1 
     2 // Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
     3 // All rights reserved.
     3 // All rights reserved.
     4 // This component and the accompanying materials are made available
     4 // This component and the accompanying materials are made available
     5 // 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
     5 // under the terms of "Eclipse Public License v1.0"
     6 // which accompanies this distribution, and is available
     6 // which accompanies this distribution, and is available
     7 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
     7 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     8 //
     8 //
     9 // Initial Contributors:
     9 // Initial Contributors:
    10 // Nokia Corporation - initial contribution.
    10 // Nokia Corporation - initial contribution.
    11 //
    11 //
    12 // Contributors:
    12 // Contributors:
   147 
   147 
   148 	@param  aCallBack
   148 	@param  aCallBack
   149 	        A callback to notify the client when the input stream has been initialised and is ready for 
   149 	        A callback to notify the client when the input stream has been initialised and is ready for 
   150 	        use. The caller must create a callback class which implements this interface.
   150 	        use. The caller must create a callback class which implements this interface.
   151 	@param  aPriority
   151 	@param  aPriority
   152 	        This client's relative priority. This is a value between EMdaPriorityMin and EMdaPriorityMax and 
   152 	        The Priority Value - this client's relative priority. This is a value between EMdaPriorityMin and 
   153 	        represents a relative priority. A higher value indicates a more important request.
   153 	        EMdaPriorityMax and represents a relative priority. A higher value indicates a more important request.
   154 	@param  aPref
   154     @param  aPref
   155 	        The required behaviour if a higher priority client takes over the sound output device.
   155             The Priority Preference - an additional audio policy parameter. The suggested default is 
       
   156             EMdaPriorityPreferenceNone. Further values are given by TMdaPriorityPreference, and additional 
       
   157             values may be supported by given phones and/or platforms, but should not be depended upon by 
       
   158             portable code.
   156 
   159 
   157 	@return A pointer to the audio input stream object.
   160 	@return A pointer to the audio input stream object.
   158 
   161 
   159 	@capability MultimediaDD
       
   160 	            A process requesting or using this method that has MultimediaDD capability will
       
   161 				always have precedence over a process that does not have MultimediaDD.
       
   162 	            
       
   163 	@capability	UserEnvironment
   162 	@capability	UserEnvironment
   164 			For recording - the requesting client process must have a 
   163 			For recording - the requesting client process must have a 
   165 			UserEnvironment capability.
   164 			UserEnvironment capability.
       
   165 			
       
   166 	Note: The Priority Value and Priority Preference are used primarily when deciding what to do when
       
   167 	several audio clients attempt to play or record simultaneously. In addition to the Priority Value and Preference, 
       
   168 	the adaptation may consider other parameters such as the SecureId and Capabilities of the client process. 
       
   169 	Whatever, the decision 	as to what to do in such situations is up to the audio adaptation, and may
       
   170 	vary between different phones. Portable applications are advised not to assume any specific behaviour. 
   166 	*/
   171 	*/
   167 	IMPORT_C static CMdaAudioInputStream* NewL(MMdaAudioInputStreamCallback& aCallBack,
   172 	IMPORT_C static CMdaAudioInputStream* NewL(MMdaAudioInputStreamCallback& aCallBack,
   168 		TInt aPriority,	TMdaPriorityPreference aPref);
   173 		TInt aPriority,	TInt aPref);
   169 
   174 
   170 	/**
   175 	/**
   171     Destructor.
   176     Destructor.
   172 
   177 
   173 	Frees all resources owned by the object prior to its destruction.
   178 	Frees all resources owned by the object prior to its destruction.
   242 	Sets the audio priority values.
   247 	Sets the audio priority values.
   243 
   248 
   244 	This function cannot be used while the stream object is open. It is intended for use before an Open()
   249 	This function cannot be used while the stream object is open. It is intended for use before an Open()
   245 	is issued, or between a previous Stop() and a new Open().
   250 	is issued, or between a previous Stop() and a new Open().
   246 
   251 
   247 	@param  aPriority
   252     @param  aPriority
   248 	        The priority level to apply, EMdaPriorityMin means the client can be interrupted by any other client, EMdaPriorityNormal
   253             The Priority Value.
   249 	        means the client is only interrupted by clients with a higher priority and EMdaPriorityMax means the client cannot be interrupted by
   254     @param  aPref
   250 	        other clients.
   255             The Priority Preference.
   251 	@param  aPref
   256 
   252 	        A set of priority values that define the behaviour to be adopted by a client using a sound device if a higher priority
   257     @see CMdaAudioInputStream::NewL()
   253 	        client takes over that device.
   258 	*/
   254 
   259 	IMPORT_C void SetPriority(TInt aPriority, TInt aPref);
   255 	@capability MultimediaDD
       
   256 	            A process requesting or using this method that has MultimediaDD capability will
       
   257 				always have precedence over a process that does not have MultimediaDD.
       
   258 	*/
       
   259 	IMPORT_C void SetPriority(TInt aPriority, TMdaPriorityPreference aPref);
       
   260 
   260 
   261 	/**
   261 	/**
   262 	Records streaming raw audio data.
   262 	Records streaming raw audio data.
   263 
   263 
   264 	If this is the first ReadL() after a successful Open() this function starts the audio recording process.
   264 	If this is the first ReadL() after a successful Open() this function starts the audio recording process.