epoc32/include/app/imlauncherplugin.h
branchSymbian2
changeset 2 2fe1408b6811
parent 1 666f914201fb
equal deleted inserted replaced
1:666f914201fb 2:2fe1408b6811
     1 imlauncherplugin.h
     1 /*
       
     2 * Copyright (c) 2004 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 the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:  Interface for the IM application launching
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 
       
    20 #ifndef IMLAUNCHERPLUGIN_H
       
    21 #define IMLAUNCHERPLUGIN_H
       
    22 
       
    23 //  INCLUDES
       
    24 #include <ecom/ecom.h>
       
    25 
       
    26 // UID of this interface
       
    27 const TUid KImLauncherPluginUid = {0x101FB0CC};
       
    28 
       
    29 /**
       
    30 *  Interface class for application launching
       
    31 *
       
    32 *  @since 2.6
       
    33 */
       
    34 class CImLauncherPlugin : public CBase
       
    35     {
       
    36     public:  // Constructors and destructor
       
    37 
       
    38         /**
       
    39         * Two-phased constructor.
       
    40         * @param aApplicationId the Application ID of the application to be launched
       
    41         * @return CImLauncherPlugin instance
       
    42         */
       
    43         static CImLauncherPlugin* NewL( const TDesC8& aApplicationId );
       
    44 
       
    45         /**
       
    46         * Destructor.
       
    47         */
       
    48         virtual ~CImLauncherPlugin();
       
    49 
       
    50     public: // New functions
       
    51 
       
    52         /**
       
    53         * Method for starting an application which can receive instant messages.
       
    54         * Asynchronous function.
       
    55         * @since 3.0
       
    56         * @param aStatus Request status
       
    57         * @param aSAP the remote SAP server from where the pending IM came
       
    58         * @param aUserId the user ID who received the IM
       
    59         */
       
    60         virtual void StartApplicationL(
       
    61             TRequestStatus& aStatus,
       
    62             const TDesC& aSap,
       
    63             const TDesC& aUserId ) = 0;
       
    64 
       
    65         /**
       
    66         * Method for canceling the application start.
       
    67         * @since 2.6
       
    68         */
       
    69         virtual void CancelStartApplication() = 0;
       
    70 
       
    71     protected:
       
    72         //Default c'tor
       
    73         inline CImLauncherPlugin();
       
    74 
       
    75     private:    // Data
       
    76         /** iDtor_ID_Key Instance identifier key. When instance of an
       
    77          *               implementation is created by ECOM framework, the
       
    78          *               framework will assign UID for it. The UID is used in
       
    79          *               destructor to notify framework that this instance is
       
    80          *               being destroyed and resources can be released.
       
    81          */
       
    82         TUid iDtor_ID_Key;
       
    83 
       
    84     };
       
    85 
       
    86 // This includes the implementation of the instantiation functions and
       
    87 // destructor
       
    88 #include "imlauncherplugin.inl"
       
    89 
       
    90 #endif      // IMLAUNCHERPLUGIN_H   
       
    91 
       
    92 // End of File