2.2.1.3.4 VDS_VOLUME_NOTIFICATION

The VDS_VOLUME_NOTIFICATION structure provides information about a volume change notification.

 typedef struct _VDS_VOLUME_NOTIFICATION {
   unsigned long ulEvent;
   VDS_OBJECT_ID volumeId;
   VDS_OBJECT_ID plexId;
   unsigned long ulPercentCompleted;
 } VDS_VOLUME_NOTIFICATION;

ulEvent: Determines the volume event for which an application will be notified; it MUST be one of the following values.

Value

Meaning

VDS_NF_VOLUME_ARRIVE

0x00000004

A new volume is visible to the operating system.

VDS_NF_VOLUME_DEPART

0x00000005

An existing volume is no longer visible to the operating system.

VDS_NF_VOLUME_MODIFY

0x00000006

The volume was modified.

VDS_NF_VOLUME_REBUILDING_PROGRESS

0x00000007

A fault tolerant volume is being regenerated or resynchronized.

volumeId: The VDS object ID of the volume object to which the notification refers.

plexId: The VDS object ID of a volume plex object to which the notification refers, if any. VDS applies this identifier during the rebuild operation, which can execute on multiple plexes at different rates.

ulPercentCompleted: The percentage of completion for the operation. Valid values range from 0-100.