2.2.3.1 VSS_OBJECT_UNION Union

The VSS_OBJECT_UNION defines the union of object types that can be defined by the VSS_OBJECT_PROP structure (section 2.2.3.2).

 [switch_type(VSS_OBJECT_TYPE)] 
 typedef union  {
   [case(VSS_OBJECT_SNAPSHOT)] 
     VSS_SNAPSHOT_PROP Snap;
   [case(VSS_OBJECT_PROVIDER)] 
     VSS_PROVIDER_PROP Prov;
   [default];
 } VSS_OBJECT_UNION;

Snap: The structure specifies a shadow copy object as a VSS_SNAPSHOT_PROP structure (section 2.2.3.3).

Prov: The structure specifies a VSS provider object. The Shadow Copy Management Protocol is not used to manage VSS provider objects; therefore, this member MUST NOT be referenced and MUST be ignored on receipt.