bttypes.h File Reference

KMinESCOLatency

const TIntKMinESCOLatency[static]

Minimum eSCO connection latency in milliseconds. Attempts to specify less than this will be silently increased to this level.

Typedef THCIConnHandle

typedef TUint16 THCIConnHandle

Typedef to represent a HCI connection handle.

Enum TBTBasebandRole

Bluetooth SIG specified values for specification of (piconet) role.

EnumeratorValueDescription
EMaster0x00

Master role

ESlave0x01

Slave role

ERoleUnknown

Unknown role

Enum TBTLinkMode

Bluetooth SIG specified values for indicating link modes.

EnumeratorValueDescription
EActiveMode0x00

Active mode

EHoldMode0x01

Hold mode

ESniffMode0x02

Sniff mode

EParkMode0x04

Park mode

EScatterMode0x08

Scatter mode

Typedef TBTLinkModeSet

typedef TUint32 TBTLinkModeSet

Typedef to represent a union of TBTLinkMode values.

Enum TBTLinkModeCombinations

Bitmask values to help request combinations of link modes.

See also: TBTLinkMode

EnumeratorValueDescription
EAnyLowPowerMode(EHoldMode | ESniffMode | EParkMode | EScatterMode)

Any low power mode

Enum TBTPacketType

Bluetooth SIG specified values for indicating packet types.

DM1, DH1, DM3, DH3, DM5, DH5 are ACL packet types HV1, HV2, HV3 are SCO (synchronous link) packet types

EnumeratorValueDescription
EPacketsDM10x0008

DM1 ACL packet type

EPacketsDH10x0010

DH1 ACL packet type

EPacketsDM30x0400

DM3 ACL packet type

EPacketsDH30x0800

DH3 ACL packet type

EPacketsDM50x4000

DM5 ACL packet type

EPacketsDH50x8000

DH5 ACL packet type

EPackets2_DH10x0002

2-DH1 ACL packet type

EPackets3_DH10x0004

3-DH1 ACL packet type

EPackets2_DH30x0100

2-DH3 ACL packet type

EPackets3_DH30x0200

3-DH3 ACL packet type

EPackets2_DH50x1000

2-DH5 ACL packet type

EPackets3_DH50x2000

3-DH5 ACL packet type

EPacketsHV10x0020

HV1 SCO packet type

EPacketsHV20x0040

HV2 SCO packet type

EPacketsHV30x0080

HV3 SCO packet type

Typedef TBTSCOPackets

typedef TUint16 TBTSCOPackets

Typedef to represent a set of SCO packet types.

Typedef TBTACLPackets

typedef TUint16 TBTACLPackets

Typedef to represent a set of ACL packet types.

Enum TBTPacketTypeCombinations

Bitmask values to help request combinations of packets.

See also: TBTPacketType

EnumeratorValueDescription
EAnyACLPacketEPacketsDM1 | EPacketsDM3 | EPacketsDM5 | EPacketsDH1 | EPacketsDH3 | EPacketsDH5

Any ACL packet

EAnyNonEdrACLPacketEAnyACLPacket | EPackets2_DH1 | EPackets3_DH1 | EPackets2_DH3 | EPackets3_DH3 | EPackets2_DH5 | EPackets3_DH5

Any Non-EDR ACL packet

EAnySCOPacketEPacketsHV1 | EPacketsHV2 | EPacketsHV3

Any SCO packet

EAnyPacketEAnyACLPacket | EAnySCOPacket

Any packet

Typedef TBTSyncPacketTypes

typedef TUint32 TBTSyncPacketTypes

Typedef to represent a set of synchronous packet types (SCO and eSCO on v1.2).

See also: TBTSyncPackets::TSyncPackets

KSCOvsSyncHVOffset

const TIntKSCOvsSyncHVOffset[static]

Deprecated

This constant is no longer needed to translate the SCO mapping of HV packet types to Synchronous because CBluetoothSynchronousLink::SetupConnection(const TBTDevAddr& aBDAddr, const TUint16 aPacketTypes) adjusts aPacketTypes internally on behalf of clients.

NONSHARABLE_CLASS ( TBTSyncPackets )

NONSHARABLE_CLASS(TBTSyncPackets)

Class to represent a set of synchronous packet types (SCO and eSCO on v1.2). This differs from TBTSyncPacketTypes as it is the interface used by CBluetoothSynchronousLink in order to detect the difference between a pre and post eSCO caller. This is necessary as HV1 packets in the SCO numbering clash with EV5 packets in the sync numbering.

Enum TBTeSCORetransmissionTypes

eSCO links can have different retransmission options, optimised for link usage, power or reliability.

See also: CBluetoothSynchronousLink::SetRetransmissionEffort

KESCOBandwidthDontCare

const TUint32KESCOBandwidthDontCare[static]

eSCO unspecified bandwidth. This value can only be used by the accepting side of an eSCO link, to allow any bandwidth to be specified by the initiator. Otherwise both sides of the link must agree on the same bandwidth.

See also: CBluetoothSynchronousLink::SetBandwidth CBluetoothSynchronousLink::AcceptConnection

Enum TBTSupportedFeatures

Bluetooth SIG specified values indicating whether a device is physically able to support a baseband (or link manager protocol) feature

EnumeratorValueDescription
ESupportedThreeSlotPackets1<<0

Three slot packets are supported

ESupportedFiveSlotPackets1<<1

Five slot packets are supported

ESupportedEncryption1<<2

Encryption is supported

ESupportedSlotOffset1<<3

Slot offset is supported

ESupportedTimingAccuracy1<<4

Timing accuracy is supported

ESupportedSwitch1<<5

Role switch is supported

ESupportedHoldMode1<<6

Hold mode is supported

ESupportedSniffMode1<<7

Sniff mode is supported

ESupportedParkMode1<<8

Park mode is supported

ESupportedRSSI1<<9

Receive signal strength indication is supported

ESupportedChannelQualityDrivenDataRate1<<10

Channel quality driven data rate is supported

ESupportedSCOLink1<<11

SCO links are supported

ESupportedHV2Packets1<<12

HV2 packets are supported

ESupportedHV3Packets1<<13

HV3 packets are supported

ESupportedu_lawLog1<<14

SCO u-law encoding is supported

ESupportedA_lawLog1<<15

SCO A-law encoding is supported

ESupportedCVSD1<<16

SCO Continuously variable slope delta modulation is supported

ESupportedPagingScheme1<<17

Paging scheme is supported

ESupportedPowerControl1<<18

Power control is supported

ESupportedTransparentSCOData1<<19

Transparent SCO data is supported

ESupportedFlowControlLagBit01<<20

Flow control lag bit 0 is supported

ESupportedFlowControlLagBit11<<21

Flow control lag bit 1 is supported

ESupportedFlowControlLagBit21<<22

Flow control lag bit 2 is supported

Enum TBTPhysicalLinkStateNotifier

Bitmask values for notifying/requesting notification of the state of a physical link.

These values have a two fold purpose: 1) They can be used along with TBTPhysicalLinkStateNotifierCombinations to specify a set of baseband change events for which notification is desired. 2) They can be used to notify the state of a physical link or a subset of that state. For example if only mode change events are being monitored, then at each mode change event only the bit reperesenting the new mode will be returned, however if the whole link state is required, then a combination of bit values indicating that state will be returned.

THESE BIT VALUES MUST ONLY BE USED WHEN REQUESTING NOTIFICATION, OR WHEN PARSING THE RESULTS OF A NOTIFICATION. All other baseband state activities should use one of the appropriate Bluetooth SIG specified enums

See also: TBTBasebandRole TBTLinkMode TBTLinkModeCombinations TBTPacketType TBTPacketTypeCombinations

EnumeratorValueDescription
ENotifyMaster0x00000001

Master

ENotifySlave0x00000002

Slave

ENotifyActiveMode0x00000004

Active mode

ENotifySniffMode0x00000008

Sniff mode

ENotifyParkMode0x00000010

Park mode

ENotifyHoldMode0x00000020

Hold mode

ENotifyMaxSlots10x00000040

Max slots 1

ENotifyMaxSlots30x00000080

Max slots 3

ENotifyMaxSlots50x00000100

Max slots 5

ENotifyPacketsDM10x00000200

Packets DM1

ENotifyPacketsDH10x00000400

Packets DH1

ENotifyPacketsDM30x00000800

Packets DM3

ENotifyPacketsDH30x00001000

Packets DH3

ENotifyPacketsDM50x00002000

Packets DM5

ENotifyPacketsDH50x00004000

Packets DH5

ENotifyPacketsHV10x00008000

HV1

ENotifyPacketsHV20x00010000

HV2

ENotifyPacketsHV30x00020000

HV3

ENotifyAuthenticationComplete0x00040000

Authentication Complete

ENotifyEncryptionChangeOn0x00080000

Encryption Change On

ENotifyEncryptionChangeOff0x00100000

Encryption Change Off

ENotifyPhysicalLinkUp0x00200000

Physical Link Up

ENotifyPhysicalLinkDown0x00400000

Physical Link Down

ENotifyPhysicalLinkError0x00800000

Physical Link Error

ENotifySynchronousLinkUp0x01000000

Synchronous Link Up

ENotifySynchronousLinkDown0x02000000

Synchronous Link Down

ENotifySynchronousLinkError0x04000000

Synchronous Link Error

ENotifySCOLinkUpENotifySynchronousLinkUp

DeprecatedThis has been superseded by ENotifySynchronousLinkUp

See also: ENotifySynchronousLinkUp

ENotifySCOLinkDownENotifySynchronousLinkDown

DeprecatedThis has been superseded by ENotifySynchronousLinkDown

See also: ENotifySynchronousLinkDown

ENotifySCOLinkErrorENotifySynchronousLinkError

DeprecatedThis has been superseded by ENotifySynchronousLinkError

See also: ENotifySynchronousLinkError

Enum TBTPhysicalLinkStateNotifierCombinations

Bitmask values to help request notification of the state of a physical link.

See also: TBTPhysicalLinkStateNotifier

EnumeratorValueDescription
ENotifyAnyRoleENotifyMaster | ENotifySlave
ENotifyAnyLowPowerModeENotifySniffMode | ENotifyParkMode | ENotifyHoldMode
ENotifyAnyPowerModeENotifyActiveMode | ENotifyAnyLowPowerMode
ENotifyAnyMaxSlotsENotifyMaxSlots1 | ENotifyMaxSlots3 | ENotifyMaxSlots5
ENotifyAnyACLPacketTypeENotifyPacketsDM1 | ENotifyPacketsDH1 | ENotifyPacketsDM3 | EPacketsDH3 | EPacketsDM5 | EPacketsDH5
ENotifyAnySCOPacketTypeENotifyPacketsHV1 | ENotifyPacketsHV2 | ENotifyPacketsHV3
ENotifyAnyPacketTypeENotifyAnyACLPacketType | ENotifyAnySCOPacketType
ENotifyAnyPhysicalLinkState0xffffffff

KSdpUUIDMaxLength

const TIntKSdpUUIDMaxLength[static]

The maximum length of an SDP UUID.

KBTDevAddrSize

const TIntKBTDevAddrSize

The size of a bluetooth device address in bytes.

KBTMaxDevAddrSize

const TIntKBTMaxDevAddrSize

The size of a bluetooth device address in bytes.

NONSHARABLE_CLASS ( TBTDevAddr )

NONSHARABLE_CLASS(TBTDevAddr)

48-bit bluetooth device address. Each bluetooth device has a unique address built into the hardware, which is represented by this class. Used for identifying remote addresses. The interface operates in a big-endian manner -- e.g. addr[0] refers to the most significant byte of the address. This is the same ordering as the addresses would naturally be written down on paper.

Typedef RBTDevAddrArray

typedef RArray< TBTDevAddr >RBTDevAddrArray

Array of device addresses

See also: Enumerate method

NONSHARABLE_CLASS ( TUUID )

NONSHARABLE_CLASS(TUUID)

A Bluetooth Universally Unique Identifier.

This is a 128-bit quantity that can be created without a central registry while still being globally unique. UUIDs are always held in full 128 bit format, however they can be set from BT SIG short form (16 or 32 bit) addresses, and returned as down to their shortest form using ShortestForm().

NONSHARABLE_CLASS ( RUUIDContainer )

NONSHARABLE_CLASS(RUUIDContainer)

A UUID container class

NONSHARABLE_CLASS ( RExtendedInquiryResponseUUIDContainer )

NONSHARABLE_CLASS(RExtendedInquiryResponseUUIDContainer)

An EIR UUID container class. Contains UUIDs and indications of data completeness

KHCILinkKeySize

const TUint8KHCILinkKeySize

The size of a link key, in bytes.

KHCIPINCodeSize

const TUint8KHCIPINCodeSize

The size of a pin code, in bytes.

NONSHARABLE_CLASS ( TLinkKeyV10 )

NONSHARABLE_CLASS(TLinkKeyV10)

Link key structure.

Typedef TBTLinkKey

typedef TPckgBuf< TLinkKeyV10 >TBTLinkKey

Typedef'ed TPckgBuf of the class TLinkKeyV10.

Enum TBTLinkKeyType

The type of a link key with a remote device

EnumeratorValueDescription
ELinkKeyCombination

this key has been generated with pairing with pre-v2.1 Bluetooth devices.

ELinkKeyUnauthenticatedUpgradable

this key hasn't yet been tried with MITM protection

ELinkKeyUnauthenticatedNonUpgradable

this key tried MITM protection; remote device incapable

ELinkKeyAuthenticated

this key authenticated with MITM protection

ELinkKeyDebug

this key has been generated when in simple pairing debug mode

NONSHARABLE_CLASS ( TPINCodeV10 )

NONSHARABLE_CLASS(TPINCodeV10)

Bluetooth PIN Code structure.

Typedef TBTPinCode

typedef TPckgBuf< TPINCodeV10 >TBTPinCode

Typedef'ed TPckgBuf of the class TPINCodeV10.

NONSHARABLE_CLASS ( TBluetoothNameRecordWrapper )

NONSHARABLE_CLASS(TBluetoothNameRecordWrapper)

Extended Inquiry Response Class This class takes a reference from inquiry result, which could hold both local name and Extended Inquiry Response. It provides API to parse and return the local name and data for any Extended Inquiry Response tag. To get Device Name, Manufacturer Specific Data or Flags, firstly getting length of the data, and then allocating a suitable buffer, which is where the data will be placed.

NONSHARABLE_CLASS ( TBTBasebandEventNotification )

NONSHARABLE_CLASS(TBTBasebandEventNotification)

Contains information resulting from a baseband notification.

Typedef TBTBasebandEvent

typedef TPckgBuf< TBTBasebandEventNotification >TBTBasebandEvent

Typedef'ed pckgbuf of the class TBTBasebandEventNotification.

KGIAC

const TUintKGIAC

General Unlimited Inquiry Access Code

KLIAC

const TUintKLIAC

Limited Inquiry Access Code

Enum THCIScanEnable

HCI Scan enable mask

EnumeratorValueDescription
ENoScansEnabled0x00

No scans enabled

EInquiryScanOnly0x01

Inquiry scan enabled

EPageScanOnly0x02

Page scan enabled

EInquiryAndPageScan0x03

Inquiry and page scan enabled

Enum TL2CapChannelMode

NONSHARABLE_CLASS ( TL2CapConfig )

NONSHARABLE_CLASS(TL2CapConfig)

API class for setting up an L2Cap channel configuration.

This class may be used to set all or a subset of the following configuration items: Channel Reliability (and associated timer) Maximum Transmission Unit (MTU) value preferred during MTU negotiation Maximum Receive Unit (MRU) value preferred during MRU negotiation Minimum MTU value acceptable during MTU negotiation Minimum MRU value acceptable during MRU negotiation Channel Priority

If a configuration item is to be set, then its 'Set' or 'Configure' method should be called.

Once a TL2CapConfig object has been set up it can be used to configure a socket using RSocket::SetOption or RSocket::Ioctl (or the CBluetoothSocket equivalents).

If the preferred Maximum Transmission Unit (MTU) value is specified but its minimum acceptable value is not specified in the same object, then the minimum acceptable value will be implicitly taken to be equal to the preferred MTU by the L2CAP APIs processing the object. This means that only an MTU greater than or equal to the preferred MTU will be accepted from the peer during negotiation.

If the Maximum Receive Unit (MRU) value is specified but its minimum acceptable value is not, then the minimum acceptable value is implicitly taken to be equal to the protocol minimum (48 bytes) by the L2CAP APIs processing the object.

Note that even though this API allows setting of Obsolescence timer, outgoing packet flushing may not be supported on all hardware.

See also: RSocket CBluetoothSocket

Typedef TL2CapConfigPkg

typedef TPckgBuf< TL2CapConfig >TL2CapConfigPkg

Typedef to represent a L2CAP Config object.

Enum TEirWrapperPanics

EnumeratorValueDescription
EEirBadUuid16List0
EEirBadUuid128List1

_LIT ( KEirWrapperPanicName, "ExtendedInquiryResponseWrapper" )

_LIT(KEirWrapperPanicName,
"ExtendedInquiryResponseWrapper"
)