diff -r 000000000000 -r 1bce908db942 multimediacommscontroller/tsrc/mmfstub/src/SoundDevice_STUB.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/multimediacommscontroller/tsrc/mmfstub/src/SoundDevice_STUB.cpp Tue Feb 02 01:04:58 2010 +0200 @@ -0,0 +1,737 @@ +/* +* Copyright (c) 2001-2006 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + + + + +#include + +/* + * + * Default Constructor. + * + * + */ +CMMFDevSound::CMMFDevSound() + { + } + +/* + * -doxygen comments moved to header- + * + * Destructor. + * + * Deletes all objects and releases all resource owned by this + * instance. + * + */ +EXPORT_C CMMFDevSound::~CMMFDevSound() + { + } + +/* + * -doxygen comments moved to header- + * + * Constructs, and returns a pointer to, a new CMMFDevSound object. + * + * Leaves on failure. + * + */ +EXPORT_C CMMFDevSound* CMMFDevSound::NewL() + { + CMMFDevSound* self = new (ELeave) CMMFDevSound; + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop(); + return self; + } + +/* + * -doxygen comments moved to header- + * + * Second phase constructor. + * + */ +void CMMFDevSound::ConstructL() + { + } + +/* + * -doxygen comments moved to header- + * + * Initializes CMMFDevSound object to play and record PCM16 raw audio data + * with sampling rate of 8 KHz. + * + * On completion of Initialization, calls InitializeComplete() on + * aDevSoundObserver. + * + * Leaves on failure. + * + * @param "aDevSoundObserver" + * A reference to DevSound Observer instance. + * + * @param "aMode" + * Mode for which this object will be used. + * + */ +EXPORT_C void CMMFDevSound::InitializeL(MDevSoundObserver& aDevSoundObserver, TMMFState aMode) + + { + } + +/* + * -doxygen comments moved to header- + * + * Initializes DevSound object for the mode aMode for processing audio data + * with hardware device aHWDev. + * + * On completion of Initialization, the observer will be notified via call back + * InitializeComplete(). + * + * Leaves on failure. + * + * @param "aDevSoundObserver" + * A reference to DevSound Observer instance. + * + * @param "aHWDev" + * CMMFHwDevice implementation identifier. + * + * @param "aMode" + * Mode for which this object will be used. + * + */ +EXPORT_C void CMMFDevSound::InitializeL(MDevSoundObserver& aDevSoundObserver, TUid aHWDev, TMMFState aMode) + { + } + +/* + * -doxygen comments moved to header- + * + * Initializes DevSound object for the mode aMode for processing audio data + * with hardware device supporting FourCC aDesiredFourCC. + * + * On completion of Initialization, the observer will be notified via call back + * InitializeComplete(). + * + * Leaves on failure. + * + * @param "aDevSoundObserver" + * A reference to DevSound Observer instance. + * + * @param "aDesiredFourCC" + * CMMFHwDevice implementation FourCC. + * + * @param "aMode" + * Mode for which this object will be used. + * + */ +EXPORT_C void CMMFDevSound::InitializeL(MDevSoundObserver& aDevSoundObserver, + TFourCC aDesiredFourCC, TMMFState aMode) + { + } + +/* + * -doxygen comments moved to header- + * + * Returns the supported Audio settings. + * + * @return "TMMFCapabilities" + * Device settings. + * + */ +EXPORT_C TMMFCapabilities CMMFDevSound::Capabilities() + { + return TMMFCapabilities(); + } + +/* + * -doxygen comments moved to header- + * + * Returns the current audio settings. + * + * @return "TMMFCapabilities" + * Device settings. + * + */ +EXPORT_C TMMFCapabilities CMMFDevSound::Config() const + { + return TMMFCapabilities(); + } + +/* + * -doxygen comments moved to header- + * + * Configure CMMFDevSound object for the settings in aConfig. + * + * Use this to set sampling rate, Encoding and Mono/Stereo. + * + * @param "aConfig" + * Attribute values to which CMMFDevSound object will be configured to. + * + */ +EXPORT_C void CMMFDevSound::SetConfigL(const TMMFCapabilities& aConfig) + { + } + +/* + * -doxygen comments moved to header- + * + * Returns an integer representing the maximum volume. + * + * This is the maximum value which can be passed to CMMFDevSound::SetVolume. + * + * @return "TInt" + * The maximum volume. This value is platform dependent but is always + * greater than or equal to one. + * + */ +EXPORT_C TInt CMMFDevSound::MaxVolume() + { + return 100; + } + +/* + * -doxygen comments moved to header- + * + * Returns an integer representing the current volume. + * + * @return "TInt" + * The current volume level. + * + */ +EXPORT_C TInt CMMFDevSound::Volume() + { + return 50; + } + +/* + * -doxygen comments moved to header- + * + * Changes the current playback volume to a specified value. + * + * The volume can be changed before or during playback and is effective + * immediately. + * + * @param "aVolume" + * The volume setting. This can be any value from zero to the value + * returned by a call to CMMFDevSound::MaxVolume(). If the + * volume is not within this range, the volume is automatically set to + * minimum or maximum value based on the value that is being passed. + * Setting a zero value mutes the sound. Setting the maximum value + * results in the loudest possible sound. + * + */ +EXPORT_C void CMMFDevSound::SetVolume(TInt aVolume) + { + } + +/* + * -doxygen comments moved to header- + * + * Returns an integer representing the maximum gain. + * + * This is the maximum value which can be passed to CMMFDevSound::SetGain. + * + * @return "TInt" + * The maximum gain. This value is platform dependent but is always + * greater than or equal to one. + * + */ +EXPORT_C TInt CMMFDevSound::MaxGain() + { + return 100; + } + +/* + * -doxygen comments moved to header- + * + * Returns an integer representing the current gain. + * + * @return "TInt" + * The current gain level. + * + */ +EXPORT_C TInt CMMFDevSound::Gain() + { + return 50; + } + +/* + * -doxygen comments moved to header- + * + * Changes the current recording gain to a specified value. + * + * The gain can be changed before or during recording and is effective + * immediately. + * + * @param "TInt aGain" + * The gain setting. This can be any value from zero to the value + * returned by a call to CMMFDevSound::MaxGain(). If the + * volume is not within this range, the gain is automatically set to + * minimum or maximum value based on the value that is being passed. + * Setting a zero value mutes the sound. Setting the maximum value + * results in the loudest possible sound. + * + */ +EXPORT_C void CMMFDevSound::SetGain(TInt aGain) + { + } + +/* + * -doxygen comments moved to header- + * + * Returns the speaker balance set for playing. + * + * Leaves on failure. + * + * @param "aLeftPrecentage" + * On return contains the left speaker volume percentage. + * + * @param "aRightPercentage" + * On return contains the right speaker volume percentage. + * + */ +EXPORT_C void CMMFDevSound::GetPlayBalanceL(TInt& aLeftPercentage, TInt& aRightPercentage) + { + aLeftPercentage = 50; + aRightPercentage = 50; + } + +/* + * -doxygen comments moved to header- + * + * Sets the speaker balance for playing. + * + * The speaker balance can be changed before or during playback and is + * effective immediately. + * + * @param "aLeftPercentage" + * On return contains left speaker volume perecentage. This can be any + * value from zero to 100. Setting a zero value mutes the sound on left + * speaker. + * + * @param "aRightPercentage" + * On return contains right speaker volume perecentage. This can be any + * value from zero to 100. Setting a zero value mutes the sound on + * right speaker. + * + */ +EXPORT_C void CMMFDevSound::SetPlayBalanceL(TInt aLeftPercentage, TInt aRightPercentage) + { + } + +/* + * -doxygen comments moved to header- + * + * Returns the microphone gain balance set for recording. + * + * Leaves on failure. + * + * @param "aLeftPercentage" + * On return contains the left microphone gain percentage. + * + * @param "aRightPercentage" + * On return contains the right microphone gain percentage. + * + */ +EXPORT_C void CMMFDevSound::GetRecordBalanceL(TInt& aLeftPercentage, TInt& aRightPercentage) + { + } + +/* + * -doxygen comments moved to header- + * + * Sets the microphone gain balance for recording. + * + * The microphone gain balance can be changed before or during recording and + * is effective immediately. + * + * @param "aLeftPercentage" + * Left microphone gain precentage. This can be any value from zero to + * 100. Setting a zero value mutes the gain on left microphone. + * + * @param "aRightPercentage" + * Right microphone gain precentage. This can be any value from zero to + * 100. Setting a zero value mutes the gain on right microphone. + * + */ +EXPORT_C void CMMFDevSound::SetRecordBalanceL(TInt aLeftPercentage, TInt aRightPercentage) + { + } + +/* + * -doxygen comments moved to header- + * + * Initializes audio device and start play process. This method queries and + * acquires the audio policy before initializing audio device. If there was an + * error during policy initialization, PlayError() method will be called on + * the observer with error code KErrAccessDenied, otherwise BufferToBeFilled() + * method will be called with a buffer reference. After reading data into the + * buffer reference passed, the client should call PlayData() to play data. + * + * The amount of data that can be played is specified in + * CMMFBuffer::RequestSize(). Any data that is read into buffer beyond this + * size will be ignored. + * + * Leaves on failure. + * + */ +EXPORT_C void CMMFDevSound::PlayInitL() + { + } + +/* + * -doxygen comments moved to header- + * + * Initializes audio device and start record process. This method queries and + * acquires the audio policy before initializing audio device. If there was an + * error during policy initialization, RecordError() method will be called on + * the observer with error code KErrAccessDenied, otherwise BufferToBeEmptied() + * method will be called with a buffer reference. This buffer contains recorded + * or encoded data. After processing data in the buffer reference passed, the + * client should call RecordData() to continue recording process. + * + * The amount of data that is available is specified in + * CMMFBuffer::RequestSize(). + * + * Leaves on failure. + * + */ +EXPORT_C void CMMFDevSound::RecordInitL() + { + } + +/* + * -doxygen comments moved to header- + * + * Plays data in the buffer at the current volume. The client should fill + * the buffer with audio data before calling this method. The Observer gets + * reference to buffer along with callback BufferToBeFilled(). When playing of + * the audio sample is complete, successfully or otherwise, the method + * PlayError() on observer is called. + * + */ +EXPORT_C void CMMFDevSound::PlayData() + { + } + +/* + * -doxygen comments moved to header- + * + * Contine the process of recording. Once the buffer is filled with recorded + * data, the Observer gets reference to buffer along with callback + * BufferToBeEmptied(). After processing the buffer (copying over to a + * different buffer or writing to file) the client should call this + * method to continue recording process. + * + */ +EXPORT_C void CMMFDevSound::RecordData() + { + } + +/* + * -doxygen comments moved to header- + * + * Stops the ongoing operation (Play, Record, TonePlay, Convert) + * + */ +EXPORT_C void CMMFDevSound::Stop() + { + } + +/* + * -doxygen comments moved to header- + * + * Temporarily Stops the ongoing operation (Play, Record, TonePlay, Convert) + * + */ +EXPORT_C void CMMFDevSound::Pause() + { + } + +/* + * -doxygen comments moved to header- + * + * Returns the sample recorded so far. + * + * @return "TInt" + * Returns the samples recorded. + * + */ +EXPORT_C TInt CMMFDevSound::SamplesRecorded() + { + return 10; + } + +/* + * -doxygen comments moved to header- + * + * Returns the sample played so far. + * + * @return "TInt" + * Returns the samples recorded. + * + */ +EXPORT_C TInt CMMFDevSound::SamplesPlayed() + { + return 10; + } + + +/* + * -doxygen comments moved to header- + * + * Initializes audio device and start playing tone. Tone is played with + * frequency and for duration specified. + * + * Leaves on failure. + * + * @param "aFrequency" + * Frequency at with the tone will be played. + * + * @param "aDuration" + * The period over which the tone will be played. A zero value causes + * the no tone to be played (Verify this with test app). + * + */ +EXPORT_C void CMMFDevSound::PlayToneL(TInt aFrequency, const TTimeIntervalMicroSeconds& aDuration) + { + } + +/* + * -doxygen comments moved to header- + * + * Initializes audio device and start playing a dual tone. + * The tone consists of two sine waves of different frequencies summed together + * Dual Tone is played with specified frequencies and for specified duration. + * + * @param "aFrequencyOne" + * First frequency of dual tone + * + * @param "aFrequencyTwo" + * Second frequency of dual tone + * + * @param "aDuration" + * The period over which the tone will be played. A zero value causes + * the no tone to be played (Verify this with test app). + */ +EXPORT_C void CMMFDevSound::PlayDualToneL(TInt aFrequencyOne, TInt aFrequencyTwo, const TTimeIntervalMicroSeconds& aDuration) + { + } + +/* + * -doxygen comments moved to header- + * + * Initializes audio device and start playing DTMF string aDTMFString. + * + * Leaves on failure. + * + * @param "aDTMFString" + * DTMF sequence in a descriptor. + * + */ +EXPORT_C void CMMFDevSound::PlayDTMFStringL(const TDesC& aDTMFString) + { + } + +/* + * -doxygen comments moved to header- + * + * Initializes audio device and start playing tone sequence. + * + * Leaves on failure. + * + * @param "TDesC8& aData" + * Tone sequence in a descriptor. + * + */ +EXPORT_C void CMMFDevSound::PlayToneSequenceL(const TDesC8& aData) + { + } + +/* + * -doxygen comments moved to header- + * + * Initializes audio device and start playing the specified pre-defined tone + * sequence. + * + * Leaves on failure. + * + * @param "aSequenceNumber" + * The index identifying the specific pre-defined tone sequence. Index + * values are relative to zero. + * This can be any value from zero to the value returned by a call to + * FixedSequenceCount() - 1. + * The function raises a panic if sequence number is not within this + * range. + * @see FixedSequenceCount() + * + */ +EXPORT_C void CMMFDevSound::PlayFixedSequenceL(TInt aSequenceNumber) + { + } + +/* + * -doxygen comments moved to header- + * + * Defines the number of times the audio is to be repeated during the tone + * playback operation. + * + * A period of silence can follow each playing of tone. The tone playing can + * be repeated indefinitely. + * + * @param " aRepeatCount" + * The number of times the tone, together with the trailing silence, + * is to be repeated. If this is set to KMdaRepeatForever, then the + * tone, together with the trailing silence, is repeated indefinitely + * or until Stop() is called. If this is set to zero, then the tone is + * not repeated. + * + * Supported only during tone playing. + * + */ +EXPORT_C void CMMFDevSound::SetToneRepeats(TInt aRepeatCount, + const TTimeIntervalMicroSeconds& aRepeatTrailingSilence) + { + } + +/* + * -doxygen comments moved to header- + * + * Defines the duration of tone on, tone off and tone pause to be used during the + * DTMF tone playback operation. + * + * Supported only during tone playing. + * + * @param "aToneOnLength" + * The period over which the tone will be played. If this is set to + * zero, then the tone is not played. + * + * @param "aToneOffLength" + * The period over which the no tone will be played. + * + * @param "aPauseLength" + * The period over which the tone playing will be paused. + * + */ +EXPORT_C void CMMFDevSound::SetDTMFLengths(TTimeIntervalMicroSeconds32& aToneOnLength, + TTimeIntervalMicroSeconds32& aToneOffLength, + TTimeIntervalMicroSeconds32& aPauseLength) + { + } + +/* + * -doxygen comments moved to header- + * + * Defines the period over which the volume level is to rise smoothly from + * nothing to the normal volume level. + * + * @param "aRampDuration" + * The period over which the volume is to rise. A zero value causes + * the tone sample to be played at the normal level for the full + * duration of the playback. A value, which is longer than the duration + * of the tone sample, that the sample never reaches its normal + * volume level. + * + * + */ +EXPORT_C void CMMFDevSound::SetVolumeRamp(const TTimeIntervalMicroSeconds& aRampDuration) + { + } + +/* + * -doxygen comments moved to header- + * + * Defines the priority settings that should be used for this instance. + * + * @param "aPrioritySettings" + * An class type representing the client's priority, priority + * preference and state. + * + */ +EXPORT_C void CMMFDevSound::SetPrioritySettings(const TMMFPrioritySettings& aPrioritySettings) + { + } + +EXPORT_C TAny* CMMFDevSound::CustomInterface(TUid aInterface) + { + return NULL; + } + +/* + * -doxygen comments moved to header- + * + * Returns the number of available pre-defined tone sequences. + * + * This is the number of fixed sequence supported by DevSound by default. + * + * @return "TInt" + * The fixed sequence count. This value is implementation dependent + * but is always greater than or equal to zero. + * + */ +EXPORT_C TInt CMMFDevSound::FixedSequenceCount() + { + return 0; + } + +/* + * -doxygen comments moved to header- + * + * Returns the name assigned to a specific pre-defined tone sequence. + * + * This is the number of fixed sequence supported by DevSound by default. + * + * The function raises a panic if sequence number specified invalid. + * + * @return "TDesC&" + * A reference to a Descriptor containing the fixed sequence + * name indexed by aSequenceNumber. + * + * @param "aSequenceNumber" + * The index identifying the specific pre-defined tone sequence. Index + * values are relative to zero. + * This can be any value from zero to the value returned by a call to + * FixedSequenceCount() - 1. + * The function raises a panic if sequence number is not within this + * range. + * + * @see FixedSequenceCount() + * + */ +EXPORT_C const TDesC& CMMFDevSound::FixedSequenceName(TInt aSequenceNumber) + { + return KNullDesC; + } + + +/* + * -doxygen comments in header- + */ +EXPORT_C void CMMFDevSound::GetSupportedInputDataTypesL(RArray& aSupportedDataTypes,const TMMFPrioritySettings& aPrioritySettings) const + { + } + + +/* + * -doxygen comments in header- + */ +EXPORT_C void CMMFDevSound::GetSupportedOutputDataTypesL(RArray& aSupportedDataTypes, const TMMFPrioritySettings& aPrioritySettings) const + { + } + +