// Copyright (c) 2009 DMTF.  All rights reserved.
   [Version ( "2.22.0" ), 
    UMLPackagePath ( "CIM::Core::Virtualization" ), 
    Description ( 
       "The CIM_VirtualSystemSnapshotServiceCapabilities class defines "
       "the properties that describe the capabilities of a virtual "
       "system snapshot service, like for example which snapshot "
       "operations are implemented." )]
class CIM_VirtualSystemSnapshotServiceCapabilities : CIM_Capabilities {

      [Description ( 
          "Enumeration of method identifiers each identifying a "
          "method of class CIM_VirtualSystemSnapshotService that is "
          "supported synchronously by the implementation." ), 
       ValueMap { "2", "3", "4", ".." }, 
       Values { "CreateSnapshotSupported", 
          "DestroySnapshotSupported", "ApplySnapshotSupported", 
          "DMTF Reserved" }]
   uint16 SynchronousMethodsSupported[];

      [Description ( 
          "Enumeration of method identifiers each identifying a "
          "method of class CIM_VirtualSystemSnapshotService that is "
          "supported synchronously and asynchronously by the "
          "implementation." ), 
       ValueMap { "2", "3", "4", ".." }, 
       Values { "CreateSnapshotSupported", 
          "DestroySnapshotSupported", "ApplySnapshotSupported", 
          "DMTF Reserved" }]
   uint16 AynchronousMethodsSupported[];

      [Description ( 
          "Supported snapshot types:\n"
          "Full Snapshot: Complete snapshot of the virtual system.\n"
          "Disk Snapshot: Snapshot of virtual system disks." ), 
       ValueMap { "2", "3", "..", "32768..65535" }, 
       Values { "Full Snapshot", "Disk Snapshot", "DMTF Reserved", 
          "Vendor Specific" }, 
       ModelCorrespondence { 
          "CIM_VirtualSystemSnapshotService.CreateSnapshot(SnapshotType)", 
          "CIM_VirtualSystemSnapshotCapabilities.SnapshotTypesEnabled" }]
   uint16 SnapshotTypesSupported[];


};
