epoc32/include/mw/aiwcommon.hrh
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
     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 "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:     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 	KAiwCmdSaveToCalendar = 0x2002A507
   185 // BRANCH_END 08-04-18 : gronoff
   186     };
   187 
   188 
   189 // Service command strings. These strings are used in service provider's
   190 // opaque data field to specify what service command(s) the provider implements.
   191 
   192 #define KAiwCmdNoneStr                    "00000000"
   193 #define KAiwCmdNewStr                     "101F864C"
   194 #define KAiwCmdEditStr                    "101F864D"
   195 #define KAiwCmdSelectStr                  "101F864E"
   196 #define KAiwCmdViewStr                    "101F864F"
   197 #define KAiwCmdPrintStr                   "101F8666"
   198 #define KAiwCmdCallStr                    "101F86B0"
   199 #define KAiwCmdSendStr                    "101F86B3"
   200 #define KAiwCmdAssignStr                  "101F8716"
   201 #define KAiwCmdShareStr                   "101F871E"
   202 #define KAiwCmdSynchronizeStr             "101F8724"
   203 #define KAiwCmdSearchStr                  "101F87DF"
   204 #define KAiwCmdCopy                       "101F87DE"
   205 #define KAiwCmdPrintPreviewStr            "101FD656"
   206 #define KAiwCmdPoCStr                     "101FD657" 
   207 #define KAiwCmdSynchronizeSelectedStr     "1020720C"
   208 #define KAiwCmdViewOnlineStr              "102072EA" 
   209 #define KAiwCmdUploadStr                  "102072EB"
   210 #define KAiwCmdXpressTransferStr          "10207430"
   211 #define KAiwCmdUPnPCopyStr                "10207431"
   212 #define KAiwCmdUPnPMoveStr                "10207432"
   213 #define KAiwCmdUPnPPlayStr                "10207433"
   214 #define KAiwCmdUPnPOpenStr                "10207434"
   215 #define KAiwCmdUPnPEnableExternalStr      "10207435"
   216 #define KAiwCmdHelpStr                    "10275075"
   217 #define KAiwCmdIntentStr                  "10275114"
   218 #define KAiwCmdAddToIntentStr             "10275115"
   219 #define KAiwCmdRemoveFromIntentStr        "10275116"
   220 #define KAiwCmdMnShowMapStr               "10206904"
   221 #define KAiwCmdMnNavigateToStr            "10206905"
   222 #define KAiwCmdMnAddrByCoordStr           "10206906"
   223 #define KAiwCmdMnCoordByAddrStr           "10206907"
   224 #define KAiwCmdMnSelectFromMapStr         "10206908"
   225 #define KAiwCmdSendViaBTStr               "10281894"
   226 #define KAiwCmdSendViaIRStr               "10281895"
   227 #define KAiwCmdEnterpriseTelStr           "20001FC6"
   228 #define KAiwCmdRotateStr                  "10281F96"
   229 #define KAiwCmdRotateScreenStr            "10281F97"
   230 #define KAiwCmdCallImageStr               "1028245E"
   231 #define KAiwCmdNFCGiveStr                 "1028245F"
   232 #define KAiwCmdNFCEasySetupStr            "2001FE32"
   233 #define KAiwCmdSettingWizardEmailViewStr  "10281C95"
   234 #define KAiwCmdContentSearchStr           "10282844"
   235 #define KAiwCmdAnyCmdForObjectStr         "102823F1"
   236 #define KAiwCmdEasyVoIPProvisioningStr    "10283099"
   237 #define KAiwCmdAssignScreenSaverStr       "1028309A"
   238 #define KAiwCmdLocationTrail              "10282845"
   239 /*<branchInfo originator="gronoff" since="08-04-18" category="new_feature" error=”none”>
   240 <pf_5250_OFF_CYCLE_SW_INT>
   241 </branchInfo>*/
   242 // BRANCH 08-04-18 : gronoff
   243 #define	KAiwCmdCSCServicePluginsStr  	  "1020E56F"
   244 #define	KAiwCmdCSCUiExtensionPluginsStr   "10282EF7"
   245 #define KAiwCmdSaveToCalendarStr          "2002A507"
   246 // BRANCH_END 08-04-18 : gronoff
   247 
   248 /**
   249 * Service command options (bits) to alter command handling behaviour.
   250 */
   251 enum TAiwServiceCmdOptions
   252     {
   253     /**
   254     * Consumer wants asynchronous command handling.
   255     * The default is synchronous command handling.
   256     * In asynchronous case consumer needs to pass a callback to provider.
   257     */
   258     KAiwOptASyncronous = 0x0001,
   259 
   260     /**
   261     * Consumer wants provider to make a callback to check coming output
   262     * parameters prior returning from service command handling.
   263     * Consumer needs to pass a callback to provider.
   264     */
   265     KAiwOptOutParamCheck = 0x0002,
   266 
   267     /**
   268     * Consumer tells provider that it is prepared to handle
   269     * callback events for possibly incomplete/wrong parameter list. 
   270     */
   271     KAiwOptInParamCheck = 0x0004,
   272     
   273     /**
   274     * Consumer wants to cancel an asynchronous AIW service. 
   275     * When a consumer wants to cancel the asynchronous service that a provider
   276     * is executing, it should call ExecuteMenuCmdL() or ExecuteServiceCmdL() 
   277     * with the same parameters as when requesting the service, but set this 
   278     * cancel bit on. The cancel operation itself is synchronous, i.e. the 
   279     * provider must call the consumer's callback with KAiwEventCanceled before 
   280     * the Execute*CmdL() returns.
   281     */
   282     KAiwOptCancel = 0x0008
   283     };
   284 
   285 
   286 /**
   287 * Service classes (UID). Technically these are same as service interface UIDs.
   288 */
   289 enum TAiwServiceClass
   290     {
   291     /** 
   292     * None. 
   293     */
   294     KAiwClassNone = 0x0,
   295 
   296     /**
   297     * Base service (no UI expected). 
   298     * Every other class must implement this always!
   299     */
   300     KAiwClassBase = 0x101F8650,
   301 
   302     /** 
   303     * Filter service class. 
   304     */
   305     KAiwClassFilter = 0x101F8651,
   306 
   307     /** 
   308     * Menu service class (offers menu based services).
   309     */
   310     KAiwClassMenu = 0x101F8652,
   311 
   312     /** 
   313     * Stub service class.
   314     */
   315     KAiwClassStub = 0x101F8653,
   316        
   317     /** 
   318     * View service class (offers view based services).
   319     */
   320     KAiwClassView = 0x101F8654,
   321 
   322     /** 
   323     * This class is for R&D purposes.  
   324     */
   325     KAiwClassDebug = 0x101F866B
   326     };
   327 
   328 
   329 /**
   330 * Event codes. To be used with HandleNotifyL method.
   331 */
   332 enum
   333     {
   334     /**
   335     * Asynchronous service informs consumer to prepare itself for 
   336     * action. 
   337     */
   338     KAiwEventStarted = 1,
   339 
   340     /**
   341     * Asynchronous service request completed.
   342     */
   343     KAiwEventCompleted = 2,
   344 
   345     /**
   346     * Asynchronous service request canceled.
   347     */
   348     KAiwEventCanceled = 3,
   349     
   350     /**
   351     * Error during asynchronous service request.
   352     */
   353     KAiwEventError = 4,
   354     
   355     /**
   356     * Relates to KAiwOptOutParamCheck.
   357     */
   358     KAiwEventOutParamCheck = 5,
   359     
   360     /**
   361     * Relates to KAiwOptInParamCheck.
   362     */
   363     KAiwEventInParamCheck = 6,
   364     
   365     /**
   366     * Provider informs consumer that service is no longer available or 
   367     * has stopped.
   368     */
   369     KAiwEventStopped = 7,
   370     
   371     /**
   372     * Provider asks consumer whether Exit can be done (needed at least in 
   373     * embedded use cases where server application offers Exit possibility 
   374     * to end user, but consumer can not allow Exit due to fact that for
   375     * example network connections owned by consumer are open and they need 
   376     * to be kept alive).    
   377     */
   378     KAiwEventQueryExit = 8
   379     };
   380     
   381 // ============================================================================
   382 // Menu item flags for AIW consumers.   
   383 // ============================================================================ 
   384 /** 
   385  * Always keep the provider menu items in a submenu. 
   386  */
   387 #define AIW_CASCADE_ID               0x01010001
   388 
   389 /** 
   390  * Menu item is placed intelligently either to the main level or a submenu. 
   391  */
   392 #define AIW_INTELLIGENT_CASCADE_ID   0x01010010
   393 
   394 /** 
   395  * Consumer defines the menu title. 
   396  */
   397 #define AIW_LOCK_SUBMENU_TITLE       0x00000020
   398 
   399 // ============================================================================
   400 // Criteria item flags for AIW consumers.    
   401 // ============================================================================
   402 /** 
   403  * Criteria item loadOptions bit, only providers in ROM are accepted. 
   404  */
   405 #define AIW_OPTIONS_ROM_ONLY         0x01
   406 
   407 // ============================================================================
   408 // Menu item flags for AIW providers.
   409 // ============================================================================
   410 /** 
   411  * For providers only: Provider suggests the submenu title. 
   412  */
   413 #define AIW_SUBMENU_TITLE            0x0ff11012
   414 
   415 #endif // AIW_COMMON_HRH
   416 
   417 // End of file
   418 
   419