diff -r 7259cf1302ad -r 169364e7e4b4 hti/hti_plat/hti_api/inc/HtiServicePluginInterface.h --- a/hti/hti_plat/hti_api/inc/HtiServicePluginInterface.h Tue Jul 06 16:05:13 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,115 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Interface defenition for HTI services -* -*/ - - -#ifndef SERVICEPLUGININTERFACE_H__ -#define SERVICEPLUGININTERFACE_H__ - -#include - -#include - -const TUid KHTIServiceInterfaceUid = {0x1020DEB7}; - - -class CHTIServicePluginInterface : public CBase, public MHtiMemoryObserver - { -public: //ECom specific methods (implemented as inline) - - /** - * Wraps ECom object instantitation - * plug-in loaded by its UID - * - * @param aUID service plugin implementation UDI - */ - static CHTIServicePluginInterface* NewL(const TUid aUID); - - /** - * Wraps ECom object instantitation - * default resovler is used - * - * @param aMatchString service plugin name - */ - static CHTIServicePluginInterface* NewL(const TDesC8& aMatchString); - - /** - * Wraps ECom object destruction - */ - virtual ~CHTIServicePluginInterface(); - -public: //Comm plugin interface methods - - /** - * This method is called by framework after the plugin was loaded and - * iDispatcher set. - */ - virtual void InitL(){}; - - /** - * Result indicates eiterh plug-in is able to process request - * (e.g. a plug-in doesn't have an outstanding request to async service). - * Framework calls this method before calling ProcessMessageL(). - * If plug-in is busy, request will be dispatched later. - * Typically, AO's CActive::IsActive() can be used - * in a overriden implementation. - * Default implementation returns EFalse. - */ - virtual TBool IsBusy(); - - /** - * Interface service - * implementation of service, should return ASAP. - * aMessage contan is service specific. - * - * @param aMessage message body destinated to a servive - * @param aPriority message priority - */ - virtual void ProcessMessageL(const TDesC8& aMessage, - THtiMessagePriority aPriority) = 0; - - virtual void Error(TInt /*aErrorCode*/, const TDesC8& /*aErrorDescription*/){}; - - /** - * Set dispatcher that used by services to send messages. - * - */ - virtual void SetDispatcher(MHtiDispatcher* aDispatcher); - -public: //from MHtiMemoryObserver - /** - * Empty implementation. - */ - virtual void NotifyMemoryChange(TInt /*aAvailableMemory*/){}; - -protected: - /** - * Pointer to a dispatcher. It is not availble during construction. - * If it should be used before starting process messages, InitL() - * must be overriden. - */ - MHtiDispatcher* iDispatcher; - -private: - /** - * Instance identifier key - */ - TUid iDtor_ID_Key; - }; - -#include - -#endif