// bthddi.h
typedef struct _BRB {
union {
#if ...
_BRB_HEADER BrbHeader;
#else
struct _BRB_HEADER BrbHeader;
#endif
#if ...
_BRB_GET_DEVICE_INTERFACE_STRING BrbGetDeviceInterfaceString;
#else
struct _BRB_GET_DEVICE_INTERFACE_STRING BrbGetDeviceInterfaceString;
#endif
#if ...
_BRB_GET_LOCAL_BD_ADDR BrbGetLocalBdAddress;
#else
struct _BRB_GET_LOCAL_BD_ADDR BrbGetLocalBdAddress;
#endif
#if ...
_BRB_ACL_GET_MODE BrbAclGetMode;
#else
struct _BRB_ACL_GET_MODE BrbAclGetMode;
#endif
#if ...
_BRB_ACL_ENTER_ACTIVE_MODE BrbAclEnterActiveMode;
#else
struct _BRB_ACL_ENTER_ACTIVE_MODE BrbAclEnterActiveMode;
#endif
#if ...
_BRB_PSM BrbPsm;
#else
struct _BRB_PSM BrbPsm;
#endif
#if ...
_BRB_L2CA_REGISTER_SERVER BrbL2caRegisterServer;
#else
struct _BRB_L2CA_REGISTER_SERVER BrbL2caRegisterServer;
#endif
#if ...
_BRB_L2CA_UNREGISTER_SERVER BrbL2caUnregisterServer;
#else
struct _BRB_L2CA_UNREGISTER_SERVER BrbL2caUnregisterServer;
#endif
#if ...
_BRB_L2CA_OPEN_CHANNEL BrbL2caOpenChannel;
#else
struct _BRB_L2CA_OPEN_CHANNEL BrbL2caOpenChannel;
#endif
#if ...
_BRB_L2CA_CLOSE_CHANNEL BrbL2caCloseChannel;
#else
struct _BRB_L2CA_CLOSE_CHANNEL BrbL2caCloseChannel;
#endif
#if ...
_BRB_L2CA_PING BrbL2caPing;
#else
struct _BRB_L2CA_PING BrbL2caPing;
#endif
#if ...
_BRB_L2CA_ACL_TRANSFER BrbL2caAclTransfer;
#else
struct _BRB_L2CA_ACL_TRANSFER BrbL2caAclTransfer;
#endif
#if ...
_BRB_L2CA_UPDATE_CHANNEL BrbL2caUpdateChannel;
#else
struct _BRB_L2CA_UPDATE_CHANNEL BrbL2caUpdateChannel;
#endif
#if ...
_BRB_L2CA_OPEN_ENHANCED_CHANNEL BrbL2caOpenEnhancedChannel;
#else
struct _BRB_L2CA_OPEN_ENHANCED_CHANNEL BrbL2caOpenEnhancedChannel;
#endif
#if ...
_BRB_SCO_REGISTER_SERVER BrbScoRegisterServer;
#else
struct _BRB_SCO_REGISTER_SERVER BrbScoRegisterServer;
#endif
#if ...
_BRB_SCO_UNREGISTER_SERVER BrbScoUnregisterServer;
#else
struct _BRB_SCO_UNREGISTER_SERVER BrbScoUnregisterServer;
#endif
#if ...
_BRB_SCO_OPEN_CHANNEL BrbScoOpenChannel;
#else
struct _BRB_SCO_OPEN_CHANNEL BrbScoOpenChannel;
#endif
#if ...
_BRB_SCO_CLOSE_CHANNEL BrbScoCloseChannel;
#else
struct _BRB_SCO_CLOSE_CHANNEL BrbScoCloseChannel;
#endif
#if ...
_BRB_SCO_FLUSH_CHANNEL BrbScoFlushChannel;
#else
struct _BRB_SCO_FLUSH_CHANNEL BrbScoFlushChannel;
#endif
#if ...
_BRB_SCO_TRANSFER BrbScoTransfer;
#else
struct _BRB_SCO_TRANSFER BrbScoTransfer;
#endif
#if ...
_BRB_SCO_GET_CHANNEL_INFO BrbScoGetChannelInfo;
#else
struct _BRB_SCO_GET_CHANNEL_INFO BrbScoGetChannelInfo;
#endif
#if ...
_BRB_SCO_GET_SYSTEM_INFO BrbScoGetSystemInfo;
#else
struct _BRB_SCO_GET_SYSTEM_INFO BrbScoGetSystemInfo;
#endif
};
} BRB, *PBRB;
View the official Windows Driver Kit DDI referenceNo description available.
Profile drivers use Bluetooth request blocks (BRBs), to send requests to the Bluetooth driver stack. The BRB structure defines the format for all supported commands that can be sent to a Bluetooth device.
BrbHeaderDescribes basic information about the request being sent to the Bluetooth device. For more information, see BRB_HEADER.
BrbGetDeviceInterfaceStringDefines the format for a command to get the interface string of the current Bluetooth device object. For more information about getting the device interface string, see _BRB_GET_DEVICE_INTERFACE_STRING.
BrbL2caRegisterServerDefines the format for a command to register a L2CAP server. For more information about registering a L2CAP server, see _BRB_L2CA_REGISTER_SERVER.
BrbL2caUnregisterServerDefines the format for a command to unregister a previously registered L2CAP server. For more information about unregistering a L2CAP server, see _BRB_L2CA_UNREGISTER_SERVER.
BrbL2caOpenChannelDefines the format of the L2CAP open channel and the L2CAP open channel response commands sent to the Bluetooth device. For more information about opening a L2CAP channel, see _BRB_L2CA_OPEN_CHANNEL.
BrbL2caCloseChannelDefines the format of a L2CAP close channel command sent to the Bluetooth device. For more information about closing a L2CAP channel, see _BRB_L2CA_CLOSE_CHANNEL.
BrbL2caPingDefines the format of a command that sends a L2CAP_EchoReq message to and receives a L2CAP_EchoRsp message from a remote Bluetooth device over a L2CAP connection. For more information about pinging a L2CAP connection, see _BRB_L2CA_PING.
BrbL2caAclTransferDefines the format of a command that performs read and write operations over a L2CAP connection to a Bluetooth device. For more information about ACL transfers, see _BRB_L2CA_ACL_TRANSFER.
BrbGetLocalBdAddressDefines the format of a command that returns the address of the local Bluetooth radio. For more information about getting the local Bluetooth device address, see _BRB_GET_LOCAL_BD_ADDR.
BrbPsmDefines the format for the commands that register and unregister a Protocol/Service Multiplexer (PSM) that L2CAP Bluetooth devices connect to. For more information about PSMs, see _BRB_PSM.
BrbL2caUpdateChannelDefines the format of a command that updates the settings of a L2CAP channel to a Bluetooth device. For more information about updating a L2CAP channel, see _BRB_L2CA_UPDATE_CHANNEL.
BrbScoRegisterServerDefines the format for a command to register a SCO server. For more information about registering a SCO server, see _BRB_SCO_REGISTER_SERVER.
BrbScoUnregisterServerDefines the format for a command to unregister a previously registered SCO server. For more information about unregistering a SCO server, see _BRB_SCO_UNREGISTER_SERVER.
BrbScoOpenChannelDefines the format of SCO open channel and the SCO open channel response commands sent to the Bluetooth device. For more information about opening a SCO channel, see _BRB_SCO_OPEN_CHANNEL.
BrbScoCloseChannelDefines the format of a SCO close channel command sent to the Bluetooth device. For more information about closing a SCO channel, see _BRB_SCO_CLOSE_CHANNEL.
BrbScoFlushChannelDefines the format of a SCO flush channel command. For more information about flushing a SCO channel, see _BRB_SCO_FLUSH_CHANNEL.
BrbScoTransferDefines the format of a command that reads isochronous data from or writes data to a SCO channel from a Bluetooth device. For more information, see _BRB_SCO_TRANSFER.
BrbScoGetChannelInfoDefines the format of a command that reads the settings of a SCO channel to a Bluetooth device. For more information about SCO transfers, see _BRB_SCO_GET_CHANNEL_INFO.
BrbScoGetSystemInfoDefines the format of a command that reads the SCO settings of the local system. For more information about getting local SCO settings, see _BRB_SCO_GET_SYSTEM_INFO.
BrbAclGetModeDefines the format of a command to get the current ACL mode. For more information about getting the current ACL mode, see _BRB_ACL_GET_MODE.
BrbAclEnterActiveModeDefines the format of a command to enter active ACL mode. For more information about entering active ACL mode, see _BRB_ACL_ENTER_ACTIVE_MODE.
BrbL2caOpenEnhancedChannelDefines the format of the enhanced L2CAP open channel and the enhanced L2CAP open channel response commands sent to the Bluetooth device. For more information about opening an enhanced L2CAP channel, see _BRB_L2CA_OPEN_ENHANCED_CHANNEL. This member is present in Windows 8 and later versions of Windows.
_BRB_GET_DEVICE_INTERFACE_STRING