diff -r 000000000000 -r 667063e416a2 supl/locationomasuplpostester/epos_comasuplpostestermodulecfg/inc/epos_comasuplecomhandler.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/supl/locationomasuplpostester/epos_comasuplpostestermodulecfg/inc/epos_comasuplecomhandler.h Tue Feb 02 01:06:48 2010 +0200 @@ -0,0 +1,101 @@ +/* +* Copyright (c) 2005-2006 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: Intracts with ECom Framework. +* +*/ + +#ifndef C_COMASUPLECOMHANDLER_H +#define C_COMASUPLECOMHANDLER_H + +#include +#include +#include + +/** + * Intracts with ECom framework. + * + * Identifies all implementations associated with a particular + * Interface UId and stores it in an array. + * + * @lib PosTesterModuleCfg.lib + * @since S60 v3.1u + */ +class COMASuplEComHandler : public CBase + { + public: + static COMASuplEComHandler* NewL(const TInt aInterfaceUid); + virtual ~COMASuplEComHandler(); + /** + * Gets the list of all implementations associated with + * an Interface UId + * + * @since S60 v3.1u + * @return RImplInfoPtrArray&: Contains all implementations + * associated with the UId. + */ + const RImplInfoPtrArray& GetImplementationList(); + + /** + * Initializes the list of all implementations associated with + * an Interface UId. + * + * @since S60 v3.1u + * @return void + */ + void InitializeImplementationListL(); + + /** + * Closes session with ECom (FinalClose()) + * + * @since S60 v3.1u + * @return void + */ + void UnLoadImplementation(); + + protected: + /** + * Constructor + * + * @since S60 v3.1 + * @param aInterfaceUid: InterfaceUid + * @return + */ + COMASuplEComHandler(const TInt aInterfaceUid); + + private: + /** + * Two Phase constructor + * + * @since S60 v3.1 + * @return void + */ + void ConstructL(); + + private: + /** + * Contains list of Implementations identified by ECom Framework. + */ + RImplInfoPtrArray iImplementationList; + + /** + * Contains Interface Uid. + */ + TUid iInterfaceUid; + + /** + * identifer returned by ECom to identify an instance to the framework. + */ + TUid iDtorIdKey; + }; +#endif