windows::Win32::Storage::VirtualDiskService

Trait IVdsVdProvider_Impl

pub trait IVdsVdProvider_Impl: IUnknownImpl {
    // Required methods
    fn QueryVDisks(&self) -> Result<IEnumVdsObject>;
    fn CreateVDisk(
        &self,
        virtualdevicetype: *const VIRTUAL_STORAGE_TYPE,
        ppath: &PCWSTR,
        pstringsecuritydescriptor: &PCWSTR,
        flags: CREATE_VIRTUAL_DISK_FLAG,
        providerspecificflags: u32,
        reserved: u32,
        pcreatediskparameters: *const VDS_CREATE_VDISK_PARAMETERS,
        ppasync: OutRef<'_, IVdsAsync>,
    ) -> Result<()>;
    fn AddVDisk(
        &self,
        virtualdevicetype: *const VIRTUAL_STORAGE_TYPE,
        ppath: &PCWSTR,
        ppvdisk: OutRef<'_, IVdsVDisk>,
    ) -> Result<()>;
    fn GetDiskFromVDisk(&self, pvdisk: Ref<'_, IVdsVDisk>) -> Result<IVdsDisk>;
    fn GetVDiskFromDisk(&self, pdisk: Ref<'_, IVdsDisk>) -> Result<IVdsVDisk>;
}

Required Methods§

fn QueryVDisks(&self) -> Result<IEnumVdsObject>

fn CreateVDisk( &self, virtualdevicetype: *const VIRTUAL_STORAGE_TYPE, ppath: &PCWSTR, pstringsecuritydescriptor: &PCWSTR, flags: CREATE_VIRTUAL_DISK_FLAG, providerspecificflags: u32, reserved: u32, pcreatediskparameters: *const VDS_CREATE_VDISK_PARAMETERS, ppasync: OutRef<'_, IVdsAsync>, ) -> Result<()>

fn AddVDisk( &self, virtualdevicetype: *const VIRTUAL_STORAGE_TYPE, ppath: &PCWSTR, ppvdisk: OutRef<'_, IVdsVDisk>, ) -> Result<()>

fn GetDiskFromVDisk(&self, pvdisk: Ref<'_, IVdsVDisk>) -> Result<IVdsDisk>

fn GetVDiskFromDisk(&self, pdisk: Ref<'_, IVdsDisk>) -> Result<IVdsVDisk>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§