classicui_plat/extended_aiw_criteria_api/inc/AiwPoCParameters.h
changeset 0 2f259fa3e83a
child 4 8ca85d2f0db7
equal deleted inserted replaced
-1:000000000000 0:2f259fa3e83a
       
     1 /*
       
     2 * Copyright (c) 2002-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 "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:     Defines the data used with S60 PoC UI AIW API
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 
       
    20 
       
    21 
       
    22 #ifndef AIWPOCPARAMETERS_H
       
    23 #define AIWPOCPARAMETERS_H
       
    24 
       
    25 //  INCLUDES
       
    26 #include <aiwpocparameters.hrh>
       
    27 #include <logwrap.h>
       
    28 
       
    29 // DATA TYPES
       
    30 
       
    31 /*
       
    32 *   Following section defines both; the menus preferred by the consumer-
       
    33 *   application from PoC-implementation in AIW's InitializeMenuPaneL and
       
    34 *   in case of using AIW's HandleServiceCmdL commands identifying the 
       
    35 *   commands themselves.
       
    36 *
       
    37 *   For menus all the choices are usable, but for AIW service command 
       
    38 *   handling only the ones should be used which have 'Cmd' in their name.
       
    39 *   For menus use the iPreferredMenu-field and for AIW service command
       
    40 *   handling iCommandId-field in TAiwPocParameterData. 
       
    41 *
       
    42 *   See more info from documentation.
       
    43 *
       
    44 *   KAiwPoCMenuDataBased
       
    45 *
       
    46 *       Indicates consumer-application doesn't have any preferred menu 
       
    47 *       items and PoC-implementation can base the menu items it offers
       
    48 *       only to provided address data. Used only for menu requests.
       
    49 *
       
    50 *   EAiwPoCCmdTalk1to1
       
    51 *
       
    52 *       Indicates consumer-application prefers to have atleast PoC Talk 
       
    53 *       1-to-1 menu  item regardless of the address data provided. Can 
       
    54 *       be used with both; menu requests and as AIW service command.
       
    55 *
       
    56 *   EAiwPoCCmdTalkMany
       
    57 *
       
    58 *       Indicates consumer-application prefers to have atleast PoC Talk 
       
    59 *       To Many menu item regardless of the address data provided. Can be 
       
    60 *       used with both; menu requests and as AIW service command.
       
    61 *
       
    62 *   EAiwPoCCmdTalkGroup
       
    63 *
       
    64 *       Indicates consumer-application prefers to have atleast PoC Talk 
       
    65 *       To Group menu item regardless of the address data provided. Can be 
       
    66 *       used with both; menu requests and as AIW service command.
       
    67 *
       
    68 *   EAiwPoCCmdSendCallBackRequest
       
    69 *
       
    70 *       Indicates consumer-application prefers to have atleast Send PoC 
       
    71 *       Callback Request menu item regardless of the address data provided.
       
    72 *       Can be used with both; menu requests and as AIW service command.
       
    73 *
       
    74 *   EAiwPoCCmdJoinChatRoom
       
    75 *
       
    76 *       Indicates consumer-application prefers to have atleast PoC Join
       
    77 *       Chatroom menu item regardless of the address data provided. Can be 
       
    78 *       used with both; menu requests and as AIW service command.
       
    79 *
       
    80 *   EAiwPoCCmdShowCallerDetails
       
    81 *
       
    82 *       Indicates consumer-application prefers to have atleast PoC Caller
       
    83 *       Details item regardless of the address data provided. Can be 
       
    84 *       used with both; menu requests and as AIW service command.
       
    85 *
       
    86 *   EAiwPoCCmdShowDetails
       
    87 *
       
    88 *       Indicates consumer-application prefers to have atleast PoC 
       
    89 *       Details menu item regardless of the address data provided. Can be 
       
    90 *       used with both; menu requests and as AIW service command.
       
    91 *
       
    92 */
       
    93 // DATA BASED
       
    94 // data based menu construction
       
    95 const TInt KAiwPoCMenuDataBased = 0x00000000;
       
    96 // See individual menu / command items from AiwPoCParameters.hrh where these
       
    97 // items are actually located.
       
    98 
       
    99 // DATA TYPES
       
   100 
       
   101 /*
       
   102 * enum TPoCOperationTypeId
       
   103 *
       
   104 *   PoC specific operation types used with TAiwPocParameterData
       
   105 *   to identify the operation between AIW PoC Consumer (mainly 
       
   106 *   Logs app.) and PoC Implementation.
       
   107 *   (Use EPoCNoOpTypeId and EEndOfPoCOpTypeIdRange only for checking the validity of the id.)
       
   108 */
       
   109 enum TPoCOperationTypeId
       
   110     {
       
   111     EPoCNoOpTypeId = 0, // Not actual op.type id, use only for checking validity of the ids.
       
   112     EPoC1to1MO,
       
   113     EPoC1to1MT,
       
   114     EPoCCallbackRequestMO,
       
   115     EPoCCallbackRequestMT,
       
   116     EPoCAdhocDialoutGroupMO,
       
   117     EPoCAdhocDialoutGroupMT,
       
   118     EPoCPredefDialoutGroupMO,
       
   119     EPoCPredefDialoutGroupMT,
       
   120     EPoCDialinGroupMO,
       
   121     EEndOfPoCOpTypeIdRange // Not actual op.type id, use only for checking validity of the ids.
       
   122     };
       
   123 
       
   124 // CLASS DECLARATION
       
   125 
       
   126 /**
       
   127 *  Data class used to transfer menu and AIW service command related 
       
   128 *  information between AIW consumer and provider. Please see more 
       
   129 *  info from documentation.
       
   130 *
       
   131 *  @lib ?library
       
   132 *  @since Series 60 3.0
       
   133 */
       
   134 class TAiwPocParameterData
       
   135     {
       
   136     public: // Constructors and destructor
       
   137 
       
   138         /**
       
   139         * C++ default constructor.
       
   140         */
       
   141         inline TAiwPocParameterData();
       
   142 
       
   143     public: // New functions
       
   144         
       
   145         /**
       
   146         * Returns the version of data class.
       
   147         * @since Series 60 3.0
       
   148         * @return version
       
   149         */
       
   150         inline TInt Version() const;
       
   151 
       
   152     private:// Data
       
   153 
       
   154         // Version of the data class
       
   155         TInt iVersion;
       
   156 
       
   157     public: // Data
       
   158 
       
   159         // Consumer UID
       
   160         TUid iConsumerAppUid;
       
   161         // Consumer Window Group ID
       
   162         TInt iConsumerWindowGroup;
       
   163         // Menu items preferred by consumer-application. 
       
   164         // TAiwPoCMenuCommandItems should be used.
       
   165         TInt iPreferredMenu;
       
   166         // Command ID for service command operations
       
   167         TInt iCommandId;
       
   168         // Unique Log db id (used mainly by Logs app.)
       
   169         TLogId iLogId;
       
   170         // PoC operation type (used mainly by Logs app.)
       
   171         TPoCOperationTypeId iLogOperation;
       
   172     };
       
   173 
       
   174 // To package the TAiwPocParameterData to TPckgBuf to be able to use it
       
   175 // through AIW consumer and provider API 
       
   176 typedef TPckgBuf<TAiwPocParameterData> TAiwPocParameterDataPckg;
       
   177 
       
   178 
       
   179 // DATA TYPES
       
   180 
       
   181 /*
       
   182 * enum TAiwPoCLaunchView
       
   183 *
       
   184 *   Defines the view to be launched in PoC-application. Used with 
       
   185 *   AIW Generic Param EGenericParamPoCLaunchView through AIW's
       
   186 *   HandleServiceCmdL (not for HandleMenuCmdL).
       
   187 *
       
   188 *   Please see documentation for more info.
       
   189 *
       
   190 *   EPoCCurrentView
       
   191 *
       
   192 *           If PoC-application is running background, then this should
       
   193 *           bring the PoC-application in foreground without changing 
       
   194 *           the view. In case PoC-application is not running, then this
       
   195 *           should start the PoC-application.
       
   196 *
       
   197 *   EPoCMainView 
       
   198 *
       
   199 *           This should launch the view which is considered as main 
       
   200 *           view of the PoC-application. Can for example be the view 
       
   201 *           which is shown when PoC-application is launched manually.
       
   202 *
       
   203 *   EPoCNCNListMissedPoCCallView
       
   204 *
       
   205 *           This should be used only by the NCN List, when it is launching
       
   206 *           a view if user chooses to see "Missed PoC Calls".
       
   207 *
       
   208 *   EPoCNCNListNewPoCInvitationView
       
   209 *
       
   210 *           This should be used only by the NCN List, when it is launching
       
   211 *           a view if user chooses to see "New PoC Invitation".
       
   212 *  
       
   213 */
       
   214 enum TAiwPoCViews
       
   215     {
       
   216     EAiwPoCCurrentView = 0,
       
   217     EAiwPoCMainView,
       
   218 
       
   219     // View definitions used only by the New Contacts Note
       
   220     EAiwPoCNCNListMissedPoCCallView = 200,
       
   221     EAiwPoCNCNListNewPoCInvitationView
       
   222     };
       
   223 
       
   224 // Inline methods
       
   225 #include <aiwpocparameters.inl>
       
   226 
       
   227 #endif      // AIWPOCPARAMETERS_H   
       
   228             
       
   229 // End of File