Home | History | Annotate | Download | only in ddk
      1 #ifndef _MSPORTS_
      2 #define _MSPORTS_
      3 
      4 #ifdef __cplusplus
      5 extern "C" {
      6 #endif
      7 
      8 DECLARE_HANDLE(HCOMDB);
      9 typedef HCOMDB *PHCOMDB;
     10 #define HCOMDB_INVALID_HANDLE_VALUE ((HCOMDB)INVALID_HANDLE_VALUE)
     11 
     12 /* Limits for ComDBResizeDatabase NewSize */
     13 #define COMDB_MIN_PORTS_ARBITRATED 256
     14 #define COMDB_MAX_PORTS_ARBITRATED 4096
     15 
     16 /* ReportType flags for ComDBGetCurrentPortUsage */
     17 #define CDB_REPORT_BITS  0x0
     18 #define CDB_REPORT_BYTES 0x1
     19 
     20 LONG
     21 WINAPI
     22 ComDBClaimNextFreePort(IN HCOMDB hComDB,
     23                        OUT LPDWORD ComNumber);
     24 
     25 LONG
     26 WINAPI
     27 ComDBClaimPort(IN HCOMDB hComDB,
     28                IN DWORD ComNumber,
     29                IN BOOL ForceClaim,
     30                OUT PBOOL Forced);
     31 
     32 LONG
     33 WINAPI
     34 ComDBClose(IN HCOMDB hComDB);
     35 
     36 LONG
     37 WINAPI
     38 ComDBGetCurrentPortUsage(IN HCOMDB hComDB,
     39                          OUT PBYTE Buffer,
     40                          IN DWORD BufferSize,
     41                          IN DWORD ReportType,
     42                          OUT LPDWORD MaxPortsReported);
     43 
     44 LONG
     45 WINAPI
     46 ComDBOpen(OUT HCOMDB *phComDB);
     47 
     48 LONG
     49 WINAPI
     50 ComDBReleasePort(IN HCOMDB hComDB,
     51                  IN DWORD ComNumber);
     52 
     53 LONG
     54 WINAPI
     55 ComDBResizeDatabase(IN HCOMDB hComDB,
     56                     IN DWORD NewSize);
     57 
     58 #ifdef __cplusplus
     59 }
     60 #endif
     61 
     62 #endif /* _MSPORTS_ */
     63