Update contrib.
1 // Copyright (c) 2005-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 #ifndef __MMFBTSWCODECWRAPPERINTERFACE_H__
17 #define __MMFBTSWCODECWRAPPERINTERFACE_H__
19 #include <mmfbthwdevice2.h>
21 class CMMFSwCodecDataPath; //forward reference
23 class CRoutingSoundPlayDevice;
24 class CRoutingSoundRecordDevice;
30 Custom interface class for play functionality created by the
31 CMMFSwCodecWrapper::CustomInterface() method. It provides
32 access to miscellaneous functionality such as volume settings.
33 Ports of the sw codec wrapper may do this differently eg. via EAP.
34 Note Users should not use RMdaDevSound::TCurrentSoundFormatBuf to send
35 across the sample rate and channels because 1) it would mean
36 MmfBtSwCodecWrapper.h would have to include mdasound.h 2)
37 the buffer size and encoding members are not required and 3) 3rd party ports
38 may not use RMdaDevSound.
40 Note also that this interface is just a simple interface to get
41 and set values. No checking is perfomed on the values sent (hence the
42 Set methods do not return an error code).
44 class MPlayCustomInterface
47 virtual void SetVolume(TUint aVolume) = 0;
48 virtual TUint Volume() = 0;
49 virtual TUint BytesPlayed() = 0;
50 virtual void SetVolumeRamp(const TTimeIntervalMicroSeconds& aRampDuration) = 0;
51 virtual TTimeIntervalMicroSeconds& VolumeRamp() = 0;
52 virtual TTaskConfig Caps() = 0;
60 Custom interface class for record functionality created by the
61 CMMFSwCodecWrapper::CustomInterface() method. It provides
62 access to miscelaneous functionality such as volume settings.
63 Ports of the sw codec wrapper may do this differently eg. via EAP.
64 Note: Users shoule not use RMdaDevSound::TCurrentSoundFormatBuf so send
65 across the sample rate and channels because 1) it would mean
66 MmfBtSwCodecWrapper.h would have to include mdasound.h 2)
67 the buffer size and encoding members are not required and 3) 3rd party ports
68 may not use RMdaDevSound.
70 Note also that this interface is just a simple interface to get
71 and set values. No checking is perfomed on the values sent (hence the
72 Set methods do not return an error code).
74 class MRecordCustomInterface
77 virtual void SetGain(TUint aGain) = 0;
78 virtual TUint Gain() = 0;
79 virtual TUint BytesRecorded() = 0;
82 #endif //__MMFBTSWCODECWRAPPERINTERFACE_H__