Writing an Extension Layer

The Bluetooth stack implementation in Windows CE allows extension layers to be installed on top of the HCI layer. An extension layer can be written as an installable stream device driver. Stream device drivers make use of common APIs to manage a device. The following list shows these common APIs:

  • XXX_Init
  • XXX_Deinit
  • XXX_Read
  • XXX_Write
  • XXX_Open
  • XXX_Close
  • XXX_IOControl
  • XXX_Seek
  • XXX_PowerUp
  • XXX_PowerDown

For a detailed discussion about stream interface drivers, see Stream Interface Drivers.

With the installable device driver architecture, applications can load the new extension layer DLL using the standard stream driver loading procedure. For example, to load the extension layer DLL MyExt.dll, an application will register the device and create an instance using the following function calls:

HANDLE hDev = RegisterDevice (L"XYZ", 1, L"myExt.dll", NULL);

HANDLE hFile = CreateFile (
L"XYZ1:", 
0, 0, NULL, 
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL
);

See Also

Enhancing the Bluetooth Stack

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.