| Line | |
|---|
| 1 | #if !defined (OS2_MONITOR_API)
|
|---|
| 2 | #define OS2_MONITOR_API
|
|---|
| 3 |
|
|---|
| 4 | #pragma pack(1)
|
|---|
| 5 |
|
|---|
| 6 | struct MonRecord {
|
|---|
| 7 | USHORT MonFlagWord;
|
|---|
| 8 | BYTE XlatedChar;
|
|---|
| 9 | BYTE XlatedScan;
|
|---|
| 10 | BYTE DBCS_Status;
|
|---|
| 11 | BYTE DBCS_Shift;
|
|---|
| 12 | USHORT Shift_State;
|
|---|
| 13 | ULONG Milliseconds;
|
|---|
| 14 | USHORT KbdDDFlagWord;
|
|---|
| 15 | USHORT extra;
|
|---|
| 16 | };
|
|---|
| 17 |
|
|---|
| 18 | #define MONSIZE (118)
|
|---|
| 19 | typedef struct _MONIN { /* mnin */
|
|---|
| 20 | USHORT cb;
|
|---|
| 21 | BYTE abReserved[18];
|
|---|
| 22 | BYTE abBuffer[MONSIZE];
|
|---|
| 23 | } MONIN;
|
|---|
| 24 |
|
|---|
| 25 | typedef struct _MONOUT { /* mnout */
|
|---|
| 26 | USHORT cb;
|
|---|
| 27 | BYTE abReserved[18];
|
|---|
| 28 | BYTE abBuffer[MONSIZE];
|
|---|
| 29 | } MONOUT;
|
|---|
| 30 | #pragma pack(4)
|
|---|
| 31 |
|
|---|
| 32 |
|
|---|
| 33 | typedef SHANDLE HMONITOR; /* hmon */
|
|---|
| 34 | typedef HMONITOR FAR *PHMONITOR;
|
|---|
| 35 |
|
|---|
| 36 | #define DosMonOpen DOSMONOPEN
|
|---|
| 37 | #define DosMonClose DOSMONCLOSE
|
|---|
| 38 | #define DosMonRead DOSMONREAD
|
|---|
| 39 | #define DosMonWrite DOSMONWRITE
|
|---|
| 40 | #define DosMonReg DOSMONREG
|
|---|
| 41 |
|
|---|
| 42 | APIRET16 APIENTRY16 DosMonOpen(PSZ pszDevName, PHMONITOR phmon);
|
|---|
| 43 | APIRET16 APIENTRY16 DosMonClose(HMONITOR hmon);
|
|---|
| 44 | APIRET16 APIENTRY16 DosMonReg(HMONITOR hmon, PBYTE pbInBuf, PBYTE pbOutBuf,
|
|---|
| 45 | USHORT fPosition, USHORT usIndex);
|
|---|
| 46 | APIRET16 APIENTRY16 DosMonRead(PBYTE pbInBuf, USHORT fWait, PBYTE pbDataBuf,
|
|---|
| 47 | PUSHORT pcbData);
|
|---|
| 48 | APIRET16 APIENTRY16 DosMonWrite(PBYTE pbOutBuf, PBYTE pbDataBuf, USHORT cbData);
|
|---|
| 49 |
|
|---|
| 50 |
|
|---|
| 51 | #endif
|
|---|
Note:
See
TracBrowser
for help on using the repository browser.