os/mm/devsound/sounddevbt/src/Plugin/HwDevice/Audio/MmfBtAudioCodecImplementationProxy.cpp
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
sl@0
     1
// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
sl@0
     2
// All rights reserved.
sl@0
     3
// This component and the accompanying materials are made available
sl@0
     4
// under the terms of "Eclipse Public License v1.0"
sl@0
     5
// which accompanies this distribution, and is available
sl@0
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
sl@0
     7
//
sl@0
     8
// Initial Contributors:
sl@0
     9
// Nokia Corporation - initial contribution.
sl@0
    10
//
sl@0
    11
// Contributors:
sl@0
    12
//
sl@0
    13
// Description:
sl@0
    14
//
sl@0
    15
sl@0
    16
#include <ecom/ecom.h>
sl@0
    17
#include <ecom/implementationproxy.h> // For making it ECom plugin
sl@0
    18
#include <mmf/plugin/mmfbthwdeviceimplementationuids.hrh>
sl@0
    19
#include "MmfBtPcm16ToPcm16HwDevice.h"
sl@0
    20
#include "MmfBtPcm16ToPcmU8HwDevice.h"
sl@0
    21
#include "MmfBtPcmU8ToPcm16HwDevice.h"
sl@0
    22
#include "MmfBtMuLawToPcm16HwDevice.h"
sl@0
    23
#include "MmfBtALawToPcm16HwDevice.h"
sl@0
    24
#include "MmfBtPcm16ToAlawHwDevice.h"
sl@0
    25
#include "MmfBtPcm16ToMulawHwDevice.h"
sl@0
    26
#include "MmfBtPcm16SwapEndianHwDevice.h"
sl@0
    27
#include "MmfBtPcm16ToPcmU8HwDevice.h"
sl@0
    28
#include "MmfBtPcmU16ToPcmS16HwDevice.h"
sl@0
    29
#include "MmfBtPcmU16BeToPcmS16HwDevice.h"
sl@0
    30
#include "MmfBtPcmS8ToPcmS16HwDevice.h"
sl@0
    31
#include "MmfBtPcmS16ToPcmU16Codec.h"
sl@0
    32
#include "MmfBtPcmS16ToPcmS8HwDevice.h"
sl@0
    33
#include "MmfBtPcm16ToPcmU16BEHwDevice.h"
sl@0
    34
#include "MmfBtImaAdpcmToPcm16HwDevice.h"
sl@0
    35
#include "MmfBtPcmU16BeToPcmS16HwDevice.h"
sl@0
    36
#include "MmfBtPcm16ToImaAdpcm.h"
sl@0
    37
sl@0
    38
sl@0
    39
sl@0
    40
// _________________________________________________________________________
sl@0
    41
// Exported proxy for instantiation method resolution
sl@0
    42
// Define the interface UIDs
sl@0
    43
//
sl@0
    44
const TImplementationProxy ImplementationTable[] =
sl@0
    45
	{
sl@0
    46
        IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDevicePCM16ToPCM16,    CMMFPcm16ToPcm16HwDevice::NewL),
sl@0
    47
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDevicePCM16ToPCMU8,    CMMFPcm16ToPcmU8HwDevice::NewL),
sl@0
    48
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDevicePCMU8ToPCM16,    CMMFPcmU8ToPcm16HwDevice::NewL),
sl@0
    49
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDeviceMulawToPCM16,    CMMFMulawToPcm16CodecHwDevice::NewL),
sl@0
    50
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDeviceAlawToPCM16,     CMMFAlawToPcm16CodecHwDevice::NewL),
sl@0
    51
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDevicePCM16ToMuLaw,    CMMFPcm16ToMulawHwDevice::NewL),
sl@0
    52
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDevicePCM16ToALaw,     CMMFPcm16ToAlawHwDevice::NewL),
sl@0
    53
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDevicePCM16toPCM16B,   CMMFPcm16SwapEndianHwDevice::NewL ),		
sl@0
    54
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDeviceS16ToPCMU8,      CMMFPcm16ToPcmU8HwDevice::NewL ),
sl@0
    55
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDeviceS16ToPCMU16,     CMMFPcm16ToPcmU16HwDevice::NewL ),	
sl@0
    56
		IMPLEMENTATION_PROXY_ENTRY(KMMFUidBtHwDevicePCM16toPCMU16B,  CMMFPcm16ToPcmU16BEHwDevice::NewL),
sl@0
    57
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDevicePCM8ToPCM16,     CMMFPcm8ToPcm16HwDevice::NewL ),
sl@0
    58
		IMPLEMENTATION_PROXY_ENTRY(KMMFUidBtHwDevicePCM16toPCMU16B,  CMMFPcm16ToPcmU16BEHwDevice::NewL ),
sl@0
    59
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDeviceS16ToPCMU16,     CMMFPcm16ToPcmU16HwDevice::NewL ),
sl@0
    60
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDeviceU16ToPCMS16,     CMMFPcmU16ToPcm16HwDevice::NewL ),
sl@0
    61
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDeviceS16ToPCMS8,      CMMFPcmS16ToPcmS8HwDevice::NewL ),
sl@0
    62
		IMPLEMENTATION_PROXY_ENTRY(KMMFUidBtHwDevicePCM16BtoPCM16,   CMMFPcm16SwapEndianHwDevice::NewL),
sl@0
    63
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDeviceU16BEToPCMS16,   CMMFPcmU16BeToPcmS16HwDevice::NewL),
sl@0
    64
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDevicePCM16ToIMAADPCM, CMMFPcm16ToImaAdpcmHwDevice::NewL),
sl@0
    65
		IMPLEMENTATION_PROXY_ENTRY(KMmfUidBtHwDeviceIMAADPCMToPCM16, CMMFImaAdpcmToPcm16CodecHwDevice::NewL),
sl@0
    66
		IMPLEMENTATION_PROXY_ENTRY(KMMFUidBtHwDevicePCMU16toPCMU16B, CMMFPcm16SwapEndianHwDevice::NewL),
sl@0
    67
		IMPLEMENTATION_PROXY_ENTRY(KMMFUidBtHwDevicePCMU16BtoPCMU16, CMMFPcm16SwapEndianHwDevice::NewL),
sl@0
    68
    };
sl@0
    69
sl@0
    70
/**
sl@0
    71
Exported function, returns a pointer to implemenation table.
sl@0
    72
sl@0
    73
@param  aTableCount
sl@0
    74
        Reference to table count.
sl@0
    75
sl@0
    76
@return	Pointer to the implementation table.
sl@0
    77
*/
sl@0
    78
EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
sl@0
    79
	{
sl@0
    80
	aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy);
sl@0
    81
	return ImplementationTable;
sl@0
    82
    }