ReactOS  0.4.14-dev-1338-g0d187f7
fbthw.h
Go to the documentation of this file.
1 #ifndef _FBT_HW_H_
2 #define _FBT_HW_H_
3 
4 #include <winioctl.h>
5 
6 // HW Driver Abstraction layer
7 class CBTHW
8 {
9 public:
10  // The driver is opened for OVERLAPPED I/O
11  CBTHW();
12  virtual ~CBTHW();
13 
14  // Set the driver instances symbolic name
16  DWORD GetDeviceName(LPTSTR szBuffer, DWORD dwBufferSize);
17 
18  // Open a handle to the driver instance
20  virtual DWORD Detach();
23 
24  // Send a command to the driver
25  DWORD SendCommand(DWORD dwCommand, LPVOID lpInBuffer=NULL, DWORD dwInBufferSize=0, LPVOID lpOutBuffer=NULL, DWORD dwOutBufferSize=0, OVERLAPPED *pOverlapped=NULL);
26  DWORD SendData(LPVOID lpBuffer, DWORD dwBufferSize, DWORD *dwBytesSent, OVERLAPPED *pOverlapped);
27  DWORD GetData(LPVOID lpBuffer, DWORD dwBufferSize, DWORD *dwBytesRead, OVERLAPPED *pOverlapped);
28 
29 protected:
32 
33 };
34 
35 
36 #endif // _FBT_HW_H_
const CHAR * LPCTSTR
Definition: xmlstorage.h:193
DWORD SendData(LPVOID lpBuffer, DWORD dwBufferSize, DWORD *dwBytesSent, OVERLAPPED *pOverlapped)
#define INVALID_HANDLE_VALUE
Definition: compat.h:399
DWORD GetData(LPVOID lpBuffer, DWORD dwBufferSize, DWORD *dwBytesRead, OVERLAPPED *pOverlapped)
CHAR * LPTSTR
Definition: xmlstorage.h:192
Definition: fbthw.h:7
HANDLE m_hDriver
Definition: fbthw.h:30
unsigned int BOOL
Definition: ntddk_ex.h:94
static TAGREF LPCWSTR LPDWORD LPVOID lpBuffer
Definition: db.cpp:173
smooth NULL
Definition: ftsmooth.c:416
TCHAR m_szDeviceName[1024]
Definition: fbthw.h:31
const char * LPCSTR
Definition: xmlstorage.h:183
DWORD GetDeviceName(LPTSTR szBuffer, DWORD dwBufferSize)
char TCHAR
Definition: xmlstorage.h:189
virtual ~CBTHW()
unsigned long DWORD
Definition: ntddk_ex.h:95
BOOL IsAttached()
Definition: fbthw.h:22
HANDLE GetDriverHandle()
virtual DWORD Attach(LPCSTR szDeviceName)
static const WCHAR szDeviceName[]
Definition: provider.c:56
virtual DWORD Detach()
DWORD SendCommand(DWORD dwCommand, LPVOID lpInBuffer=NULL, DWORD dwInBufferSize=0, LPVOID lpOutBuffer=NULL, DWORD dwOutBufferSize=0, OVERLAPPED *pOverlapped=NULL)
void SetDeviceName(LPCTSTR szDeviceName)