winapi_ui_automation/um/
physicalmonitorenumerationapi.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::d3d9::IDirect3DDevice9;
7use shared::minwindef::{BOOL, DWORD, LPDWORD};
8use shared::windef::HMONITOR;
9use um::winnt::{HANDLE, HRESULT, WCHAR};
10pub type _BOOL = BOOL;
11pub const PHYSICAL_MONITOR_DESCRIPTION_SIZE: usize = 128;
12STRUCT!{#[repr(packed)] struct PHYSICAL_MONITOR {
13    hPhysicalMonitor: HANDLE,
14    szPhysicalMonitorDescription: [WCHAR; PHYSICAL_MONITOR_DESCRIPTION_SIZE],
15}}
16pub type LPPHYSICAL_MONITOR = *mut PHYSICAL_MONITOR;
17extern "system" {
18    pub fn GetNumberOfPhysicalMonitorsFromHMONITOR(
19        hMonitor: HMONITOR,
20        pdwNumberOfPhysicalMonitor: LPDWORD,
21    ) -> _BOOL;
22    pub fn GetNumberOfPhysicalMonitorsFromIDirect3DDevice9(
23        pDirect3DDevice9: *mut IDirect3DDevice9,
24        pdwNumberOfPhysicalMonitor: LPDWORD,
25    ) -> HRESULT;
26    pub fn GetPhysicalMonitorsFromHMONITOR(
27        hMonitor: HMONITOR,
28        dwPhysicalMonitorArraySize: DWORD,
29        pPhysicalMonitorArray: LPPHYSICAL_MONITOR,
30    ) -> _BOOL;
31    pub fn GetPhysicalMonitorsFromIDirect3DDevice9(
32        pDirect3DDevice9: IDirect3DDevice9,
33        dwPhysicalMonitorArraySize: DWORD,
34        pPhysicalMonitorArray: LPPHYSICAL_MONITOR,
35    ) -> HRESULT;
36    pub fn DestroyPhysicalMonitor(
37        hMonitor: HANDLE,
38    ) -> _BOOL;
39    pub fn DestroyPhysicalMonitors(
40        dwPhysicalMonitorArraySize: DWORD,
41        pPhysicalMonitorArray: LPPHYSICAL_MONITOR,
42    ) -> _BOOL;
43}