# Class CIM_Snapshot
extends CIM_StorageExtent

Deprecated. Snapshots are now modeled in a more abstrct way using StorageExtent and StorageSynchronized. The Snapshot class is an optional construct. It can be used to represent an Extent that contains a full copy of another Extent, or the changes to that Extent when performing a delta-based (delta before or delta after) copy. Snapshot's definition in CIM is not equivalent to the act of creating a volume or file-based snapshot, or a point in time copy. It is at a much lower level and represents the use of storage to hold a copied image of an Extent, or to hold changes to an Extent. Use of the Snapshot object when making a full copy is only recommended if the purpose is to describe the existence of a copy. (This use will be very infrequent.) The problem with describing an Extent solely as a 'snapshot' is that when the snapshot/copy is broken, the object must be destroyed. Typically, this object still holds valid data, and would have to be reinstantiated. If the 'full copy' object is to be treated as a StorageVolume or more general Extent, then it should be modeled as such from the beginning - i.e., not as an instance of Snapshot but as an instance of a generic StorageExtent or StorageVolume. In this case, the Synchronized association would be used to describe that one StorageExtent is synchronized with another. When describing a delta-based snapshot/point in time copy, the Snapshot object represents the store holding the before/after image changes to the original Extent. For example, when doing a 'delta before' Snapshot, the resultant target would be modeled as a StorageExtent that is BasedOn the original Extent and the instance of Snapshot (that holds the changes to the original Extent).

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_ManagedSystemElement
|
+--CIM_LogicalElement
|
+--CIM_EnabledLogicalElement
|
+--CIM_LogicalDevice
|
+--CIM_StorageExtent
|
+--CIM_Snapshot

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Deprecated | string | No value
Description | string | Deprecated. Snapshots are now modeled in a more abstrct way using StorageExtent and StorageSynchronized. The Snapshot class is an optional construct. It can be used to represent an Extent that contains a full copy of another Extent, or the changes to that Extent when performing a delta-based (delta before or delta after) copy. Snapshot's definition in CIM is not equivalent to the act of creating a volume or file-based snapshot, or a point in time copy. It is at a much lower level and represents the use of storage to hold a copied image of an Extent, or to hold changes to an Extent. Use of the Snapshot object when making a full copy is only recommended if the purpose is to describe the existence of a copy. (This use will be very infrequent.) The problem with describing an Extent solely as a 'snapshot' is that when the snapshot/copy is broken, the object must be destroyed. Typically, this object still holds valid data, and would have to be reinstantiated. If the 'full copy' object is to be treated as a StorageVolume or more general Extent, then it should be modeled as such from the beginning - i.e., not as an instance of Snapshot but as an instance of a generic StorageExtent or StorageVolume. In this case, the Synchronized association would be used to describe that one StorageExtent is synchronized with another. When describing a delta-based snapshot/point in time copy, the Snapshot object represents the store holding the before/after image changes to the original Extent. For example, when doing a 'delta before' Snapshot, the resultant target would be modeled as a StorageExtent that is BasedOn the original Extent and the instance of Snapshot (that holds the changes to the original Extent).
UMLPackagePath | string | CIM::Device::SccExtents
Version | string | 2.7.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
IsSynced | boolean |
Deprecated | string | CIM_Synchronized.SyncMaintained
Description | string | True indicates that the snapshot is synced.
SyncTime | datetime |
Deprecated | string | CIM_Synchronized.WhenSynced
Description | string | The time stamp indicating when the sync occurred.

### Inherited Properties

Name | Data Type | Class Origin
--- | --- | ---
Access | uint16 | CIM_StorageExtent
Availability | uint16 | CIM_LogicalDevice
BlockSize | uint64 | CIM_StorageExtent
Caption | string | CIM_ManagedElement
CommunicationStatus | uint16 | CIM_ManagedSystemElement
ConsumableBlocks | uint64 | CIM_StorageExtent
CreationClassName | string | CIM_LogicalDevice
DataOrganization | uint16 | CIM_StorageExtent
DataRedundancy | uint16 | CIM_StorageExtent
DeltaReservation | uint8 | CIM_StorageExtent
Description | string | CIM_ManagedElement
DetailedStatus | uint16 | CIM_ManagedSystemElement
DeviceID | string | CIM_LogicalDevice
ElementName | string | CIM_ManagedElement
EnabledDefault | uint16 | CIM_EnabledLogicalElement
EnabledState | uint16 | CIM_EnabledLogicalElement
ErrorCleared | boolean | CIM_LogicalDevice
ErrorDescription | string | CIM_LogicalDevice
ErrorMethodology | string | CIM_StorageExtent
HealthState | uint16 | CIM_ManagedSystemElement
InstallDate | datetime | CIM_ManagedSystemElement
InstanceID | string | CIM_ManagedElement
IsBasedOnUnderlyingRedundancy | boolean | CIM_StorageExtent
LastErrorCode | uint32 | CIM_LogicalDevice
MaxQuiesceTime | uint64 | CIM_LogicalDevice
Name | string | CIM_StorageExtent
NameFormat | uint16 | CIM_StorageExtent
NameNamespace | uint16 | CIM_StorageExtent
NoSinglePointOfFailure | boolean | CIM_StorageExtent
NumberOfBlocks | uint64 | CIM_StorageExtent
OperatingStatus | uint16 | CIM_ManagedSystemElement
OtherEnabledState | string | CIM_EnabledLogicalElement
OtherNameFormat | string | CIM_StorageExtent
OtherNameNamespace | string | CIM_StorageExtent
PackageRedundancy | uint16 | CIM_StorageExtent
PowerManagementSupported | boolean | CIM_LogicalDevice
PowerOnHours | uint64 | CIM_LogicalDevice
PrimaryStatus | uint16 | CIM_ManagedSystemElement
Primordial | boolean | CIM_StorageExtent
Purpose | string | CIM_StorageExtent
RequestedState | uint16 | CIM_EnabledLogicalElement
SequentialAccess | boolean | CIM_StorageExtent
Status | string | CIM_ManagedSystemElement
StatusInfo | uint16 | CIM_LogicalDevice
SystemCreationClassName | string | CIM_LogicalDevice
SystemName | string | CIM_LogicalDevice
TimeOfLastStateChange | datetime | CIM_EnabledLogicalElement
TotalPowerOnHours | uint64 | CIM_LogicalDevice
TransitioningToState | uint16 | CIM_EnabledLogicalElement
AdditionalAvailability | uint16[] | CIM_LogicalDevice
AvailableRequestedStates | uint16[] | CIM_EnabledLogicalElement
ExtentStatus | uint16[] | CIM_StorageExtent
IdentifyingDescriptions | string[] | CIM_LogicalDevice
OperationalStatus | uint16[] | CIM_ManagedSystemElement
OtherIdentifyingInfo | string[] | CIM_LogicalDevice
PowerManagementCapabilities | uint16[] | CIM_LogicalDevice
StatusDescriptions | string[] | CIM_ManagedSystemElement

## Class Methods

### Inherited Class Methods

Name | Return Type | Class Origin
--- | --- | ---
EnableDevice | uint32 | CIM_LogicalDevice
OnlineDevice | uint32 | CIM_LogicalDevice
QuiesceDevice | uint32 | CIM_LogicalDevice
RequestStateChange | uint32 | CIM_EnabledLogicalElement
Reset | uint32 | CIM_LogicalDevice
RestoreProperties | uint32 | CIM_LogicalDevice
SaveProperties | uint32 | CIM_LogicalDevice
SetPowerState | uint32 | CIM_LogicalDevice