summaryrefslogtreecommitdiffstats
path: root/vendor/windows-sys-0.42.0/src/Windows/Win32/Graphics/DirectComposition/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/windows-sys-0.42.0/src/Windows/Win32/Graphics/DirectComposition/mod.rs')
-rw-r--r--vendor/windows-sys-0.42.0/src/Windows/Win32/Graphics/DirectComposition/mod.rs237
1 files changed, 237 insertions, 0 deletions
diff --git a/vendor/windows-sys-0.42.0/src/Windows/Win32/Graphics/DirectComposition/mod.rs b/vendor/windows-sys-0.42.0/src/Windows/Win32/Graphics/DirectComposition/mod.rs
new file mode 100644
index 000000000..61a601a12
--- /dev/null
+++ b/vendor/windows-sys-0.42.0/src/Windows/Win32/Graphics/DirectComposition/mod.rs
@@ -0,0 +1,237 @@
+#[cfg_attr(windows, link(name = "windows"))]
+extern "system" {
+ #[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn DCompositionAttachMouseDragToHwnd(visual: IDCompositionVisual, hwnd: super::super::Foundation::HWND, enable: super::super::Foundation::BOOL) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn DCompositionAttachMouseWheelToHwnd(visual: IDCompositionVisual, hwnd: super::super::Foundation::HWND, enable: super::super::Foundation::BOOL) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn DCompositionBoostCompositorClock(enable: super::super::Foundation::BOOL) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`, `\"Win32_Graphics_Dxgi\"`*"]
+ #[cfg(feature = "Win32_Graphics_Dxgi")]
+ pub fn DCompositionCreateDevice(dxgidevice: super::Dxgi::IDXGIDevice, iid: *const ::windows_sys::core::GUID, dcompositiondevice: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+ pub fn DCompositionCreateDevice2(renderingdevice: ::windows_sys::core::IUnknown, iid: *const ::windows_sys::core::GUID, dcompositiondevice: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+ pub fn DCompositionCreateDevice3(renderingdevice: ::windows_sys::core::IUnknown, iid: *const ::windows_sys::core::GUID, dcompositiondevice: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`, `\"Win32_Foundation\"`, `\"Win32_Security\"`*"]
+ #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))]
+ pub fn DCompositionCreateSurfaceHandle(desiredaccess: u32, securityattributes: *const super::super::Security::SECURITY_ATTRIBUTES, surfacehandle: *mut super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+ pub fn DCompositionGetFrameId(frameidtype: COMPOSITION_FRAME_ID_TYPE, frameid: *mut u64) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn DCompositionGetStatistics(frameid: u64, framestats: *mut COMPOSITION_FRAME_STATS, targetidcount: u32, targetids: *mut COMPOSITION_TARGET_ID, actualtargetidcount: *mut u32) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn DCompositionGetTargetStatistics(frameid: u64, targetid: *const COMPOSITION_TARGET_ID, targetstats: *mut COMPOSITION_TARGET_STATS) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn DCompositionWaitForCompositorClock(count: u32, handles: *const super::super::Foundation::HANDLE, timeoutinms: u32) -> u32;
+}
+pub type IDCompositionAffineTransform2DEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionAnimation = *mut ::core::ffi::c_void;
+pub type IDCompositionArithmeticCompositeEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionBlendEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionBrightnessEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionClip = *mut ::core::ffi::c_void;
+pub type IDCompositionColorMatrixEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionCompositeEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionDelegatedInkTrail = *mut ::core::ffi::c_void;
+pub type IDCompositionDesktopDevice = *mut ::core::ffi::c_void;
+pub type IDCompositionDevice = *mut ::core::ffi::c_void;
+pub type IDCompositionDevice2 = *mut ::core::ffi::c_void;
+pub type IDCompositionDevice3 = *mut ::core::ffi::c_void;
+pub type IDCompositionDeviceDebug = *mut ::core::ffi::c_void;
+pub type IDCompositionEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionEffectGroup = *mut ::core::ffi::c_void;
+pub type IDCompositionFilterEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionGaussianBlurEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionHueRotationEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionInkTrailDevice = *mut ::core::ffi::c_void;
+pub type IDCompositionLinearTransferEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionMatrixTransform = *mut ::core::ffi::c_void;
+pub type IDCompositionMatrixTransform3D = *mut ::core::ffi::c_void;
+pub type IDCompositionRectangleClip = *mut ::core::ffi::c_void;
+pub type IDCompositionRotateTransform = *mut ::core::ffi::c_void;
+pub type IDCompositionRotateTransform3D = *mut ::core::ffi::c_void;
+pub type IDCompositionSaturationEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionScaleTransform = *mut ::core::ffi::c_void;
+pub type IDCompositionScaleTransform3D = *mut ::core::ffi::c_void;
+pub type IDCompositionShadowEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionSkewTransform = *mut ::core::ffi::c_void;
+pub type IDCompositionSurface = *mut ::core::ffi::c_void;
+pub type IDCompositionSurfaceFactory = *mut ::core::ffi::c_void;
+pub type IDCompositionTableTransferEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionTarget = *mut ::core::ffi::c_void;
+pub type IDCompositionTransform = *mut ::core::ffi::c_void;
+pub type IDCompositionTransform3D = *mut ::core::ffi::c_void;
+pub type IDCompositionTranslateTransform = *mut ::core::ffi::c_void;
+pub type IDCompositionTranslateTransform3D = *mut ::core::ffi::c_void;
+pub type IDCompositionTurbulenceEffect = *mut ::core::ffi::c_void;
+pub type IDCompositionVirtualSurface = *mut ::core::ffi::c_void;
+pub type IDCompositionVisual = *mut ::core::ffi::c_void;
+pub type IDCompositionVisual2 = *mut ::core::ffi::c_void;
+pub type IDCompositionVisual3 = *mut ::core::ffi::c_void;
+pub type IDCompositionVisualDebug = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const COMPOSITIONOBJECT_READ: i32 = 1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const COMPOSITIONOBJECT_WRITE: i32 = 2i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const COMPOSITION_STATS_MAX_TARGETS: u32 = 256u32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_MAX_WAITFORCOMPOSITORCLOCK_OBJECTS: u32 = 32u32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub type COMPOSITION_FRAME_ID_TYPE = i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const COMPOSITION_FRAME_ID_CREATED: COMPOSITION_FRAME_ID_TYPE = 0i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const COMPOSITION_FRAME_ID_CONFIRMED: COMPOSITION_FRAME_ID_TYPE = 1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const COMPOSITION_FRAME_ID_COMPLETED: COMPOSITION_FRAME_ID_TYPE = 2i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub type DCOMPOSITION_BACKFACE_VISIBILITY = i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_BACKFACE_VISIBILITY_VISIBLE: DCOMPOSITION_BACKFACE_VISIBILITY = 0i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_BACKFACE_VISIBILITY_HIDDEN: DCOMPOSITION_BACKFACE_VISIBILITY = 1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_BACKFACE_VISIBILITY_INHERIT: DCOMPOSITION_BACKFACE_VISIBILITY = -1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub type DCOMPOSITION_BITMAP_INTERPOLATION_MODE = i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR: DCOMPOSITION_BITMAP_INTERPOLATION_MODE = 0i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_BITMAP_INTERPOLATION_MODE_LINEAR: DCOMPOSITION_BITMAP_INTERPOLATION_MODE = 1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_BITMAP_INTERPOLATION_MODE_INHERIT: DCOMPOSITION_BITMAP_INTERPOLATION_MODE = -1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub type DCOMPOSITION_BORDER_MODE = i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_BORDER_MODE_SOFT: DCOMPOSITION_BORDER_MODE = 0i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_BORDER_MODE_HARD: DCOMPOSITION_BORDER_MODE = 1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_BORDER_MODE_INHERIT: DCOMPOSITION_BORDER_MODE = -1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub type DCOMPOSITION_COMPOSITE_MODE = i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_COMPOSITE_MODE_SOURCE_OVER: DCOMPOSITION_COMPOSITE_MODE = 0i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_COMPOSITE_MODE_DESTINATION_INVERT: DCOMPOSITION_COMPOSITE_MODE = 1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_COMPOSITE_MODE_MIN_BLEND: DCOMPOSITION_COMPOSITE_MODE = 2i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_COMPOSITE_MODE_INHERIT: DCOMPOSITION_COMPOSITE_MODE = -1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub type DCOMPOSITION_DEPTH_MODE = i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_DEPTH_MODE_TREE: DCOMPOSITION_DEPTH_MODE = 0i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_DEPTH_MODE_SPATIAL: DCOMPOSITION_DEPTH_MODE = 1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_DEPTH_MODE_SORTED: DCOMPOSITION_DEPTH_MODE = 3i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_DEPTH_MODE_INHERIT: DCOMPOSITION_DEPTH_MODE = -1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub type DCOMPOSITION_OPACITY_MODE = i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_OPACITY_MODE_LAYER: DCOMPOSITION_OPACITY_MODE = 0i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_OPACITY_MODE_MULTIPLY: DCOMPOSITION_OPACITY_MODE = 1i32;
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub const DCOMPOSITION_OPACITY_MODE_INHERIT: DCOMPOSITION_OPACITY_MODE = -1i32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub struct COMPOSITION_FRAME_STATS {
+ pub startTime: u64,
+ pub targetTime: u64,
+ pub framePeriod: u64,
+}
+impl ::core::marker::Copy for COMPOSITION_FRAME_STATS {}
+impl ::core::clone::Clone for COMPOSITION_FRAME_STATS {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub struct COMPOSITION_STATS {
+ pub presentCount: u32,
+ pub refreshCount: u32,
+ pub virtualRefreshCount: u32,
+ pub time: u64,
+}
+impl ::core::marker::Copy for COMPOSITION_STATS {}
+impl ::core::clone::Clone for COMPOSITION_STATS {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub struct COMPOSITION_TARGET_ID {
+ pub displayAdapterLuid: super::super::Foundation::LUID,
+ pub renderAdapterLuid: super::super::Foundation::LUID,
+ pub vidPnSourceId: u32,
+ pub vidPnTargetId: u32,
+ pub uniqueId: u32,
+}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::marker::Copy for COMPOSITION_TARGET_ID {}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::clone::Clone for COMPOSITION_TARGET_ID {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub struct COMPOSITION_TARGET_STATS {
+ pub outstandingPresents: u32,
+ pub presentTime: u64,
+ pub vblankDuration: u64,
+ pub presentedStats: COMPOSITION_STATS,
+ pub completedStats: COMPOSITION_STATS,
+}
+impl ::core::marker::Copy for COMPOSITION_TARGET_STATS {}
+impl ::core::clone::Clone for COMPOSITION_TARGET_STATS {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`, `\"Win32_Graphics_Dxgi_Common\"`*"]
+#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
+pub struct DCOMPOSITION_FRAME_STATISTICS {
+ pub lastFrameTime: i64,
+ pub currentCompositionRate: super::Dxgi::Common::DXGI_RATIONAL,
+ pub currentTime: i64,
+ pub timeFrequency: i64,
+ pub nextEstimatedFrameTime: i64,
+}
+#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
+impl ::core::marker::Copy for DCOMPOSITION_FRAME_STATISTICS {}
+#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
+impl ::core::clone::Clone for DCOMPOSITION_FRAME_STATISTICS {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_Graphics_DirectComposition\"`*"]
+pub struct DCompositionInkTrailPoint {
+ pub x: f32,
+ pub y: f32,
+ pub radius: f32,
+}
+impl ::core::marker::Copy for DCompositionInkTrailPoint {}
+impl ::core::clone::Clone for DCompositionInkTrailPoint {
+ fn clone(&self) -> Self {
+ *self
+ }
+}