source: trunk/src/kernel32/hmparport.h

Last change on this file was 7564, checked in by sandervl, 24 years ago

overlappedio, com & lpt updates

File size: 2.5 KB
RevLine 
[7564]1/* $Id: hmparport.h,v 1.7 2001-12-07 11:28:10 sandervl Exp $ */
[7298]2
3/*
4 * Project Odin Software License can be found in LICENSE.TXT
5 *
6 * Win32 Parallel Port device access class
7 *
8 * 2001 Patrick Haller <patrick.haller@innotek.de>
9 *
10 */
11
12#ifndef _HM_PARPORT_H_
13#define _HM_PARPORT_H_
14
15class HMDeviceParPortClass : public HMDeviceHandler
16{
17 public:
18
19 HMDeviceParPortClass(LPCSTR lpDeviceName);
20
21 //checks if device name belongs to this class
22 virtual BOOL FindDevice(LPCSTR lpClassDevName, LPCSTR lpDeviceName, int namelength);
23
24 /* this is the handler method for calls to CreateFile() */
[7549]25 virtual DWORD CreateFile (LPCSTR lpFileName,
[7298]26 PHMHANDLEDATA pHMHandleData,
27 PVOID lpSecurityAttributes,
28 PHMHANDLEDATA pHMHandleDataTemplate);
29
[7564]30 /* this is a handler method for calls to GetFileType() */
31 virtual DWORD GetFileType (PHMHANDLEDATA pHMHandleData);
32
[7298]33 /* this is the handler method for calls to CloseHandle() */
34 virtual BOOL CloseHandle(PHMHANDLEDATA pHMHandleData);
35
[7301]36 /* this is a handler method for calls to DeviceIoControl() */
37 virtual BOOL DeviceIoControl (PHMHANDLEDATA pHMHandleData, DWORD dwIoControlCode,
38 LPVOID lpInBuffer, DWORD nInBufferSize,
39 LPVOID lpOutBuffer, DWORD nOutBufferSize,
40 LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped);
41
42
[7549]43 /* this is a handler method for calls to ReadFile/Ex */
[7298]44 virtual BOOL ReadFile (PHMHANDLEDATA pHMHandleData,
45 LPCVOID lpBuffer,
46 DWORD nNumberOfBytesToRead,
47 LPDWORD lpNumberOfBytesRead,
[7549]48 LPOVERLAPPED lpOverlapped,
49 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
[7298]50
[7549]51 /* this is a handler method for calls to WriteFile/Ex */
[7298]52 virtual BOOL WriteFile (PHMHANDLEDATA pHMHandleData,
53 LPCVOID lpBuffer,
54 DWORD nNumberOfBytesToWrite,
55 LPDWORD lpNumberOfBytesWritten,
[7549]56 LPOVERLAPPED lpOverlapped,
57 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
[7298]58
59 private:
[7546]60 // The number of physically present parallel ports in the system,
61 // LAN-redirectors don't count. See note in ::CreateFile()
62 BYTE bNumberOfParallelPorts;
[7298]63};
64
65
66#endif // _HM_PARPORT_H_
Note: See TracBrowser for help on using the repository browser.