os/mm/devsound/devsoundrefplugin/src/plugin/audio/MMFAudioCodecImplementationProxy.cpp
Update contrib.
2 * Copyright (c) 1997-2002 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
18 #include <ecom/ecom.h>
19 #include <ecom/implementationproxy.h> // For making it ECom plugin
20 #include <mmf/plugin/mmfhwdeviceimplementationuids.hrh>
21 #include "MMFpcm16ToPcm16HwDevice.h"
22 #include "MMFpcm16ToPcmU8HwDevice.h"
23 #include "MMFpcmU8ToPcm16HwDevice.h"
24 #include "MmfMuLawToPcm16hwDevice.h"
25 #include "MmfALawToPcm16HwDevice.h"
26 #include "MmfPcm16toAlawhwDevice.h"
27 #include "mmfpcm16toMulawhwdevice.h"
28 #include "mmfpcm16SwapEndianhwdevice.h"
29 #include "MMFpcm16ToPcmU8HwDevice.h"
30 #include "mmfpcmU16TopcmS16HwDevice.h"
31 #include "mmfpcmU16BeToPcmS16HwDevice.h"
32 #include "mmfpcmS8ToPcmS16HwDevice.h"
33 #include "mmfpcmS16topcmU16Codec.h"
34 #include "mmfpcmS16PcmS8HwDevice.h"
35 #include "mmfpcm16topcmU16BEHwDevice.h"
36 #include "MmfImaAdpcmtopcm16hwdevice.h"
37 #include "mmfpcmU16BeToPcmS16HwDevice.h"
38 #include "mmfpcm16ToImaAdpcm.h"
42 // _________________________________________________________________________
43 // Exported proxy for instantiation method resolution
44 // Define the interface UIDs
46 const TImplementationProxy ImplementationTable[] =
48 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDevicePCM16ToPCM16, CMMFPcm16ToPcm16HwDevice::NewL),
49 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDevicePCM16ToPCMU8, CMMFPcm16ToPcmU8HwDevice::NewL),
50 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDevicePCMU8ToPCM16, CMMFPcmU8ToPcm16HwDevice::NewL),
51 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDeviceMulawToPCM16, CMMFMulawToPcm16CodecHwDevice::NewL),
52 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDeviceAlawToPCM16, CMMFAlawToPcm16CodecHwDevice::NewL),
53 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDevicePCM16ToMuLaw, CMMFPcm16ToMulawHwDevice::NewL),
54 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDevicePCM16ToALaw, CMMFPcm16ToAlawHwDevice::NewL),
55 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDevicePCM16toPCM16B, CMMFPcm16SwapEndianHwDevice::NewL ),
56 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDeviceS16ToPCMU8, CMMFPcm16ToPcmU8HwDevice::NewL ),
57 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDeviceS16ToPCMU16, CMMFPcm16ToPcmU16HwDevice::NewL ),
58 IMPLEMENTATION_PROXY_ENTRY(KMMFUidHwDevicePCM16toPCMU16B, CMMFPcm16ToPcmU16BEHwDevice::NewL),
59 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDevicePCM8ToPCM16, CMMFPcm8ToPcm16HwDevice::NewL ),
60 IMPLEMENTATION_PROXY_ENTRY(KMMFUidHwDevicePCM16toPCMU16B, CMMFPcm16ToPcmU16BEHwDevice::NewL ),
61 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDeviceS16ToPCMU16, CMMFPcm16ToPcmU16HwDevice::NewL ),
62 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDeviceU16ToPCMS16, CMMFPcmU16ToPcm16HwDevice::NewL ),
63 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDeviceS16ToPCMS8, CMMFPcmS16ToPcmS8HwDevice::NewL ),
64 IMPLEMENTATION_PROXY_ENTRY(KMMFUidHwDevicePCM16BtoPCM16, CMMFPcm16SwapEndianHwDevice::NewL),
65 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDeviceU16BEToPCMS16, CMMFPcmU16BeToPcmS16HwDevice::NewL),
66 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDevicePCM16ToIMAADPCM, CMMFPcm16ToImaAdpcmHwDevice::NewL),
67 IMPLEMENTATION_PROXY_ENTRY(KMmfUidHwDeviceIMAADPCMToPCM16, CMMFImaAdpcmToPcm16CodecHwDevice::NewL),
68 IMPLEMENTATION_PROXY_ENTRY(KMMFUidHwDevicePCMU16toPCMU16B, CMMFPcm16SwapEndianHwDevice::NewL),
69 IMPLEMENTATION_PROXY_ENTRY(KMMFUidHwDevicePCMU16BtoPCMU16, CMMFPcm16SwapEndianHwDevice::NewL),
73 Exported function, returns a pointer to implemenation table.
76 Reference to table count.
78 @return Pointer to the implementation table.
80 EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
82 aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy);
83 return ImplementationTable;