HCI_PARAMETERS (Windows Embedded CE 6.0)
1/6/2010
This structure is used to define HCI transport interfaces.
Syntax
typedef struct __hci_parameters {
unsigned int uiSize;
unsigned int fInterfaceVersion;
int iMaxSizeRead;
int iMaxSizeWrite;
int iReadBufferHeader;
int iReadBufferTrailer;
int iWriteBufferHeader;
int iWriteBufferTrailer;
int uiFlags;
int fHardwareVersion;
unsigned int uiResetDelay;
unsigned int uiWriteTimeout;
unsigned int uiDriftFactor;
int iScoWriteLowNumPackets;
int iScoWriteNumPackets;
int iScoWritePacketSize;
int iScoSampleSize;
} HCI_PARAMETERS;
Members
- uiSize
Structure size. Must be sizeof(HCI_PARAMETERS).
- fInterfaceVersion
Interface version. Must be HCI_INTERFACE_VERSION_1_0. This is version of the transport driver, not the underlying hardware.
- iMaxSizeRead
Maximum size of the read buffer, not including headers and trailers. This value must at least accommodate the largest HCI command, but may be bigger. Buffer submitted to HCI_ReadPacket will be at least as big.
- iMaxSizeWrite
Maximum size of the write packet, not including headers and trailers. This value must accommodate at least the largest HCI command, but must be no bigger than the maximum data packet accepted by transport. The packet given to HCI_WritePacket will be no bigger than this.
- iReadBufferHeader
This is a hint value, used to compute (along with iMaxSizeRead and iReadBufferTrailer) maximum size of buffer prepared for HCI_ReadPacket.
- iReadBufferTrailer
This is a hint value, used to compute (along with iMaxSizeRead and iReadBufferHeader) maximum size of buffer prepared for HCI_ReadPacket.
- iWriteBufferHeader
Number of bytes to preallocate for transport header in HCI_WritePacket at the beginning of the packet (between 0 and BD_BUFFER::cStart).
- iWriteBufferTrailer
Number of bytes to preallocate for transport trailer in HCI_WritePacket at the end of the packet (between BD_BUFFER::cEnd and BD_BUFFER::cSize).
uiFlags
These flags specify the HCI Commands that should be disabled. It could be any combination of the following.Flag Value HCI_FLAGS_NORESET
0x00000001. Disables the HCI_Reset command. Setting this flag ensures that the HCI layer does not send this command to the HCI transport layer, after a connection is established between the two layers.
HCI_FLAGS_NOLOCALNAME
0x00000002. Disables the HCI_Change_Local_Name command that is used to modify the friendly name of the device.
HCI_FLAGS_NOROLESWITCH
0x00000004. Changes the role-switching parameter value for HCI_Create_Connection and HCI_Accept_Connection_Request commands, for a given transport.
fHardwareVersion
Bluetooth specification version of the underlying Bluetooth hardware. Note that this is different from the fInterfaceVersion, which is a version of the transport driver. The Bluetooth specification version can be any of the following.Specification version Value HCI_HARDWARE_VERSION_V_1_0_A
0
HCI_HARDWARE_VERSION_V_1_0_B
1
HCI_HARDWARE_VERSION_V_1_1
2
- uiResetDelay
Amount of time, in milliseconds, between receiving command completion for HCI_Reset command and the next command can be executed.
- uiWriteTimeout
Amount of time, in milliseconds, after which the command aborts if the card does not respond with CommandComplete or CommandStatus event.
- uiDriftFactor
Amount of time, in milliseconds, for which the clock offset in inquiry data is presumed to be valid.
- iScoWriteLowNumPackets
Minimum number of outstanding SCO write packets in backlog (0 - use default).
- iScoWriteNumPackets
Maximum number of outstanding SCO write packets in backlog (0 - use default).
- iScoWritePacketSize
Size of each SCO packet (0 - use default, -1 - SCO not supported).
- iScoSampleSize
Sample size of SCO packet (8 or 16 bits).
Requirements
Header | bt_hcip.h |
Windows Embedded CE | Windows CE .NET 4.0 and later |
See Also
Reference
Bluetooth HCI Transport Layer Structures
HCI_ReadPacket
HCI_WritePacket