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. 6 // TODO:It is a minimal implementation. 7 use ctypes::c_void; 8 use shared::basetsd::UINT32; 9 use shared::guiddef::{GUID, REFGUID, REFIID}; 10 use shared::ntdef::HRESULT; 11 use um::unknwnbase::{IUnknown, IUnknownVtbl}; 12 RIDL!{#[uuid(0x1b8efec4, 0x3019, 0x4c27, 0x96, 0x4e, 0x36, 0x72, 0x02, 0x15, 0x69, 0x06)] 13 interface IPrintDocumentPackageTarget(IPrintDocumentPackageTargetVtbl): IUnknown(IUnknownVtbl) { 14 fn GetPackageTargetTypes( 15 targetCount: *mut UINT32, 16 targetTypes: *mut *mut GUID, 17 ) -> HRESULT, 18 fn GetPackageTarget( 19 guidTargetType: REFGUID, 20 riid: REFIID, 21 ppvTarget: *mut *mut c_void, 22 ) -> HRESULT, 23 fn Cancel() -> HRESULT, 24 }} 25