First public contribution.
1 // Copyright (c) 1997-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.
17 #include "MMFAlawToPcm16Codec.h"
18 #include "MMFPcm16ToAlawCodec.h"
19 #include "MMFPcm8ToPcm16Codec.h"
20 #include "MMFAudioS16ToPcms16Codec.h"
21 #include "MMFAudioS16ToPcmS8Codec.h"
22 #include "MMFAudioS16ToPcmU16BeCodec.h"
23 #include "MMFAudioS16ToPcmU16Codec.h"
24 #include "MMFAudioS16ToPcmU8Codec.h"
25 #include "MMFAudioS8ToPcmS16Codec.h"
26 #include "MMFAudioU16BeToPcmS16Codec.h"
27 #include "MMFAudioU16ToPcmS16Codec.h"
28 #include "MMFAudioU8ToPcmS16Codec.h"
29 #include "MMFImaAdPcmToPcm16Codec.h"
30 #include "MMFMuLawToPcm16Codec.h"
31 #include "MMFPcm16ToImaAdPcmCodec.h"
32 #include "MMFPcm16ToMuLawCodec.h"
33 #include "MMFImaAdStereoPcmToPcm16Codec.h"
34 #include "MMFPcm16ToImaAdPcmStereoCodec.h"
35 #include "MMFAudioPCM16SwapEndianCodec.h"
37 #include <ecom/implementationproxy.h>
38 #include <mmf/plugin/mmfcodecimplementationuids.hrh>
41 // __________________________________________________________________________
42 // Exported proxy for instantiation method resolution
43 // Define the interface UIDs
45 const TImplementationProxy ImplementationTable[] =
47 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecAlawToPCM16, CMMFAlawPcm16Codec::NewL),
48 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecPCM16ToAlaw, CMMFPcm16AlawCodec::NewL),
49 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecPCM8ToPCM16, CMMFPcm8Pcm16Codec::NewL),
50 IMPLEMENTATION_PROXY_ENTRY(KMMFUidCodecPCM16toPCM16B, CMMFAudio16PcmSwapEndianCodec::NewL),
51 IMPLEMENTATION_PROXY_ENTRY(KMMFUidCodecPCM16BtoPCM16, CMMFAudio16PcmSwapEndianCodec::NewL),
52 IMPLEMENTATION_PROXY_ENTRY(KMMFUidCodecPCMU16toPCMU16B, CMMFAudio16PcmSwapEndianCodec::NewL),
53 IMPLEMENTATION_PROXY_ENTRY(KMMFUidCodecPCMU16BtoPCMU16, CMMFAudio16PcmSwapEndianCodec::NewL),
54 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecAudioS16ToPCMS16, CMMFAudioS16PcmS16Codec::NewL),
55 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecAudioS16ToPCMS8, CMMFAudioS16PcmS8Codec::NewL),
56 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecAudioS16ToPCMU16BE, CMMFAudioS16PcmU16BECodec::NewL),
57 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecAudioS16ToPCMU16, CMMFAudioS16PcmU16Codec::NewL),
58 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecAudioS16ToPCMU8, CMMFAudioS16PcmU8Codec::NewL),
59 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecAudioU16BEToPCMS16, CMMFAudioU16BEPcmS16Codec::NewL),
60 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecAudioU16ToPCMS16, CMMFAudioU16PcmS16Codec::NewL),
61 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecAudioU8ToPCMS16, CMMFAudioU8PcmS16Codec::NewL),
62 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecIMAADPCMToPCM16, CMMFImaAdPcmPcm16Codec::NewL),
63 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecMulawToPCM16, CMMFMulawPcm16Codec::NewL),
64 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecPCM16ToIMAADPCM, CMMFPcm16ImaAdPcmCodec::NewL),
65 IMPLEMENTATION_PROXY_ENTRY(KMmfUidCodecPCM16ToMulaw, CMMFPcm16MulawCodec::NewL)
68 EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
70 aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy);
72 return ImplementationTable;