1#![allow(non_snake_case)]
2
3use crate::decl::*;
4use crate::dxgi::ffi;
5use crate::kernel::privs::*;
6use crate::ole::privs::*;
7use crate::prelude::*;
8
9#[must_use]
12pub fn CreateDXGIFactory() -> HrResult<IDXGIFactory> {
13 let mut queried = unsafe { IDXGIFactory::null() };
14 ok_to_hrresult(unsafe { ffi::CreateDXGIFactory(pcvoid(&IDXGIFactory::IID), queried.as_mut()) })
15 .map(|_| queried)
16}
17
18#[must_use]
21pub fn CreateDXGIFactory1() -> HrResult<IDXGIFactory1> {
22 let mut queried = unsafe { IDXGIFactory1::null() };
23 ok_to_hrresult(unsafe {
24 ffi::CreateDXGIFactory1(pcvoid(&IDXGIFactory1::IID), queried.as_mut())
25 })
26 .map(|_| queried)
27}