epoc32/include/mw/aiwcommon.hrh
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:27:01 +0100
branchSymbian2
changeset 3 e1b950c65cb4
parent 1 666f914201fb
child 4 837f303aceeb
permissions -rw-r--r--
Attempt to represent the S^2->S^3 header reorganisation as a series of "hg rename" operations
     1 /*
     2 * Copyright (c) 2003-2005 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:     Declares common constants to be used in both resources and
    15 *                C++ code of consumers and providers.
    16 *
    17 */
    18 
    19 
    20 
    21 
    22 
    23 #ifndef AIW_COMMON_HRH
    24 #define AIW_COMMON_HRH
    25 
    26 // DATA TYPES
    27 
    28 // CONSTANTS
    29 
    30 /**
    31 * Predefined service commands (UIDs).
    32 */
    33 enum TAiwServiceCommands
    34     {
    35     /** Null value. */
    36     KAiwCmdNone = 0,
    37 
    38     /** Create new content. */
    39     KAiwCmdNew = 0x101F864C,
    40         
    41     /** Edit existing content. */
    42     KAiwCmdEdit = 0x101F864D,
    43         
    44     /** Select content. */
    45     KAiwCmdSelect = 0x101F864E,
    46     
    47     /** View content. */
    48     KAiwCmdView = 0x101F864F,
    49 
    50     /** Create call. */
    51     KAiwCmdCall = 0x101F86B0,
    52 
    53     /** Send content. */
    54     KAiwCmdSend = 0x101F86B3,
    55 
    56     /** Print content. */
    57     KAiwCmdPrint = 0x101F8666,
    58 
    59     /** Assign content. */
    60     KAiwCmdAssign = 0x101F8716,
    61 
    62     /** Share content. */
    63     KAiwCmdShare = 0x101F871E,
    64 
    65     /** Synchronize content. */
    66     KAiwCmdSynchronize = 0x101F8724,
    67 
    68     /** Synchronize selected. */
    69     KAiwCmdSynchronizeSelected = 0x1020720C,
    70 
    71     /** Search content. */
    72     KAiwCmdSearch = 0x101F87DF,
    73 
    74     /** Copy content. */
    75     KAiwCmdCopy = 0x101F87DE,
    76 
    77     /** Show print preview. */
    78     KAiwCmdPrintPreview = 0x101FD656,
    79     
    80     /** Push to talk. */
    81     KAiwCmdPoC = 0x101FD657,
    82     
    83     /** View content in online store. */
    84     KAiwCmdViewOnline = 0x102072EA,
    85     
    86     /** Upload content. */
    87     KAiwCmdUpload = 0x102072EB,
    88     
    89     /** Transfer a range of media files to a remote storage device. */
    90     KAiwCmdXpressTransfer = 0x10207430,
    91     
    92     /** UPnP copy content. */
    93     KAiwCmdUPnPCopy = 0x10207431,
    94            
    95     /** UPnP move content. */          
    96     KAiwCmdUPnPMove = 0x10207432,
    97 
    98     /** UPnP play content. */
    99     KAiwCmdUPnPPlay = 0x10207433,
   100 
   101     /** UPnP open content. */
   102     KAiwCmdUPnPOpen = 0x10207434,
   103     
   104     /** UPnP enable external. */
   105     KAiwCmdUPnPEnableExternal = 0x10207435,
   106     
   107     /** Show help content. */
   108     KAiwCmdHelp = 0x10275075,
   109     
   110     /** Add or remove items from intent. (Should be used as a menu service command). */
   111     KAiwCmdIntent = 0x10275114,
   112     
   113     /** Add items to intent. (Should be used as a base service command). */
   114     KAiwCmdAddToIntent = 0x10275115,
   115     
   116     /** Remove items from intent. (Should be used as a base service command). */
   117     KAiwCmdRemoveFromIntent = 0x10275116,
   118     
   119     /** Client can request that map should be displayed on screen. */ 
   120     KAiwCmdMnShowMap = 0x10206904,
   121     
   122     /** Allows to start navigation to desired destination. */
   123     KAiwCmdMnNavigateTo = 0x10206905,
   124     
   125     /** Starts reverse geocoding request: finding address for given coordinate. */
   126     KAiwCmdMnAddrByCoord = 0x10206906,
   127     
   128     /** Starts geocoding request: finding coordinate by given address. */
   129     KAiwCmdMnCoordByAddr = 0x10206907,    
   130     
   131     /** Allows client to request that user shall select a location from map. */
   132     KAiwCmdMnSelectFromMap = 0x10206908,
   133     
   134     /** Send via Bluetooth. */
   135     KAiwCmdSendViaBT = 0x10281894,   
   136 	
   137     /** Send via Irda. */
   138     KAiwCmdSendViaIR = 0x10281895,
   139     
   140     /** Enterprise telephony. */
   141     KAiwCmdEnterpriseTel = 0x20001FC6,  
   142 
   143     /** Rotate image etc. */
   144     KAiwCmdRotate = 0x10281F96,
   145     
   146     /** Rotate device screen. */
   147     KAiwCmdRotateScreen = 0x10281F97,
   148     
   149     /** Set call image. */
   150     KAiwCmdCallImage = 0x1028245E,
   151     
   152     /** Give different objects to another device using Near Field Communications. */
   153     KAiwCmdNFCGive = 0x1028245F,
   154     
   155     /** Start listening secondary bearer (e.g. Bluetooth) setup events via Near Field Communication. */
   156     KAiwCmdNFCEasySetup = 0x2001FE32,
   157     
   158     /** SettingWizard Email view activation. */
   159     KAiwCmdSettingWizardEmailView = 0x10281C95,
   160     
   161     /** In-device search. */
   162     KAiwCmdContentSearch = 0x10282844,
   163     
   164 	/** A special service command enabling consumer to attach for all relevant 
   165 	AIW services for a certain object. */
   166 	KAiwCmdAnyCmdForObject = 0x102823F1,
   167 	
   168 	/** To support VoIP settings provisioning with plugins **/
   169 	KAiwCmdEasyVoIPProvisioning = 0x10283099,
   170 	
   171 	/** Assign Screensaver*/
   172     KAiwCmdAssignScreenSaver = 0x1028309A,      
   173 	
   174 	/*Location Trail*/ 
   175 	KAiwCmdLocationTrail=0x10282845
   176 /*<branchInfo originator="gronoff" since="08-04-18" category="new_feature" error=”none”>
   177 <pf_5250_OFF_CYCLE_SW_INT>
   178 </branchInfo>*/
   179 // BRANCH 08-04-18 : gronoff
   180         ,
   181 	/** Converged service plugin and UI extension plugin*/
   182 	KAiwCmdCSCServicePlugins = 0x1020E56F,
   183 	KAiwCmdCSCUiExtensionPlugins = 0x10282EF7 
   184 // BRANCH_END 08-04-18 : gronoff
   185     };
   186 
   187 
   188 // Service command strings. These strings are used in service provider's
   189 // opaque data field to specify what service command(s) the provider implements.
   190 
   191 #define KAiwCmdNoneStr                    "00000000"
   192 #define KAiwCmdNewStr                     "101F864C"
   193 #define KAiwCmdEditStr                    "101F864D"
   194 #define KAiwCmdSelectStr                  "101F864E"
   195 #define KAiwCmdViewStr                    "101F864F"
   196 #define KAiwCmdPrintStr                   "101F8666"
   197 #define KAiwCmdCallStr                    "101F86B0"
   198 #define KAiwCmdSendStr                    "101F86B3"
   199 #define KAiwCmdAssignStr                  "101F8716"
   200 #define KAiwCmdShareStr                   "101F871E"
   201 #define KAiwCmdSynchronizeStr             "101F8724"
   202 #define KAiwCmdSearchStr                  "101F87DF"
   203 #define KAiwCmdCopy                       "101F87DE"
   204 #define KAiwCmdPrintPreviewStr            "101FD656"
   205 #define KAiwCmdPoCStr                     "101FD657" 
   206 #define KAiwCmdSynchronizeSelectedStr     "1020720C"
   207 #define KAiwCmdViewOnlineStr              "102072EA" 
   208 #define KAiwCmdUploadStr                  "102072EB"
   209 #define KAiwCmdXpressTransferStr          "10207430"
   210 #define KAiwCmdUPnPCopyStr                "10207431"
   211 #define KAiwCmdUPnPMoveStr                "10207432"
   212 #define KAiwCmdUPnPPlayStr                "10207433"
   213 #define KAiwCmdUPnPOpenStr                "10207434"
   214 #define KAiwCmdUPnPEnableExternalStr      "10207435"
   215 #define KAiwCmdHelpStr                    "10275075"
   216 #define KAiwCmdIntentStr                  "10275114"
   217 #define KAiwCmdAddToIntentStr             "10275115"
   218 #define KAiwCmdRemoveFromIntentStr        "10275116"
   219 #define KAiwCmdMnShowMapStr               "10206904"
   220 #define KAiwCmdMnNavigateToStr            "10206905"
   221 #define KAiwCmdMnAddrByCoordStr           "10206906"
   222 #define KAiwCmdMnCoordByAddrStr           "10206907"
   223 #define KAiwCmdMnSelectFromMapStr         "10206908"
   224 #define KAiwCmdSendViaBTStr               "10281894"
   225 #define KAiwCmdSendViaIRStr               "10281895"
   226 #define KAiwCmdEnterpriseTelStr           "20001FC6"
   227 #define KAiwCmdRotateStr                  "10281F96"
   228 #define KAiwCmdRotateScreenStr            "10281F97"
   229 #define KAiwCmdCallImageStr               "1028245E"
   230 #define KAiwCmdNFCGiveStr                 "1028245F"
   231 #define KAiwCmdNFCEasySetupStr            "2001FE32"
   232 #define KAiwCmdSettingWizardEmailViewStr  "10281C95"
   233 #define KAiwCmdContentSearchStr           "10282844"
   234 #define KAiwCmdAnyCmdForObjectStr         "102823F1"
   235 #define KAiwCmdEasyVoIPProvisioningStr    "10283099"
   236 #define KAiwCmdAssignScreenSaverStr       "1028309A"
   237 #define KAiwCmdLocationTrail              "10282845"
   238 /*<branchInfo originator="gronoff" since="08-04-18" category="new_feature" error=”none”>
   239 <pf_5250_OFF_CYCLE_SW_INT>
   240 </branchInfo>*/
   241 // BRANCH 08-04-18 : gronoff
   242 #define	KAiwCmdCSCServicePluginsStr  	  "1020E56F"
   243 #define	KAiwCmdCSCUiExtensionPluginsStr   "10282EF7" 
   244 // BRANCH_END 08-04-18 : gronoff
   245 
   246 /**
   247 * Service command options (bits) to alter command handling behaviour.
   248 */
   249 enum TAiwServiceCmdOptions
   250     {
   251     /**
   252     * Consumer wants asynchronous command handling.
   253     * The default is synchronous command handling.
   254     * In asynchronous case consumer needs to pass a callback to provider.
   255     */
   256     KAiwOptASyncronous = 0x0001,
   257 
   258     /**
   259     * Consumer wants provider to make a callback to check coming output
   260     * parameters prior returning from service command handling.
   261     * Consumer needs to pass a callback to provider.
   262     */
   263     KAiwOptOutParamCheck = 0x0002,
   264 
   265     /**
   266     * Consumer tells provider that it is prepared to handle
   267     * callback events for possibly incomplete/wrong parameter list. 
   268     */
   269     KAiwOptInParamCheck = 0x0004,
   270     
   271     /**
   272     * Consumer wants to cancel an asynchronous AIW service. 
   273     * When a consumer wants to cancel the asynchronous service that a provider
   274     * is executing, it should call ExecuteMenuCmdL() or ExecuteServiceCmdL() 
   275     * with the same parameters as when requesting the service, but set this 
   276     * cancel bit on. The cancel operation itself is synchronous, i.e. the 
   277     * provider must call the consumer's callback with KAiwEventCanceled before 
   278     * the Execute*CmdL() returns.
   279     */
   280     KAiwOptCancel = 0x0008
   281     };
   282 
   283 
   284 /**
   285 * Service classes (UID). Technically these are same as service interface UIDs.
   286 */
   287 enum TAiwServiceClass
   288     {
   289     /** 
   290     * None. 
   291     */
   292     KAiwClassNone = 0x0,
   293 
   294     /**
   295     * Base service (no UI expected). 
   296     * Every other class must implement this always!
   297     */
   298     KAiwClassBase = 0x101F8650,
   299 
   300     /** 
   301     * Filter service class. 
   302     */
   303     KAiwClassFilter = 0x101F8651,
   304 
   305     /** 
   306     * Menu service class (offers menu based services).
   307     */
   308     KAiwClassMenu = 0x101F8652,
   309 
   310     /** 
   311     * Stub service class.
   312     */
   313     KAiwClassStub = 0x101F8653,
   314        
   315     /** 
   316     * View service class (offers view based services).
   317     */
   318     KAiwClassView = 0x101F8654,
   319 
   320     /** 
   321     * This class is for R&D purposes.  
   322     */
   323     KAiwClassDebug = 0x101F866B
   324     };
   325 
   326 
   327 /**
   328 * Event codes. To be used with HandleNotifyL method.
   329 */
   330 enum
   331     {
   332     /**
   333     * Asynchronous service informs consumer to prepare itself for 
   334     * action. 
   335     */
   336     KAiwEventStarted = 1,
   337 
   338     /**
   339     * Asynchronous service request completed.
   340     */
   341     KAiwEventCompleted = 2,
   342 
   343     /**
   344     * Asynchronous service request canceled.
   345     */
   346     KAiwEventCanceled = 3,
   347     
   348     /**
   349     * Error during asynchronous service request.
   350     */
   351     KAiwEventError = 4,
   352     
   353     /**
   354     * Relates to KAiwOptOutParamCheck.
   355     */
   356     KAiwEventOutParamCheck = 5,
   357     
   358     /**
   359     * Relates to KAiwOptInParamCheck.
   360     */
   361     KAiwEventInParamCheck = 6,
   362     
   363     /**
   364     * Provider informs consumer that service is no longer available or 
   365     * has stopped.
   366     */
   367     KAiwEventStopped = 7,
   368     
   369     /**
   370     * Provider asks consumer whether Exit can be done (needed at least in 
   371     * embedded use cases where server application offers Exit possibility 
   372     * to end user, but consumer can not allow Exit due to fact that for
   373     * example network connections owned by consumer are open and they need 
   374     * to be kept alive).    
   375     */
   376     KAiwEventQueryExit = 8
   377     };
   378     
   379 // ============================================================================
   380 // Menu item flags for AIW consumers.   
   381 // ============================================================================ 
   382 /** 
   383  * Always keep the provider menu items in a submenu. 
   384  */
   385 #define AIW_CASCADE_ID               0x01010001
   386 
   387 /** 
   388  * Menu item is placed intelligently either to the main level or a submenu. 
   389  */
   390 #define AIW_INTELLIGENT_CASCADE_ID   0x01010010
   391 
   392 /** 
   393  * Consumer defines the menu title. 
   394  */
   395 #define AIW_LOCK_SUBMENU_TITLE       0x00000020
   396 
   397 // ============================================================================
   398 // Criteria item flags for AIW consumers.    
   399 // ============================================================================
   400 /** 
   401  * Criteria item loadOptions bit, only providers in ROM are accepted. 
   402  */
   403 #define AIW_OPTIONS_ROM_ONLY         0x01
   404 
   405 // ============================================================================
   406 // Menu item flags for AIW providers.
   407 // ============================================================================
   408 /** 
   409  * For providers only: Provider suggests the submenu title. 
   410  */
   411 #define AIW_SUBMENU_TITLE            0x0ff11012
   412 
   413 #endif // AIW_COMMON_HRH
   414 
   415 // End of file
   416 
   417