pub trait IVssFileShareSnapshotProvider_Impl: Sized {
    // Required methods
    fn SetContext(&self, lcontext: i32) -> Result<()>;
    fn GetSnapshotProperties(
        &self,
        snapshotid: &GUID,
        pprop: *mut VSS_SNAPSHOT_PROP
    ) -> Result<()>;
    fn Query(
        &self,
        queriedobjectid: &GUID,
        equeriedobjecttype: VSS_OBJECT_TYPE,
        ereturnedobjectstype: VSS_OBJECT_TYPE
    ) -> Result<IVssEnumObject>;
    fn DeleteSnapshots(
        &self,
        sourceobjectid: &GUID,
        esourceobjecttype: VSS_OBJECT_TYPE,
        bforcedelete: BOOL,
        pldeletedsnapshots: *mut i32,
        pnondeletedsnapshotid: *mut GUID
    ) -> Result<()>;
    fn BeginPrepareSnapshot(
        &self,
        snapshotsetid: &GUID,
        snapshotid: &GUID,
        pwszsharepath: *const u16,
        lnewcontext: i32,
        providerid: &GUID
    ) -> Result<()>;
    fn IsPathSupported(&self, pwszsharepath: *const u16) -> Result<BOOL>;
    fn IsPathSnapshotted(
        &self,
        pwszsharepath: *const u16,
        pbsnapshotspresent: *mut BOOL,
        plsnapshotcompatibility: *mut i32
    ) -> Result<()>;
    fn SetSnapshotProperty(
        &self,
        snapshotid: &GUID,
        esnapshotpropertyid: VSS_SNAPSHOT_PROPERTY_ID,
        vproperty: &VARIANT
    ) -> Result<()>;
}

Required Methods§

fn SetContext(&self, lcontext: i32) -> Result<()>

fn GetSnapshotProperties( &self, snapshotid: &GUID, pprop: *mut VSS_SNAPSHOT_PROP ) -> Result<()>

fn Query( &self, queriedobjectid: &GUID, equeriedobjecttype: VSS_OBJECT_TYPE, ereturnedobjectstype: VSS_OBJECT_TYPE ) -> Result<IVssEnumObject>

fn DeleteSnapshots( &self, sourceobjectid: &GUID, esourceobjecttype: VSS_OBJECT_TYPE, bforcedelete: BOOL, pldeletedsnapshots: *mut i32, pnondeletedsnapshotid: *mut GUID ) -> Result<()>

fn BeginPrepareSnapshot( &self, snapshotsetid: &GUID, snapshotid: &GUID, pwszsharepath: *const u16, lnewcontext: i32, providerid: &GUID ) -> Result<()>

fn IsPathSupported(&self, pwszsharepath: *const u16) -> Result<BOOL>

fn IsPathSnapshotted( &self, pwszsharepath: *const u16, pbsnapshotspresent: *mut BOOL, plsnapshotcompatibility: *mut i32 ) -> Result<()>

fn SetSnapshotProperty( &self, snapshotid: &GUID, esnapshotpropertyid: VSS_SNAPSHOT_PROPERTY_ID, vproperty: &VARIANT ) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§