sl@0: // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // sl@0: sl@0: #include sl@0: #include sl@0: #include sl@0: #include sl@0: #include "audiodspcontroltestdevice.h" sl@0: #include "devsoundciutestdevices.hrh" sl@0: sl@0: sl@0: /* sl@0: CMMFAudioDspControl implementation sl@0: */ sl@0: CMMFAudioDspControl* CMMFAudioDspControl::NewL() sl@0: { sl@0: CMMFAudioDspControl* self = new(ELeave) CMMFAudioDspControl(); sl@0: return self; sl@0: } sl@0: sl@0: CMMFAudioDspControl::~CMMFAudioDspControl() sl@0: { sl@0: } sl@0: sl@0: //Actual implementation of method MmdspcGetAudioPlaybackInfo sl@0: TInt CMMFAudioDspControl::MmdspcGetAudioPlaybackInfo (TInt64& aSamplesPlayed, TInt64& aSystemTime, TUint& aB, TUint& aT) sl@0: { sl@0: aSamplesPlayed = 999; sl@0: aSystemTime = 999; sl@0: aB = 999; sl@0: aT = 999; sl@0: sl@0: return KErrNone; sl@0: } sl@0: sl@0: //Actual implementation of method MmdspcAcceptRecordBuffersInvalidFollowingStop sl@0: TInt CMMFAudioDspControl::MmdspcAcceptRecordBuffersInvalidFollowingStop() sl@0: { sl@0: return KErrNone; sl@0: } sl@0: sl@0: //Actual implementation of method MmdspcAcceptPlaybackBuffersInvalidFollowingStop sl@0: TInt CMMFAudioDspControl::MmdspcAcceptPlaybackBuffersInvalidFollowingStop() sl@0: { sl@0: return KErrNone; sl@0: } sl@0: sl@0: sl@0: /* sl@0: implementation sl@0: */ sl@0: CMMFHwDevice* CAudioDspControlTestDevice::NewL() sl@0: { sl@0: CAudioDspControlTestDevice* self=new(ELeave) CAudioDspControlTestDevice(); sl@0: CleanupStack::PushL(self); sl@0: self->ConstructL(); sl@0: CleanupStack::Pop(self); sl@0: return self; sl@0: } sl@0: sl@0: CAudioDspControlTestDevice::~CAudioDspControlTestDevice() sl@0: { sl@0: delete iAudioDspControl; sl@0: } sl@0: sl@0: CAudioDspControlTestDevice::CAudioDspControlTestDevice() sl@0: { sl@0: } sl@0: sl@0: void CAudioDspControlTestDevice::ConstructL() sl@0: { sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::Start(TDeviceFunc /*aFuncCmd*/, TDeviceFlow /*aFlowCmd*/) sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::Stop() sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::Pause() sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::Init(THwDeviceInitParams& /*aDevInfo*/) sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TAny* CAudioDspControlTestDevice::CustomInterface(TUid aInterfaceId) sl@0: { sl@0: // Just return something non-NULL to keep the sl@0: // DevSound initialisation process happy sl@0: TAny* ret = static_cast(this); sl@0: sl@0: // Now for the CIs we want to test... sl@0: if (aInterfaceId == KUidDSPControl) sl@0: { sl@0: if (!iAudioDspControl) sl@0: { sl@0: TRAPD(err, iAudioDspControl = CMMFAudioDspControl::NewL()); sl@0: if (err == KErrNone && iAudioDspControl) sl@0: { sl@0: MMMFDSPControl* ptr = this; sl@0: ret = static_cast(ptr); sl@0: } sl@0: else sl@0: { sl@0: ret = NULL; sl@0: } sl@0: } sl@0: } sl@0: sl@0: return ret; sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::ThisHwBufferFilled(CMMFBuffer& /*aFillBufferPtr*/) sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::ThisHwBufferEmptied(CMMFBuffer& /*aEmptyBufferPtr*/) sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::SetConfig(TTaskConfig& /*aConfig*/) sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::StopAndDeleteCodec() sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::DeleteCodec() sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: CMMFSwCodec& CAudioDspControlTestDevice::Codec() sl@0: { sl@0: return *iCodec; sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::MmdspcGetAudioPlaybackInfo (TInt64& aSamplesPlayed, TInt64& aSystemTime, TUint& aB, TUint& aT) sl@0: { sl@0: TInt result = KErrBadHandle; sl@0: sl@0: if (iAudioDspControl) sl@0: { sl@0: result = iAudioDspControl->MmdspcGetAudioPlaybackInfo (aSamplesPlayed, aSystemTime, aB, aT); sl@0: } sl@0: sl@0: return result; sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::MmdspcAcceptRecordBuffersInvalidFollowingStop() sl@0: { sl@0: TInt result = KErrBadHandle; sl@0: sl@0: if (iAudioDspControl) sl@0: { sl@0: result = iAudioDspControl->MmdspcAcceptRecordBuffersInvalidFollowingStop(); sl@0: } sl@0: sl@0: return result; sl@0: } sl@0: sl@0: TInt CAudioDspControlTestDevice::MmdspcAcceptPlaybackBuffersInvalidFollowingStop() sl@0: { sl@0: TInt result = KErrBadHandle; sl@0: sl@0: if (iAudioDspControl) sl@0: { sl@0: result = iAudioDspControl->MmdspcAcceptPlaybackBuffersInvalidFollowingStop(); sl@0: } sl@0: sl@0: return result; sl@0: }