diff -r 000000000000 -r 14df0fbfcc4e sapi_applicationmanager/appmanagerservice/inc/appmanagercommon.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sapi_applicationmanager/appmanagerservice/inc/appmanagercommon.h Mon Mar 30 12:51:10 2009 +0300 @@ -0,0 +1,294 @@ +/* +* Copyright (c) 2007-2007 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "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: It contains the declarations of interface classes and filter param class +* +* +*/ + + + +#ifndef __APPMANAGERCOMMON_H__ +#define __APPMANAGERCOMMON_H__ + +#include // TDesC +#include // CBase +#include // Rfile +#include +#include + +class CLauncherObserver; +const TInt KArrayGranularity = 5; + +_LIT(KForeground ,"Foreground"); +_LIT(KStandalone,"Standalone"); +/** +* This is an interface class which provides the information about the installed application or package as per +* content type. +* +* @since Series60 v3.2 +*/ + +class MInfoMap + { + + public : + + /** + * Finds the value as per key. + * @since Series60 v3.2 + * @param akey Descriptor defining key to findout. + * @param aVal On return it contains the value as per key + * @return TBool If key argument is correct then returns ETrue or else EFalse + */ + + + virtual TBool FindL(const TDesC8& akey ,TPtrC& aVal)=0; + + /** + * Gives the total number of keys. + * @since Series60 v3.2 + * @param void + * @return TInt Number of keys + */ + virtual TInt Count()const =0 ; + + /** + * Gives the key present at a given index. + * @since Series60 v3.2 + * @param aIndex Index value + * @param aKeyVal Value present at the given index. + * @return TBool Returns ETrue if valid index is given otherwise returns EFalse + */ + virtual TBool AtL(TInt aIndex, TDes8& aFndKey)=0; + + /** + * Destructor. + * @since Series60 v3.2 + */ + virtual ~MInfoMap(); + + }; + +/** +* This is an interface class which provides the iterator +* +* @since Series60 v3.2 + +*/ +class MIterator + { + public: + + /** + * Destructor. + * @since Series60 v3.2 + */ + virtual ~MIterator(); + + /** + * Gives the next apllication info map, on the iterator list + * @since Series60 v3.2 + * @param aMap Instance of MInfoMap + * @return TBool Returns ETrue if next application is present in the on the iterator list else + * returns EFalse. + */ + virtual TBool NextL(MInfoMap*& aMap)=0; + + + + /** + * Resets the iterator. + * + */ + virtual void Reset() = 0 ; + + }; + + +/** +* This class is filter parameter for GetList operation +* +* @since Series60 v3.2 +*/ + +class CFilterParam : public CBase + { + + public : + + /** + * Returns the instance of CFilterParam. + * @since Series60 v3.2 + * @return CFilterParam* return the instance of CFilterParam class + */ + IMPORT_C static CFilterParam* NewL(); + + /** + * Sets the document name. + * @since Series60 v3.2 + * @param aDocName document name + * @return void + */ + IMPORT_C void SetDocName(const TDesC& aDocName) ; + + /** + * Gives the document name + * @since Series60 v3.2 + * @param void + * @return TPtrC points to the document name. + */ + IMPORT_C TPtrC DocName() const ; + + /** + * Sets the mimetype. + * @since Series60 v3.2 + * @param aMimeType mimetype + * @return void + */ + IMPORT_C void SetmimeType(const TDesC8& aMimeType) ; + + + /** + * Gives the mimetype + * @since Series60 v3.2 + * @param void + * @return TPtrC8 points to the document name. + */ + IMPORT_C TPtrC8 MimeType() const; + + private : + + /** + * Constructor. + */ + CFilterParam(); + /** + * Destructor. + */ + ~CFilterParam(); + + private : + + /** + * Document name + */ + HBufC* iDocumentName; + + /** + * MimeType + */ + HBufC8* iMimeType; + + }; + +/** +* This Class is used to contain the Document to launch in any form +* +* @since Series60 v3.2 +*/ + +class TDocument +{ + public: + /** + * Constructor + * @since Series60 v3.2 + */ + TDocument():iPath( KNullDesC ) + { + + } + + public: + + RFile iHandle; + TPtrC iPath; + +}; + + +/** +* This Class is used to contain the options for launching application +* e.g its postion,launching mode, document to send to launcing +* application +* +* @since Series60 v3.2 +*/ + +class TOptions +{ + + public: + /** + * Constructor + * @since Series60 v3.2 + */ + TOptions():iDocument( KNullDesC), + iMode( KStandalone ), + iPostion( KForeground ) + { + + } + + public: + + TPtrC iDocument; + TPtrC iMode; + TPtrC iPostion; +}; + + +/** + * Structure for storing transaction id and associated active object. +*/ +class TAsyncRequestInfo + { + + + public: + /** + * Constructor + * @since Series60 v3.2 + * @param void + * @return void + */ + TAsyncRequestInfo():iTransactionId( 0 ), + iAsyncObj( NULL ) + { + + } + + /** + * TransactionId + */ + TInt32 iTransactionId; + + /** + * Active object pointer + */ + CLauncherObserver* iAsyncObj; + }; + + + +enum TAppOperationEvent + { + // Operation is completed + EAppComplete = 0x0, + + // Operation is canceled + EAppCancel = 0x1 + }; + +#endif \ No newline at end of file