winapi_ui_automation/shared/
bthsdpdef.rs

1// Licensed under the Apache License, Version 2.0
2// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4// All files in the project carrying such notice may not be copied, modified, or distributed
5// except according to those terms.
6use shared::guiddef::GUID;
7use shared::minwindef::{ULONG, USHORT};
8use shared::ntdef::{LONGLONG, ULONGLONG};
9STRUCT!{struct SDP_LARGE_INTEGER_16 {
10    LowPart: ULONGLONG,
11    HighPart: LONGLONG,
12}}
13STRUCT!{struct SDP_ULARGE_INTEGER_16 {
14    LowPart: ULONGLONG,
15    HighPart: ULONGLONG,
16}}
17pub type PSDP_ULARGE_INTEGER_16 = *mut SDP_ULARGE_INTEGER_16;
18pub type LPSDP_ULARGE_INTEGER_16 = *mut SDP_ULARGE_INTEGER_16;
19pub type PSDP_LARGE_INTEGER_16 = *mut SDP_LARGE_INTEGER_16;
20pub type LPSDP_LARGE_INTEGER_16 = *mut SDP_LARGE_INTEGER_16;
21ENUM!{enum NodeContainerType {
22    NodeContainerTypeSequence,
23    NodeContainerTypeAlternative,
24}}
25pub type SDP_ERROR = USHORT;
26pub type PSDP_ERROR = *mut USHORT;
27ENUM!{enum SDP_TYPE {
28    SDP_TYPE_NIL = 0x00,
29    SDP_TYPE_UINT = 0x01,
30    SDP_TYPE_INT = 0x02,
31    SDP_TYPE_UUID = 0x03,
32    SDP_TYPE_STRING = 0x04,
33    SDP_TYPE_BOOLEAN = 0x05,
34    SDP_TYPE_SEQUENCE = 0x06,
35    SDP_TYPE_ALTERNATIVE = 0x07,
36    SDP_TYPE_URL = 0x08,
37    SDP_TYPE_CONTAINER = 0x20,
38}}
39ENUM!{enum SDP_SPECIFICTYPE {
40    SDP_ST_NONE = 0x0000,
41    SDP_ST_UINT8 = 0x0010,
42    SDP_ST_UINT16 = 0x0110,
43    SDP_ST_UINT32 = 0x0210,
44    SDP_ST_UINT64 = 0x0310,
45    SDP_ST_UINT128 = 0x0410,
46    SDP_ST_INT8 = 0x0020,
47    SDP_ST_INT16 = 0x0120,
48    SDP_ST_INT32 = 0x0220,
49    SDP_ST_INT64 = 0x0320,
50    SDP_ST_INT128 = 0x0420,
51    SDP_ST_UUID16 = 0x0130,
52    SDP_ST_UUID32 = 0x0220,
53    SDP_ST_UUID128 = 0x0430,
54}}
55STRUCT!{struct SdpAttributeRange {
56    minAttribute: USHORT,
57    maxAttribute: USHORT,
58}}
59UNION!{union SdpQueryUuidUnion {
60    [u32; 4],
61    uuid128 uuid128_mut: GUID,
62    uuid32 uuid32_mut: ULONG,
63    uuid16 uuid16_mut: USHORT,
64}}
65STRUCT!{struct SdpQueryUuid {
66    u: SdpQueryUuidUnion,
67    uuidType: USHORT,
68}}