os/ossrv/syslibsapitest/syslibssvs/ecom/common/inc/TestEComInterface.h
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 /*
     2 * Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     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".
     8 *
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    11 *
    12 * Contributors:
    13 *
    14 * Description: 
    15 *
    16 */
    17 
    18 
    19 
    20 #if defined (_MSC_VER) && (_MSC_VER >= 1000)
    21 #pragma once
    22 #endif
    23 #if (!defined __TEST_ECOM_INTERFACE_H__)
    24 #define __TEST_ECOM_INTERFACE_H__
    25 
    26 #include <e32base.h>
    27 #include <ecom/ecom.h>
    28 
    29 #define CTestEComInterface_UID	0x2000371E
    30 
    31 
    32 class CTestEComInterface  : public CBase
    33 	{
    34 /**
    35 	@internalComponent
    36 	CTestEComInterface which is an example abstract class being representative 
    37 	of the concrete class which the client wishes to use.
    38 	It acts as a base, for a real class to provide all the 
    39 	functionality that a client requires.  
    40 	It supplies instantiation & destruction by using
    41 	the ECom framework, and functional services
    42 	by using the methods of the actual class.
    43  */
    44 public:
    45 	//The function which instantiates an object of this type 
    46 	//using aUid as a resolution parameter.
    47 	//(eg NewL for a CBase derived object).
    48 	static CTestEComInterface*	NewL(const TUid aUid);
    49 
    50 	//Standardised destructor.
    51 	virtual ~CTestEComInterface();
    52 
    53 	//Pure interface method
    54 	//Representative of a method provided on the interface by 
    55 	//the interface definer.
    56 	virtual void	DoMethod1L() = 0;
    57 
    58 	//Pure interface method
    59 	//Representative of a method provided on the interface by 
    60 	//the interface definer.
    61 	virtual TInt	DoMethod2L() = 0;
    62 
    63 protected:
    64 	//Default constructor
    65 	inline CTestEComInterface();
    66 
    67 	//Attributes
    68 public:
    69 	TUid	iDtor_ID_Key;
    70 	};
    71 
    72 #include "TestEComInterface.inl"
    73 
    74 #endif /* __TEST_ECOM_INTERFACE_H__ */