sl@0: /* sl@0: * Copyright (c) 2007 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: sl@0: sl@0: #include <ecom/implementationproxy.h> sl@0: #include <ecom/ecom.h> sl@0: #include <f32file.h> sl@0: #include "speechencoderconfigtestdevice.h" sl@0: #include "devsoundciutestdevices.hrh" sl@0: sl@0: /* sl@0: CMMFSpeechEncoderConfig implementation sl@0: */ sl@0: CMMFSpeechEncoderConfig* CMMFSpeechEncoderConfig::NewL() sl@0: { sl@0: CMMFSpeechEncoderConfig* self = new(ELeave) CMMFSpeechEncoderConfig(); sl@0: return self; sl@0: } sl@0: sl@0: CMMFSpeechEncoderConfig::~CMMFSpeechEncoderConfig() sl@0: { sl@0: } sl@0: sl@0: //Actual implementation of method SetBitrate sl@0: TInt CMMFSpeechEncoderConfig::SetBitrate(TUint aBitrate) sl@0: { sl@0: iBitrate = aBitrate; sl@0: return KErrNone; sl@0: } sl@0: sl@0: //Actual implementation of method GetBitrate sl@0: TInt CMMFSpeechEncoderConfig::GetBitrate (TUint& aBitrate) sl@0: { sl@0: aBitrate = iBitrate; sl@0: return KErrNone; sl@0: } sl@0: sl@0: //Actual implementation of method GetSupportedBitrates sl@0: TInt CMMFSpeechEncoderConfig::GetSupportedBitrates(RArray<TUint>& aSupportedBitrates) sl@0: { sl@0: aSupportedBitrates.Append(12345); sl@0: aSupportedBitrates.Append(23456); sl@0: aSupportedBitrates.Append(34567); sl@0: aSupportedBitrates.Append(45678); sl@0: aSupportedBitrates.Append(56789); sl@0: return KErrNone; sl@0: } sl@0: sl@0: //Actual implementation of method SetVadMode sl@0: TInt CMMFSpeechEncoderConfig::SetVadMode(TBool aVadModeOn) sl@0: { sl@0: iVadModeOn = aVadModeOn; sl@0: return KErrNone; sl@0: } sl@0: sl@0: //Actual implementation of method GetVadMode sl@0: TInt CMMFSpeechEncoderConfig::GetVadMode(TBool& aVadModeOn) sl@0: { sl@0: aVadModeOn = iVadModeOn; sl@0: return KErrNone; sl@0: } sl@0: sl@0: sl@0: /* sl@0: CSpeechEncoderConfigTestDevice implementation sl@0: */ sl@0: CMMFHwDevice* CSpeechEncoderConfigTestDevice::NewL() sl@0: { sl@0: CSpeechEncoderConfigTestDevice* self=new(ELeave) CSpeechEncoderConfigTestDevice(); sl@0: CleanupStack::PushL(self); sl@0: self->ConstructL(); sl@0: CleanupStack::Pop(self); sl@0: return self; sl@0: } sl@0: sl@0: CSpeechEncoderConfigTestDevice::~CSpeechEncoderConfigTestDevice() sl@0: { sl@0: delete iSpeechEncoderConfig; sl@0: } sl@0: sl@0: CSpeechEncoderConfigTestDevice::CSpeechEncoderConfigTestDevice() sl@0: { sl@0: } sl@0: sl@0: void CSpeechEncoderConfigTestDevice::ConstructL() sl@0: { sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::Start(TDeviceFunc /*aFuncCmd*/, TDeviceFlow /*aFlowCmd*/) sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::Stop() sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::Pause() sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::Init(THwDeviceInitParams& /*aDevInfo*/) sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TAny* CSpeechEncoderConfigTestDevice::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<TAny*>(this); sl@0: sl@0: // Now for the CIs we want to test... sl@0: if (aInterfaceId == KUidSpeechEncoderConfig) sl@0: { sl@0: if (!iSpeechEncoderConfig) sl@0: { sl@0: TRAPD(err, iSpeechEncoderConfig = CMMFSpeechEncoderConfig::NewL()); sl@0: if (err == KErrNone && iSpeechEncoderConfig) sl@0: { sl@0: MSpeechEncoderConfig* ptr = this; sl@0: ret = static_cast<TAny*>(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 CSpeechEncoderConfigTestDevice::ThisHwBufferFilled(CMMFBuffer& /*aFillBufferPtr*/) sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::ThisHwBufferEmptied(CMMFBuffer& /*aEmptyBufferPtr*/) sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::SetConfig(TTaskConfig& /*aConfig*/) sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::StopAndDeleteCodec() sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::DeleteCodec() sl@0: { sl@0: return 0; sl@0: } sl@0: sl@0: CMMFSwCodec& CSpeechEncoderConfigTestDevice::Codec() sl@0: { sl@0: return *iCodec; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::SetBitrate(TUint aBitrate) sl@0: { sl@0: TInt result = KErrBadHandle; sl@0: sl@0: if (iSpeechEncoderConfig) sl@0: { sl@0: result = iSpeechEncoderConfig->SetBitrate(aBitrate); sl@0: } sl@0: sl@0: return result; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::GetBitrate(TUint& aBitrate) sl@0: { sl@0: TInt result = KErrBadHandle; sl@0: sl@0: if (iSpeechEncoderConfig) sl@0: { sl@0: result = iSpeechEncoderConfig->GetBitrate(aBitrate); sl@0: } sl@0: sl@0: return result; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::GetSupportedBitrates(RArray<TUint>& aSupportedBitrates) sl@0: { sl@0: TInt result = KErrBadHandle; sl@0: sl@0: if (iSpeechEncoderConfig) sl@0: { sl@0: result = iSpeechEncoderConfig->GetSupportedBitrates(aSupportedBitrates); sl@0: } sl@0: sl@0: return result; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::SetVadMode(TBool aVadModeOn) sl@0: { sl@0: TInt result = KErrBadHandle; sl@0: sl@0: if (iSpeechEncoderConfig) sl@0: { sl@0: result = iSpeechEncoderConfig->SetVadMode(aVadModeOn); sl@0: } sl@0: sl@0: return result; sl@0: } sl@0: sl@0: TInt CSpeechEncoderConfigTestDevice::GetVadMode(TBool& aVadModeOn) sl@0: { sl@0: TInt result = KErrBadHandle; sl@0: sl@0: if (iSpeechEncoderConfig) sl@0: { sl@0: result = iSpeechEncoderConfig->GetVadMode(aVadModeOn); sl@0: } sl@0: sl@0: return result; sl@0: }