blob: fe5eb7e7fd7e1883ca09e95f848218ded941de70 [file] [log] [blame]
#![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)]
#[link(name = "windows")]
extern "system" {}
#[repr(transparent)]
pub struct Direct3DBindings(pub u32);
impl Direct3DBindings {
pub const VertexBuffer: Self = Self(1u32);
pub const IndexBuffer: Self = Self(2u32);
pub const ConstantBuffer: Self = Self(4u32);
pub const ShaderResource: Self = Self(8u32);
pub const StreamOutput: Self = Self(16u32);
pub const RenderTarget: Self = Self(32u32);
pub const DepthStencil: Self = Self(64u32);
pub const UnorderedAccess: Self = Self(128u32);
pub const Decoder: Self = Self(512u32);
pub const VideoEncoder: Self = Self(1024u32);
}
impl ::core::marker::Copy for Direct3DBindings {}
impl ::core::clone::Clone for Direct3DBindings {
fn clone(&self) -> Self {
*self
}
}
#[repr(C)]
pub struct Direct3DMultisampleDescription {
pub Count: i32,
pub Quality: i32,
}
impl ::core::marker::Copy for Direct3DMultisampleDescription {}
impl ::core::clone::Clone for Direct3DMultisampleDescription {
fn clone(&self) -> Self {
*self
}
}
#[repr(C)]
pub struct Direct3DSurfaceDescription {
pub Width: i32,
pub Height: i32,
pub Format: super::DirectXPixelFormat,
pub MultisampleDescription: Direct3DMultisampleDescription,
}
impl ::core::marker::Copy for Direct3DSurfaceDescription {}
impl ::core::clone::Clone for Direct3DSurfaceDescription {
fn clone(&self) -> Self {
*self
}
}
#[repr(transparent)]
pub struct Direct3DUsage(pub i32);
impl Direct3DUsage {
pub const Default: Self = Self(0i32);
pub const Immutable: Self = Self(1i32);
pub const Dynamic: Self = Self(2i32);
pub const Staging: Self = Self(3i32);
}
impl ::core::marker::Copy for Direct3DUsage {}
impl ::core::clone::Clone for Direct3DUsage {
fn clone(&self) -> Self {
*self
}
}
pub type IDirect3DDevice = *mut ::core::ffi::c_void;
pub type IDirect3DSurface = *mut ::core::ffi::c_void;