00001 // Copyright (c) 2001-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 #ifndef _CIMPLEMENTATIONCLASSONE__ 00017 #define _CIMPLEMENTATIONCLASSONE__ 00018 00019 #include <interface.h> 00020 00021 // An implementation of the CExampleInterface definition 00022 class CImplementationClassOne : public CExampleInterface 00023 { 00024 public: 00025 // Standardised safe construction which leaves nothing the cleanup stack. 00026 static CImplementationClassOne* NewL(TAny* aInitParams); 00027 // Destructor 00028 ~CImplementationClassOne(); 00029 00030 // Implementation of CExampleInterface 00031 void DoMethodL(TDes& aString); 00032 00033 private: 00034 // Construction 00035 CImplementationClassOne(TAny* aParams); 00036 void ConstructL(); 00037 00038 private: 00039 // Data to pass back from implementation to client 00040 HBufC* iDescriptor; 00041 // Parameters taken from client 00042 CExampleInterface::TExampleInterfaceInitParams* iInitParams; 00043 }; 00044 00045 #endif 00046