epoc32/include/bt_subscribe.h
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 // Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 // Publish and Subscribe keys and categories.
    15 // Allows clients to observe various events published by the Bluetooth subsystem,
    16 // and for clients to influence some parameters in the Bluetooth subsystem
    17 // 
    18 //
    19 
    20 
    21 #ifndef BT_SUBSCRIBE_H
    22 #define BT_SUBSCRIBE_H
    23 
    24 #ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
    25 #include <bt_subscribe_partner.h>
    26 #endif
    27 
    28 #include <bt_subscribe_keybase.h>
    29 
    30 #include <e32property.h>
    31 
    32 // P&S Categories
    33  
    34 /**
    35 KPropertyUidBluetoothCategory
    36 This is a deprecated constant, maintained for source compatibility with non-secured 
    37 Symbian OS platforms.
    38 
    39 @publishedAll
    40 @deprecated
    41 */
    42 const TUid KPropertyUidBluetoothCategory = {KUidSystemCategoryValue};
    43 
    44 /**
    45 KPropertyUidBluetoothControlCategory
    46 This is a deprecated constant, maintained for source compatibility with non-secured 
    47 Symbian OS platforms.
    48 
    49 @publishedAll
    50 @deprecated
    51 */
    52 const TUid KPropertyUidBluetoothControlCategory = {KUidSystemCategoryValue};
    53 
    54 // P&S Keys
    55 
    56 //-------------
    57 
    58 /**
    59 KPropertyKeyBluetoothGetLocalDeviceAddress
    60 The key to observe the device address of the local Bluetooth hardware
    61 The P&S value will contain a descriptor of the device address
    62 @publishedAll
    63 @released
    64 @capability LocalServices	Needed for both read and write access to this property
    65 @capability NetworkControl	Needed for write access to this property
    66 */
    67 const TUint KPropertyKeyBluetoothGetLocalDeviceAddress = (KUidBluetoothPubSubKeyBase + 0);
    68 
    69 /**
    70 KPropertyKeyBluetoothLocalDeviceAddress
    71 This is a deprecated constant, maintained for source compatibility with non-secured 
    72 Symbian OS platforms.
    73 @publishedAll
    74 @deprecated
    75 */
    76 const TUint KPropertyKeyBluetoothLocalDeviceAddress = KPropertyKeyBluetoothGetLocalDeviceAddress;
    77 
    78 //-------------
    79 
    80 /**
    81 KPropertyKeyBluetoothGetPHYCount
    82 The key to observe the the number of Bluetooth physical links attached to the local device
    83 The P&S value will contain the number of physical links
    84 @publishedAll
    85 @released
    86 @capability LocalServices	Needed for both read and write access to this property
    87 @capability NetworkControl	Needed for write access to this property
    88 */
    89 const TUint KPropertyKeyBluetoothGetPHYCount = (KUidBluetoothPubSubKeyBase + 1);
    90 
    91 /**
    92 KPropertyKeyBluetoothPHYCount
    93 This is a deprecated constant, maintained for source compatibility with non-secured 
    94 Symbian OS platforms.
    95 @publishedAll
    96 @deprecated
    97 */
    98 const TUint KPropertyKeyBluetoothPHYCount = KPropertyKeyBluetoothGetPHYCount;
    99 
   100 //-------------
   101 
   102 /**
   103 KPropertyKeyBluetoothGetConnectingStatus
   104 The key to observe whether the local device is paging another device (i.e. is connecting a physical link)
   105 The P&S value will contain a boolean: ETrue if connecting, otherwise EFalse
   106 @publishedAll
   107 @released
   108 @capability LocalServices	Needed for both read and write access to this property
   109 @capability NetworkControl	Needed for write access to this property
   110 */
   111 const TUint KPropertyKeyBluetoothGetConnectingStatus = (KUidBluetoothPubSubKeyBase + 2);
   112 
   113 /**
   114 KPropertyKeyBluetoothConnecting
   115 This is a deprecated constant, maintained for source compatibility with non-secured 
   116 Symbian OS platforms.
   117 @publishedAll
   118 @deprecated
   119 */
   120 const TUint KPropertyKeyBluetoothConnecting = KPropertyKeyBluetoothGetConnectingStatus;
   121 
   122 //-------------
   123 
   124 /**
   125 KPropertyKeyBluetoothGetScanningStatus
   126 The key to observe what scans the Bluetooth hardware is currently performing
   127 The P&S value contains an integer with the scan value as published in the Bluetooth Core Specification
   128 
   129 The use of this key is equivalent in a secure Symbian OS platform to the use of the key
   130 KPropertyKeyBluetoothScanning with the category KPropertyUidBluetoothCategory in a non-secure
   131 Symbian OS platform.
   132 
   133 @see Bluetooth Core Specification
   134 @publishedAll
   135 @released
   136 @capability LocalServices	Needed for both read and write access to this property
   137 @capability NetworkControl	Needed for write access to this property
   138 */
   139 const TUint KPropertyKeyBluetoothGetScanningStatus = (KUidBluetoothPubSubKeyBase + 3);
   140 
   141 /**
   142 KPropertyKeyBluetoothSetScanningStatus
   143 The key to control what scans the Bluetooth hardware is currently performing
   144 The P&S value contains an integer with the scan value as published in the Bluetooth Core Specification
   145 
   146 The use of this key is equivalent in a secure Symbian OS platform to the use of the key
   147 KPropertyKeyBluetoothScanning with the category KPropertyUidBluetoothControlCategory in a non-secure
   148 Symbian OS platform.
   149 
   150 @see Bluetooth Core Specification
   151 @publishedAll
   152 @released
   153 @capability LocalServices	Needed for both read and write access to this property
   154 @capability NetworkControl	Needed for both read and write access to this property
   155 */
   156 const TUint KPropertyKeyBluetoothSetScanningStatus = (KUidBluetoothPubSubKeyBase + 4);
   157 
   158 //-------------
   159 
   160 /**
   161 KPropertyKeyBluetoothGetLimitedDiscoverableStatus
   162 The key to observe whether the local device is in Limited Discoverable mode
   163 The P&S value will contain a boolean: ETrue if in limited discoverable mode, otherwise EFalse
   164 
   165 The use of this key is equivalent in a secure Symbian OS platform to the use of the key
   166 KPropertyKeyBluetoothLimitedDiscoverable with the category KPropertyUidBluetoothCategory in a non-secure
   167 Symbian OS platform.
   168 
   169 @publishedAll
   170 @released
   171 @capability LocalServices	Needed for both read and write access to this property
   172 @capability NetworkControl	Needed for write access to this property
   173 */
   174 const TUint KPropertyKeyBluetoothGetLimitedDiscoverableStatus = (KUidBluetoothPubSubKeyBase + 5);
   175 
   176 /**
   177 KPropertyKeyBluetoothSetLimitedDiscoverableStatus
   178 The key to control whether the local device is in Limited Discoverable mode
   179 The P&S value will contain a boolean: ETrue if in limited discoverable mode, otherwise EFalse
   180 
   181 The use of this key is equivalent in a secure Symbian OS platform to the use of the key
   182 KPropertyKeyBluetoothLimitedDiscoverable with the category KPropertyUidBluetoothControlCategory in a non-secure
   183 Symbian OS platform.
   184 
   185 @publishedAll
   186 @released
   187 @capability LocalServices	Needed for both read and write access to this property
   188 @capability NetworkControl	Needed for both read and write access to this property
   189 */
   190 
   191 const TUint KPropertyKeyBluetoothSetLimitedDiscoverableStatus = (KUidBluetoothPubSubKeyBase + 6);
   192 
   193 
   194 //-------------
   195 
   196 /**
   197 KPropertyKeyBluetoothGetDeviceClass
   198 The key to observe the class of device of the local device
   199 The P&S value will contain an integer of the local device class.
   200 
   201 The use of this key is equivalent in a secure Symbian OS platform to the use of the key
   202 KPropertyKeyBluetoothDeviceClass with the category KPropertyUidBluetoothCategory in a non-secure
   203 Symbian OS platform.
   204 
   205 @see Bluetooth Core Specification
   206 @publishedAll
   207 @released
   208 @capability LocalServices	Needed for both read and write access to this property
   209 @capability NetworkControl	Needed for write access to this property
   210 */
   211 const TUint KPropertyKeyBluetoothGetDeviceClass = (KUidBluetoothPubSubKeyBase + 7);
   212 
   213 /**
   214 KPropertyKeyBluetoothSetDeviceClass
   215 The key to set the class of device of the local device
   216 The P&S value will contain an integer of the local device class.
   217 
   218 The use of this key is equivalent in a secure Symbian OS platform to the use of the key
   219 KPropertyKeyBluetoothDeviceClass with the category KPropertyUidBluetoothControlCategory in a non-secure
   220 Symbian OS platform.
   221 
   222 @see Bluetooth Core Specification
   223 @publishedAll
   224 @released
   225 @capability LocalServices	Needed for both read and write access to this property
   226 @capability NetworkControl	Needed for both read and write access to this property
   227 */
   228 const TUint KPropertyKeyBluetoothSetDeviceClass = (KUidBluetoothPubSubKeyBase + 8);
   229 
   230 //-------------
   231 
   232 /**
   233 KPropertyKeyBluetoothSetAFHHostChannelClassification
   234 The key to send an AFH Host Channel Classification to the local Bluetooth hardware
   235 The P&S value will contain a descriptor containing the AFH Host Channel Classification 
   236 bit set. A bit which is set to zero instructs the local Bluetooth hardware 
   237 not to hop to the frequency represented by that bit in a connection in which 
   238 it is master and which is using AFH. Also, if the local Bluetooth hardware is slave in a 
   239 connection, which is using AFH, an AFH Host Channel Classification may be used to advise
   240 the remote master what frequencies to avoid.
   241 
   242 NB. THIS IS SUPPORTED ONLY IN VERSION 9.0 AND THEREAFTER. The same functionality can be
   243 accessed in 8.1 also through the use of the KPropertyKeyBluetoothAFHHostChannelClassification
   244 key in conjunction with category KPropertyUidBluetoothControlCategory.
   245 
   246 @see TBTAFHHostChannelClassification
   247 @publishedAll
   248 @released
   249 @capability LocalServices	Needed for both read and write access to this property
   250 @capability NetworkControl	Needed for both read and write access to this property
   251 */
   252 const TUint KPropertyKeyBluetoothSetAFHHostChannelClassification = (KUidBluetoothPubSubKeyBase + 9);
   253 
   254 /**
   255 KPropertyKeyBluetoothAFHHostChannelClassification
   256 This is a deprecated constant, maintained for source compatibility with non-secured 
   257 Symbian OS platforms.
   258 
   259 @publishedAll
   260 @deprecated
   261 */
   262 const TUint KPropertyKeyBluetoothAFHHostChannelClassification = KPropertyKeyBluetoothSetAFHHostChannelClassification;
   263 
   264 //-------------
   265 
   266 /**
   267 KPropertyKeyBluetoothGetRegistryTableChange
   268 The key to observe changes in the Bluetooth Registry
   269 The P&S value will contain an integer describing which of the tables in the Bluetooth Registry changed
   270 see further in this header file.
   271 This property is written to only by the Symbian OS Bluetooth sub-system.
   272 @publishedAll
   273 @released
   274 @capability LocalServices	Needed for read access to this property
   275 */
   276 const TUint KPropertyKeyBluetoothGetRegistryTableChange = (KUidBluetoothPubSubKeyBase + 11);
   277 
   278 /**
   279 KPropertyKeyBluetoothRegistryTableChange
   280 This is a deprecated constant, maintained for source compatibility with non-secured 
   281 Symbian OS platforms.
   282 
   283 @publishedAll
   284 @deprecated
   285 */
   286 const TUint KPropertyKeyBluetoothRegistryTableChange = KPropertyKeyBluetoothGetRegistryTableChange;
   287 
   288 //-------------
   289 
   290 // Some keys have values that are "wellknown" - these are enumerated here
   291 // RegistryTableChanges
   292 
   293 //-------------
   294 
   295 /**
   296 KRegistryChangeRemoteTable
   297 @see KPropertyKeyBluetoothGetRegistryTableChange
   298 The value in the KPropertyKeyBluetoothGetRegistryTableChange key if the Remote device table changed
   299 @publishedAll
   300 @released
   301 */
   302 const TUint KRegistryChangeRemoteTable = (KUidBluetoothPubSubKeyBase + 12);
   303 
   304 //-------------
   305 
   306 /**
   307 KRegistryChangeLocalTable
   308 @see KPropertyKeyBluetoothGetRegistryTableChange
   309 The value in the KPropertyKeyBluetoothGetRegistryTableChange key if the Local device table changed
   310 @publishedAll
   311 @released
   312 */
   313 const TUint KRegistryChangeLocalTable = (KUidBluetoothPubSubKeyBase + 13);
   314 
   315 //-------------
   316 
   317 /**
   318 KRegistryChangeCSYTable
   319 @see KPropertyKeyBluetoothGetRegistryTableChange
   320 The value in the KPropertyKeyBluetoothGetRegistryTableChange key if the CSY-settings table changed
   321 @publishedAll
   322 @released
   323 */
   324 const TUint KRegistryChangeCSYTable = (KUidBluetoothPubSubKeyBase + 14);
   325 
   326 //-------------
   327 
   328 /**
   329 KPropertyKeyBluetoothGetDeviceName
   330 The key to observe the name of device of the local device
   331 The P&S value will be of type EText and contain the local device name in Unicode.
   332 At all times the name must have a length <= KHCILocalDeviceNameMaxLength (defined in hciconsts.h).
   333 @see Bluetooth Core Specification
   334 @publishedAll
   335 @released
   336 @capability LocalServices	Needed for both read and write access to this property
   337 @capability NetworkControl	Needed for write access to this property
   338 */
   339 const TUint KPropertyKeyBluetoothGetDeviceName = (KUidBluetoothPubSubKeyBase + 15);
   340 
   341 /**
   342 KPropertyKeyBluetoothSetDeviceName
   343 The key to set the name of device of the local device
   344 The P&S value will be of type EText and contain the local device name in Unicode.
   345 At all times the name must have a length <= KHCILocalDeviceNameMaxLength (defined in hciconsts.h).
   346 @see Bluetooth Core Specification
   347 @publishedAll
   348 @released
   349 @capability LocalServices	Needed for both read and write access to this property
   350 @capability NetworkControl	Needed for both read and write access to this property
   351 */
   352 const TUint KPropertyKeyBluetoothSetDeviceName = (KUidBluetoothPubSubKeyBase + 16);
   353 
   354 //-------------
   355 
   356 /**
   357 KPropertyKeyBluetoothGetCorruptRegistryResetIndication
   358 This key is intended to be used by the UI to be informed when a corrupt 
   359 Bluetooth registry has been detected so that the UI can inform the user
   360 that all of the pairings they have made have been lost.
   361 
   362 The P&S value will either be 0 or give the tick count, as given by 
   363 User::TickCount(), at the time which the corrupt Bluetooth Registry has 
   364 been restored or replaced. If the key is 0 this means that the Bluetooth 
   365 registry has not been found to be corrupt since the device was turned on.
   366 @publishedAll
   367 @released
   368 @capability LocalServices	Needed for both read and write access to this property
   369 @capability NetworkControl	Needed for write access to this property
   370 */
   371 const TUint KPropertyKeyBluetoothGetCorruptRegistryResetIndication = (KUidBluetoothPubSubKeyBase + 17);
   372 
   373 /**
   374 KPropertyKeyBluetoothCorruptRegistryReset
   375 This is a deprecated constant, maintained for source compatibility with non-secured 
   376 Symbian OS platforms.
   377 
   378 @publishedAll
   379 @deprecated
   380 */
   381 const TUint KPropertyKeyBluetoothCorruptRegistryReset = KPropertyKeyBluetoothGetCorruptRegistryResetIndication;
   382  
   383 //-------------
   384 
   385 /**
   386 KPropertyKeyBluetoothGetAcceptPairedOnlyMode
   387 This key is intended to be used by the UI to discover whether a device will accept all connections or only paired ones.
   388 The P&S value will contain a boolean: ETrue - the stack will only to accept connection requests from paired devices.
   389 EFalse - the stack will accept connection requests from both paired and unpaired devices.
   390 @publishedAll
   391 @released
   392 @capability LocalServices	Needed for both read and write access to this property
   393 @capability NetworkControl	Needed for write access to this property
   394 */
   395 const TUint KPropertyKeyBluetoothGetAcceptPairedOnlyMode = (KUidBluetoothPubSubKeyBase + 18);
   396 
   397 /**
   398 KPropertyKeyBluetoothSetAcceptPairedOnlyMode
   399 The key to set the mode for handling connection requests
   400 The P&S value will contain a boolean: ETrue - the user wishes ONLY to accept connection requests from paired devices.
   401 EFalse - the user wishes to accept connection requests from both paired and unpaired devices.
   402 @publishedAll
   403 @released
   404 @capability LocalServices	Needed for both read and write access to this property
   405 @capability NetworkControl	Needed for both read and write access to this property
   406 */
   407 const TUint KPropertyKeyBluetoothSetAcceptPairedOnlyMode = (KUidBluetoothPubSubKeyBase + 19);
   408 
   409 /**
   410 KPropertyKeyBluetoothHostResolverActive
   411 The key is intended to be used by the UI to discover whether the device is attempting to do a discovery
   412 If the device is attempting a discovery activities such as streaming of AV data will be affected
   413 The P&S value will contain a boolean: ETrue - the stack is attempting a discovery/discovery+rnr
   414 EFalse - the stack is curently not attempting a discovery
   415 @publishedAll
   416 @released
   417 @capability LocalServices	Needed for both read and write access to this property
   418 @capability NetworkControl	Needed for write access to this property
   419 */
   420 const TUint KPropertyKeyBluetoothHostResolverActive = (KUidBluetoothPubSubKeyBase + 20); 
   421 
   422 
   423 /**
   424 KPropertyKeyBluetoothGetSimplePairingDebugMode
   425 The key is intended to be used by a UI to provide an indication to the user of the device that the
   426 Symbian simple pairing debug mode has been enabled.
   427 As this mode should only be being used by engineers, and provides a potential security risk for
   428 end users the UI should make obvious to an end-user that they have entered this mode and what it
   429 means for them.
   430 @capability LocalServices	Needed for both read and write access to this property
   431 @capability NetworkControl	Needed for write access to this property
   432 */
   433 const TUint KPropertyKeyBluetoothGetSimplePairingDebugMode = (KUidBluetoothPubSubKeyBase + 22);
   434 
   435 
   436 #endif //BT_SUBSCRIBE_H