2.2.1.3.10 VDS_ASYNC_OUTPUT

The VDS_ASYNC_OUTPUT structure provides information from a completed asynchronous operation.

 typedef struct _VDS_ASYNC_OUTPUT {
   VDS_ASYNC_OUTPUT_TYPE type;
   [switch_is(type)] union {
     [case(VDS_ASYNCOUT_CREATEPARTITION)] 
       struct _cp {
       ULONGLONG ullOffset;
       VDS_OBJECT_ID volumeId;
     } cp;
     [case(VDS_ASYNCOUT_CREATEVOLUME)] 
       struct _cv {
       IUnknown* pVolumeUnk;
     } cv;
     [case(VDS_ASYNCOUT_BREAKVOLUMEPLEX)] 
       struct _bvp {
       IUnknown* pVolumeUnk;
     } bvp;
     [case(VDS_ASYNCOUT_SHRINKVOLUME)] 
       struct _sv {
       ULONGLONG ullReclaimedBytes;
     } sv;
     [case(VDS_ASYNCOUT_CREATE_VDISK)] 
       struct _cvd {
       IUnknown* pVDiskUnk;
     } cvd;
     [default]       ;
   };
 } VDS_ASYNC_OUTPUT;

type: A value from the VDS_ASYNC_OUTPUT_TYPE enumeration that indicates the type of operation information.

cp: The cp structure provides information about a newly created partition.

ullOffset: The byte offset of the partition from the beginning of the disk.

volumeId: The VDS object ID of the associated volume object, if the partition is a volume.

cv: The cv structure provides information about a newly created volume.

pVolumeUnk: A pointer to the IUnknown interface of the newly created volume.

bvp: The bvp structure provides information about a volume after a plex is broken.

pVolumeUnk: A pointer to the IUnknown interface of the volume that was broken off.

sv: The sv structure provides information about a volume shrink operation.

ullReclaimedBytes: The number of bytes that the volume shrink operation reclaimed.

cvd: The cvd structure provides information about a newly created virtual disk.

pVDiskUnk: A pointer to the IUnknown interface of the newly created virtual disk.