ReactOS 0.4.15-dev-7842-g558ab78
CHciLocal Class Reference

#include <fbtHciLocal.h>

Inheritance diagram for CHciLocal:
Collaboration diagram for CHciLocal:

Public Member Functions

 CHciLocal (void)
 
virtual ~CHciLocal (void)
 
virtual int QueueCommand (USHORT nCommand, BYTE *pResultBuffer=NULL, DWORD dwBufferSize=0)
 
virtual int QueueCommandStatus (USHORT nCommand)
 
virtual void DeQueueCommand (int nSlot)
 
virtual DWORD ClearQueue (void)
 
virtual PQueuedCommand GetQueuedCommand (int nSlot)
 
virtual DWORD WaitForCommandComplete (int nSlot)
 
virtual DWORD WaitForCommandStatus (int nSlot, BYTE &nStatus)
 
virtual DWORD SendReset (void)
 
virtual DWORD SendWriteClassOfDevice (BYTE ClassOfDevice[FBT_HCI_DEVICE_CLASS_SIZE])
 
virtual DWORD SendSetEventFilter (BYTE nFilterType, BYTE nFilterConditionType, BYTE nCondition[FBT_HCI_MAX_CONDITION_SIZE], BYTE nConditionBytes)
 
virtual DWORD SendInquiry (ULONG nLAP, BYTE nInquiryLength, BYTE nNumResponses)
 
virtual DWORD SendInquiryCancel (void)
 
virtual DWORD SendCreateConnection (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], USHORT nPacketType, BYTE nPageScanRepetitionMode, BYTE nPageScanMode, USHORT nClockOffset, BYTE nAllowRoleSwitch)
 
virtual DWORD SendDisconnect (USHORT nConnectionHandle, BYTE nReason)
 
virtual DWORD SendSwitchRole (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], BYTE nRole)
 
virtual DWORD SendRemoteNameRequest (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], BYTE nPageScanRepetitionMode, BYTE nPageScanMode, USHORT nClockOffset)
 
virtual DWORD SendReadLocalVersionInformation (FBT_HCI_READ_LOCAL_VERSION_INFORMATION_COMPLETE &CommandComplete)
 
virtual DWORD OnEvent (PFBT_HCI_EVENT_HEADER pEvent, DWORD dwLength)
 
virtual DWORD CommandCompleteHandler (USHORT nCommand, BYTE *pParameters, DWORD dwParameterLength)
 
virtual DWORD CommandStatusHandler (BYTE nStatus, USHORT nCommand)
 
- Public Member Functions inherited from CHci
 CHci (void)
 
virtual ~CHci (void)
 
virtual DWORD StartEventListener (void)
 
virtual DWORD StopEventListener (void)
 
virtual DWORD OnEvent (PFBT_HCI_EVENT_HEADER pEvent, DWORD Length)
 
virtual DWORD OnCommandComplete (BYTE NumHCICommandPackets, USHORT CommandOpcode, BYTE *Parameters, DWORD ParameterLength)
 
virtual DWORD OnCommandStatus (BYTE Status, BYTE NumHCICommandPackets, USHORT CommandOpcode)
 
virtual DWORD OnConnectionRequest (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], ULONG ClassOfDevice[FBT_HCI_DEVICE_CLASS_SIZE], BYTE LinkType)
 
virtual DWORD OnConnectionComplete (BYTE Status, USHORT ConnectionHandle, BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], BYTE LinkType, BYTE EncryptionMode)
 
virtual DWORD OnDisconnectionComplete (BYTE Status, USHORT ConnectionHandle, BYTE Reason)
 
virtual DWORD OnInquiryComplete (BYTE Status, BYTE NumResponses)
 
virtual DWORD OnInquiryResult (BYTE NumResponses, BYTE BD_ADDR[FBT_HCI_VARIABLE_SIZE][FBT_HCI_BDADDR_SIZE], BYTE PageScanRepetitionMode[FBT_HCI_VARIABLE_SIZE], BYTE PageScanPeriodMode[FBT_HCI_VARIABLE_SIZE], BYTE PageScanMode[FBT_HCI_VARIABLE_SIZE], BYTE ClassOfDevice[FBT_HCI_VARIABLE_SIZE][FBT_HCI_DEVICE_CLASS_SIZE], USHORT ClockOffset[FBT_HCI_VARIABLE_SIZE])
 
virtual DWORD OnRemoteNameRequestComplete (BYTE Status, BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], BYTE RemoteName[FBT_HCI_NAME_SIZE])
 
virtual DWORD OnRoleChange (BYTE Status, BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], BYTE Role)
 
virtual DWORD OnPINCodeRequest (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE])
 
virtual DWORD OnLinkKeyNotification (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], BYTE LinkKey[FBT_HCI_LINK_KEY_SIZE])
 
virtual DWORD OnLinkKeyRequest (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE])
 
virtual DWORD OnAuthenticationComplete (BYTE Status, USHORT ConnectionHandle)
 
virtual DWORD OnReadLocalNameComplete (BYTE Status, BYTE Name[FBT_HCI_NAME_SIZE])
 
virtual DWORD OnUnknown (PFBT_HCI_EVENT_HEADER pEvent, DWORD Length)
 
virtual DWORD SendReset (void)
 
virtual DWORD SendInquiry (ULONG LAP, BYTE InquiryLength, BYTE NumResponses)
 
virtual DWORD SendInquiryCancel (void)
 
virtual DWORD SendReadBDADDR (void)
 
virtual DWORD SendWriteScanEnable (BYTE ScanEnable)
 
virtual DWORD SendWriteAuthenticationEnable (BYTE ScanEnable)
 
virtual DWORD SendSetEventFilter (BYTE FilterType, BYTE FilterConditionType, BYTE Condition[FBT_HCI_MAX_CONDITION_SIZE], BYTE ConditionBytes)
 
virtual DWORD SendReadClassOfDevice (void)
 
virtual DWORD SendWriteClassOfDevice (BYTE ClassOfDevice[FBT_HCI_DEVICE_CLASS_SIZE])
 
virtual DWORD SendCreateConnection (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], USHORT PacketType, BYTE PageScanRepetitionMode, BYTE PageScanMode, USHORT ClockOffset, BYTE AllowRoleSwitch)
 
virtual DWORD SendAcceptConnectionRequest (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], BYTE RoleSwitch)
 
virtual DWORD SendDisconnect (USHORT ConnectionHandle, BYTE Reason)
 
virtual DWORD SendWriteLinkSupervisionTimeout (USHORT ConnectionHandle, USHORT LinkSupervisionTimeout)
 
virtual DWORD SendWritePageTimeout (USHORT PageTimeout)
 
virtual DWORD SendRemoteNameRequest (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], BYTE PageScanRepetitionMode, BYTE PageScanMode, USHORT ClockOffset)
 
virtual DWORD SendReadLocalName (void)
 
virtual DWORD SendChangeLocalName (BYTE Name[FBT_HCI_NAME_SIZE])
 
virtual DWORD SendSwitchRole (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], BYTE Role)
 
virtual DWORD SendPINCodeRequestReply (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], BYTE PINCodeLength, BYTE PINCode[FBT_HCI_PIN_CODE_SIZE])
 
virtual DWORD SendPINCodeRequestNegativeReply (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE])
 
virtual DWORD SendLinkKeyRequestReply (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE], BYTE LinkKey[FBT_HCI_LINK_KEY_SIZE])
 
virtual DWORD SendLinkKeyRequestNegativeReply (BYTE BD_ADDR[FBT_HCI_BDADDR_SIZE])
 
virtual DWORD SendReadLocalVersionInformation (void)
 
DWORD CompareBDADDRs (BYTE BD_ADDR1[FBT_HCI_BDADDR_SIZE], BYTE BD_ADDR2[FBT_HCI_BDADDR_SIZE])
 
- Public Member Functions inherited from CBTHW
 CBTHW ()
 
virtual ~CBTHW ()
 
void SetDeviceName (LPCTSTR szDeviceName)
 
DWORD GetDeviceName (LPTSTR szBuffer, DWORD dwBufferSize)
 
virtual DWORD Attach (LPCSTR szDeviceName)
 
virtual DWORD Detach ()
 
HANDLE GetDriverHandle ()
 
BOOL IsAttached ()
 
DWORD SendCommand (DWORD dwCommand, LPVOID lpInBuffer=NULL, DWORD dwInBufferSize=0, LPVOID lpOutBuffer=NULL, DWORD dwOutBufferSize=0, OVERLAPPED *pOverlapped=NULL)
 
DWORD SendData (LPVOID lpBuffer, DWORD dwBufferSize, DWORD *dwBytesSent, OVERLAPPED *pOverlapped)
 
DWORD GetData (LPVOID lpBuffer, DWORD dwBufferSize, DWORD *dwBytesRead, OVERLAPPED *pOverlapped)
 

Protected Member Functions

virtual int FindCommandSlot (USHORT nCommand)
 
- Protected Member Functions inherited from CHci
virtual DWORD SendHciCommand (PFBT_HCI_CMD_HEADER lpCommand, DWORD dwBufferSize)
 
DWORD SendListenForEvent (OVERLAPPED *pOverlapped, BYTE *pEventBuffer)
 

Protected Attributes

QueuedCommand m_QueuedCommands [MAX_QUEUED_COMMANDS]
 
CRITICAL_SECTION m_QueueCriticalSection
 
- Protected Attributes inherited from CHci
HANDLE m_hStopListeningEvent
 
HANDLE m_hListenerReadyEvent
 
HANDLE m_hListenerThread
 
DWORD m_dwListenerThreadId
 
OVERLAPPED m_Overlappeds [HCI_NUMBER_OF_OVERLAPPED_LISTENS]
 
BYTE m_pEventBuffers [HCI_NUMBER_OF_OVERLAPPED_LISTENS][FBT_HCI_EVENT_MAX_SIZE]
 
- Protected Attributes inherited from CBTHW
HANDLE m_hDriver
 
TCHAR m_szDeviceName [1024]
 

Additional Inherited Members

- Static Public Member Functions inherited from CHci
static LPCTSTR GetEventText (BYTE Event)
 
static LPCTSTR GetStatusText (BYTE Status)
 
static LPCTSTR GetManufacturerName (USHORT Company)
 

Detailed Description

Definition at line 20 of file fbtHciLocal.h.

Constructor & Destructor Documentation

◆ CHciLocal()

CHciLocal::CHciLocal ( void  )

◆ ~CHciLocal()

virtual CHciLocal::~CHciLocal ( void  )
virtual

Member Function Documentation

◆ ClearQueue()

virtual DWORD CHciLocal::ClearQueue ( void  )
virtual

◆ CommandCompleteHandler()

virtual DWORD CHciLocal::CommandCompleteHandler ( USHORT  nCommand,
BYTE pParameters,
DWORD  dwParameterLength 
)
virtual

◆ CommandStatusHandler()

virtual DWORD CHciLocal::CommandStatusHandler ( BYTE  nStatus,
USHORT  nCommand 
)
virtual

◆ DeQueueCommand()

virtual void CHciLocal::DeQueueCommand ( int  nSlot)
virtual

◆ FindCommandSlot()

virtual int CHciLocal::FindCommandSlot ( USHORT  nCommand)
protectedvirtual

◆ GetQueuedCommand()

virtual PQueuedCommand CHciLocal::GetQueuedCommand ( int  nSlot)
virtual

◆ OnEvent()

virtual DWORD CHciLocal::OnEvent ( PFBT_HCI_EVENT_HEADER  pEvent,
DWORD  dwLength 
)
virtual

Reimplemented from CHci.

Reimplemented in CHciRoundTrip.

◆ QueueCommand()

virtual int CHciLocal::QueueCommand ( USHORT  nCommand,
BYTE pResultBuffer = NULL,
DWORD  dwBufferSize = 0 
)
virtual

◆ QueueCommandStatus()

virtual int CHciLocal::QueueCommandStatus ( USHORT  nCommand)
virtual

◆ SendCreateConnection()

virtual DWORD CHciLocal::SendCreateConnection ( BYTE  BD_ADDR[FBT_HCI_BDADDR_SIZE],
USHORT  nPacketType,
BYTE  nPageScanRepetitionMode,
BYTE  nPageScanMode,
USHORT  nClockOffset,
BYTE  nAllowRoleSwitch 
)
virtual

Reimplemented from CHci.

◆ SendDisconnect()

virtual DWORD CHciLocal::SendDisconnect ( USHORT  nConnectionHandle,
BYTE  nReason 
)
virtual

Reimplemented from CHci.

◆ SendInquiry()

virtual DWORD CHciLocal::SendInquiry ( ULONG  nLAP,
BYTE  nInquiryLength,
BYTE  nNumResponses 
)
virtual

Reimplemented from CHci.

◆ SendInquiryCancel()

virtual DWORD CHciLocal::SendInquiryCancel ( void  )
virtual

Reimplemented from CHci.

◆ SendReadLocalVersionInformation()

virtual DWORD CHciLocal::SendReadLocalVersionInformation ( FBT_HCI_READ_LOCAL_VERSION_INFORMATION_COMPLETE CommandComplete)
virtual

◆ SendRemoteNameRequest()

virtual DWORD CHciLocal::SendRemoteNameRequest ( BYTE  BD_ADDR[FBT_HCI_BDADDR_SIZE],
BYTE  nPageScanRepetitionMode,
BYTE  nPageScanMode,
USHORT  nClockOffset 
)
virtual

Reimplemented from CHci.

◆ SendReset()

virtual DWORD CHciLocal::SendReset ( void  )
virtual

Reimplemented from CHci.

◆ SendSetEventFilter()

virtual DWORD CHciLocal::SendSetEventFilter ( BYTE  nFilterType,
BYTE  nFilterConditionType,
BYTE  nCondition[FBT_HCI_MAX_CONDITION_SIZE],
BYTE  nConditionBytes 
)
virtual

Reimplemented from CHci.

◆ SendSwitchRole()

virtual DWORD CHciLocal::SendSwitchRole ( BYTE  BD_ADDR[FBT_HCI_BDADDR_SIZE],
BYTE  nRole 
)
virtual

Reimplemented from CHci.

◆ SendWriteClassOfDevice()

virtual DWORD CHciLocal::SendWriteClassOfDevice ( BYTE  ClassOfDevice[FBT_HCI_DEVICE_CLASS_SIZE])
virtual

Reimplemented from CHci.

◆ WaitForCommandComplete()

virtual DWORD CHciLocal::WaitForCommandComplete ( int  nSlot)
virtual

◆ WaitForCommandStatus()

virtual DWORD CHciLocal::WaitForCommandStatus ( int  nSlot,
BYTE nStatus 
)
virtual

Member Data Documentation

◆ m_QueueCriticalSection

CRITICAL_SECTION CHciLocal::m_QueueCriticalSection
protected

Definition at line 66 of file fbtHciLocal.h.

◆ m_QueuedCommands

QueuedCommand CHciLocal::m_QueuedCommands[MAX_QUEUED_COMMANDS]
protected

Definition at line 65 of file fbtHciLocal.h.


The documentation for this class was generated from the following file: