# examples/SysLibs/ECom/InterfaceImplementation/Proxy.cpp

    00001 // Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
    00002 // All rights reserved.
    00003 // This component and the accompanying materials are made available
    00004 // under the terms of "Eclipse Public License v1.0"
    00005 // which accompanies this distribution, and is available
    00006 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
    00007 //
    00008 // Initial Contributors:
    00009 // Nokia Corporation - initial contribution.
    00010 //
    00011 // Contributors:
    00012 //
    00013 // Description:
    00014 //
    00015
    00016 #include <e32std.h>
    00017 #include <implementationproxy.h>
    00018
    00019 #include "CImplementationClassOne.h"
    00020 #include "CImplementationClassTwo.h"
    00021
    00022 // Map the interface UIDs to implementation factory functions
    00023 const TImplementationProxy ImplementationTable[] =
    00024         {
    00025                 IMPLEMENTATION_PROXY_ENTRY(0x10009DC3,  CImplementationClassOne::NewL),
    00026                 IMPLEMENTATION_PROXY_ENTRY(0x10009DC4,  CImplementationClassTwo::NewL)
    00027         };
    00028
    00029 // Exported proxy for instantiation method resolution
    00030 EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
    00031         {
    00032         aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy);
    00033
    00034         return ImplementationTable;
    00035         }
    00036