1use dpcdecl::*;
2use std::os::raw::{c_char, c_int, c_void};
3
4pub const tmsWaitInfinite: u32 = 0xFFFFFFFF;
5
6extern "C" {
7 pub fn DmgrGetVersion(szVersion: *mut c_char) -> BOOL;
8 pub fn DmgrGetLastError() -> ERC;
10 pub fn DmgrSzFromErc(erc: c_int, szErc: *mut c_char, szErcMessage: *mut c_char) -> BOOL;
11
12 pub fn DmgrOpen(phif: *mut HIF, szSel: *mut c_char) -> BOOL;
14 pub fn DmgrOpenEx(phif: *mut HIF, szSel: *mut c_char, dtpTable: DTP, dtpDisc: DTP) -> BOOL;
15 pub fn DmgrClose(hif: HIF) -> BOOL;
16
17 pub fn DmgrEnumDevices(pcdvc: *mut c_int) -> BOOL;
19 pub fn DmgrEnumDevicesEx(
20 pcdvc: *mut c_int,
21 dtpTable: DTP,
22 dtpDisc: DTP,
23 dinfosel: DINFO,
24 pInfoSel: *mut c_void,
25 ) -> BOOL;
26 pub fn DmgrStartEnum(
27 dtpTable: DTP,
28 dtpDisc: DTP,
29 dinfoSel: DINFO,
30 pInfoSel: *mut c_void,
31 ) -> BOOL;
32 pub fn DmgrIsEnumFinished() -> BOOL;
33 pub fn DmgrStopEnum() -> BOOL;
34 pub fn DmgrGetEnumCount(pcdvc: *mut c_int) -> BOOL;
35 pub fn DmgrGetDvc(idvc: c_int, pdvc: *mut DVC) -> BOOL;
36 pub fn DmgrFreeDvcEnum() -> BOOL;
37
38 pub fn DmgrGetTransResult(
40 hif: HIF,
41 pdwDataOut: *mut u32,
42 pdwDataIn: *mut u32,
43 tmsWait: u32,
44 ) -> BOOL;
45 pub fn DmgrCancelTrans(hif: HIF) -> BOOL;
46 pub fn DmgrSetTransTimeout(hif: HIF, tmsTimeout: u32) -> BOOL;
47 pub fn DmgrGetTransTimeout(hif: HIF, ptmsTimeout: *mut u32) -> BOOL;
48
49 pub fn DmgrDvcTblAdd(pdvc: *mut DVC) -> BOOL;
50 pub fn DmgrDvcTblRem(szAlias: *mut c_char) -> BOOL;
51 pub fn DmgrDvcTblSave() -> BOOL;
52
53 pub fn DmgrGetDtpCount() -> c_int;
55 pub fn DmgrGetDtpFromIndex(idtp: c_int, pdtp: *mut DTP) -> BOOL;
56 pub fn DmgrGetDtpString(dtp: DTP, szDtpString: *mut c_char) -> BOOL;
57
58 pub fn DmgrSetInfo(pdvc: *mut DVC, dinfo: DINFO, pvInfoSet: *mut c_void) -> BOOL;
60 pub fn DmgrGetInfo(pdvc: *mut DVC, dinfo: DINFO, pvInfoGet: *mut c_void) -> BOOL;
61
62 pub fn DmgrGetDvcFromHif(hif: HIF, pdvc: *mut DVC) -> BOOL;
63}