os/mm/mmlibs/mmfw/tsrc/mmfunittest/DevSoundTest/CIPlugins/src/g729encoderconfigtestdevice.cpp
Update contrib.
1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
16 #include <ecom/implementationproxy.h>
17 #include <ecom/ecom.h>
19 #include "g729encoderconfigtestdevice.h"
20 #include "devsoundciutestdevices.hrh"
23 CMMFG729EncoderConfig implementation
25 CMMFG729EncoderConfig* CMMFG729EncoderConfig::NewL()
27 CMMFG729EncoderConfig* self = new(ELeave) CMMFG729EncoderConfig();
31 CMMFG729EncoderConfig::~CMMFG729EncoderConfig()
35 //Actual implementation of method SetVadMode
36 TInt CMMFG729EncoderConfig::SetVadMode(TBool aVadModeOn)
42 if ( KErrNone != (err = fs.Connect()) )
47 // this file name will be use on the testStep to compare the stored value.
48 _LIT(KFileName, "c:\\temp\\g729EncoderConfig.txt");
49 fs.MkDirAll(KFileName);
51 if ( KErrNone != (err = file.Replace(fs, KFileName, EFileWrite)) )
57 data.Format(_L8("%d"), aVadModeOn);
66 //Actual implementation of method GetVadMode
67 TInt CMMFG729EncoderConfig::GetVadMode(TBool& aVadModeOn)
73 if ( KErrNone != (err = fs.Connect()) )
78 // this file name will be use on the testStep to compare the stored value.
79 _LIT(KFileName, "c:\\temp\\g729EncoderConfig.txt");
81 if ( KErrNone != (err = file.Open(fs, KFileName, EFileRead)) )
93 aVadModeOn = (data.Compare(_L8("0")) == 0) ? EFalse : ETrue;
100 CG729EncoderConfigTestDevice implementation
102 CMMFHwDevice* CG729EncoderConfigTestDevice::NewL()
104 CG729EncoderConfigTestDevice* self=new(ELeave) CG729EncoderConfigTestDevice();
105 CleanupStack::PushL(self);
107 CleanupStack::Pop(self);
111 CG729EncoderConfigTestDevice::~CG729EncoderConfigTestDevice()
113 delete iG729EncoderConfig;
116 CG729EncoderConfigTestDevice::CG729EncoderConfigTestDevice()
120 void CG729EncoderConfigTestDevice::ConstructL()
124 TInt CG729EncoderConfigTestDevice::Start(TDeviceFunc /*aFuncCmd*/, TDeviceFlow /*aFlowCmd*/)
129 TInt CG729EncoderConfigTestDevice::Stop()
134 TInt CG729EncoderConfigTestDevice::Pause()
139 TInt CG729EncoderConfigTestDevice::Init(THwDeviceInitParams& /*aDevInfo*/)
144 TAny* CG729EncoderConfigTestDevice::CustomInterface(TUid aInterfaceId)
146 // Just return something non-NULL to keep the
147 // DevSound initialisation process happy
148 TAny* ret = static_cast<TAny*>(this);
150 // Now for the CIs we want to test...
151 if (aInterfaceId == KUidG729EncoderIntfc)
153 if (!iG729EncoderConfig)
155 TRAPD(err, iG729EncoderConfig = CMMFG729EncoderConfig::NewL());
156 if (err == KErrNone && iG729EncoderConfig)
158 MG729EncoderIntfc* ptr = this;
159 ret = static_cast<TAny*>(ptr);
171 TInt CG729EncoderConfigTestDevice::ThisHwBufferFilled(CMMFBuffer& /*aFillBufferPtr*/)
176 TInt CG729EncoderConfigTestDevice::ThisHwBufferEmptied(CMMFBuffer& /*aEmptyBufferPtr*/)
181 TInt CG729EncoderConfigTestDevice::SetConfig(TTaskConfig& /*aConfig*/)
186 TInt CG729EncoderConfigTestDevice::StopAndDeleteCodec()
191 TInt CG729EncoderConfigTestDevice::DeleteCodec()
196 CMMFSwCodec& CG729EncoderConfigTestDevice::Codec()
201 TInt CG729EncoderConfigTestDevice::SetVadMode(TBool aVadModeOn)
203 TInt result = KErrBadHandle;
205 if (iG729EncoderConfig)
207 result = iG729EncoderConfig->SetVadMode(aVadModeOn);
213 TInt CG729EncoderConfigTestDevice::GetVadMode(TBool& aVadModeOn)
215 TInt result = KErrBadHandle;
217 if (iG729EncoderConfig)
219 result = iG729EncoderConfig->GetVadMode(aVadModeOn);