# Class CIM_MediaAccessDevice
extends CIM_LogicalDevice

A MediaAccessDevice represents the ability to access one or more media and use this media to store and retrieve data.

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

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_ManagedSystemElement
|
+--CIM_LogicalElement
|
+--CIM_EnabledLogicalElement
|
+--CIM_AllocatedLogicalElement
|
+--CIM_LogicalDevice
|
+--CIM_MediaAccessDevice

## Direct Known Subclasses

CIM_CDROMDrive
CIM_DiskDrive
CIM_DisketteDrive
CIM_DVDDrive
CIM_MagnetoOpticalDrive
CIM_TapeDrive
CIM_WORMDrive

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | A MediaAccessDevice represents the ability to access one or more media and use this media to store and retrieve data.
UMLPackagePath | string | CIM::Device::StorageDevices
Version | string | 2.6.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
CompressionMethod | string |
Description | string | A free form string indicating the algorithm or tool used by the device to support compression. If it is not possible or not desired to describe the compression scheme (perhaps because it is not known), recommend using the following words: "Unknown" to represent that it is not known whether the device supports compression capabilities or not, "Compressed" to represent that the device supports compression capabilities but either its compression scheme is not known or not disclosed, and "Not Compressed" to represent that the devices does not support compression capabilities.
DefaultBlockSize | uint64 |
Description | string | Default block size, in bytes, for this Device.
PUnit | string | byte
Units | string | Bytes
ErrorMethodology | string |
Description | string | ErrorMethodology is a free-form string describing the type(s) of error detection and correction supported by this Device.
LastCleaned | datetime |
Description | string | The date and time on which the Device was last cleaned.
LoadTime | uint64 |
Description | string | Time in milliseconds from 'load' to being able to read or write a Media. For example, for DiskDrives, this is the interval between a disk not spinning to the disk reporting that it is ready for read/write (ie, the disk spinning at nominal speeds). For TapeDrives, this is the time from a Media being injected to reporting that it is ready for an application. This is usually at the tape's BOT area.
PUnit | string | second * 10^-3
Units | string | MilliSeconds
MaxAccessTime | uint64 |
Description | string | Time in milliseconds to move from the first location on the Media to the location that is furthest with respect to time. For a DiskDrive, this represents full seek + full rotational delay. For TapeDrives, this represents a search from the beginning of the tape to the most physically distant point. (The end of a tape may be at its most physically distant point, but this is not necessarily true.)
PUnit | string | second * 10^-3
Units | string | MilliSeconds
MaxBlockSize | uint64 |
Description | string | Maximum block size, in bytes, for media accessed by this Device.
PUnit | string | byte
Units | string | Bytes
MaxMediaSize | uint64 |
Description | string | Maximum size, in KBytes, of media supported by this Device. KBytes is interpreted as the number of bytes multiplied by 1000 (NOT the number of bytes multiplied by 1024).
MappingStrings | string | MIF.DMTF|Sequential Access Devices|001.2, MIF.DMTF|Host Disk|001.5
MaxUnitsBeforeCleaning | uint64 |
Description | string | An unsigned integer indicating the maximum 'units' that can be used, with respect to the AccessDevice, before the Device should be cleaned. The property, UnitsDescription, defines how 'units' should be interpreted.
ModelCorrespondence | string | CIM_MediaAccessDevice.UnitsDescription
MediaIsLocked | boolean |
Description | string | True indicates that the media is locked in the Device and can not be ejected. For non-removeable Devices, this value should be true.
MinBlockSize | uint64 |
Description | string | Minimum block size, in bytes, for media accessed by this Device.
PUnit | string | byte
Units | string | Bytes
MountCount | uint64 |
Counter | boolean | true
Description | string | For a MediaAccessDevice that supports removable Media, the number of times that Media have been mounted for data transfer or to clean the Device. For Devices accessing nonremovable Media, such as hard disks, this property is not applicable and should be set to 0.
NeedsCleaning | boolean |
Description | string | Boolean indicating that the MediaAccessDevice needs cleaning. Whether manual or automatic cleaning is possible is indicated in the Capabilities array property.
NumberOfMediaSupported | uint32 |
Description | string | When the MediaAccessDevice supports multiple individual Media, this property defines the maximum number which can be supported or inserted.
Security | uint16 |
Description | string | An enumeration indicating the operational security defined for the MediaAccessDevice. For example, information that the Device is "Read Only" (value=4) or "Boot Bypass" (value=6) can be described using this property.
MappingStrings | string | MIF.DMTF|Disks|003.22
ValueMap | string | 1, 2, 3, 4, 5, 6, 7
Values | string | Other, Unknown, None, Read Only, Locked Out, Boot Bypass, Boot Bypass and Read Only
TimeOfLastMount | datetime |
Description | string | For a MediaAccessDevice that supports removable Media, the most recent date and time that Media was mounted on the Device. For Devices accessing nonremovable Media, such as hard disks, this property has no meaning and is not applicable.
TotalMountTime | uint64 |
Description | string | For a MediaAccessDevice that supports removable Media, the total time (in seconds) that Media have been mounted for data transfer or to clean the Device. For Devices accessing nonremovable Media, such as hard disks, this property is not applicable and should be set to 0.
UncompressedDataRate | uint32 |
Description | string | The sustained data transfer rate in KB/sec that the Device can read from and write to a Media. This is a sustained, raw data rate. Maximum rates or rates assuming compression should not be reported in this property.
PUnit | string | byte / second * 10^3
Units | string | KiloBytes per Second
UnitsDescription | string |
Description | string | Defines 'Units' relative to its use in the property, MaxUnitsBeforeCleaning. This describes the criteria used to determine when the MediaAccessDevice should be cleaned.
ModelCorrespondence | string | CIM_MediaAccessDevice.MaxUnitsBeforeCleaning, CIM_MediaAccessDevice.UnitsUsed
UnitsUsed | uint64 |
Description | string | An unsigned integer indicating the currently used 'units' of the AccessDevice, helpful to describe when the Device may require cleaning. The property, UnitsDescription, defines how 'units' should be interpreted.
Gauge | boolean | true
ModelCorrespondence | string | CIM_MediaAccessDevice.UnitsDescription, CIM_MediaAccessDevice.MaxUnitsBeforeCleaning
UnloadTime | uint64 |
Description | string | Time in milliseconds from being able to read or write a Media to its 'unload'. For example, for DiskDrives, this is the interval between a disk spinning at nominal speeds and a disk not spinning. For TapeDrives, this is the time for a Media to go from its BOT to being fully ejected and accessible to a PickerElement or human operator.
PUnit | string | second * 10^-3
Units | string | MilliSeconds
Capabilities | uint16[] |
ArrayType | string | Indexed
Description | string | Capabilities of the MediaAccessDevice. For example, the Device may support "Random Access", removeable media and "Automatic Cleaning". In this case, the values 3, 7 and 9 would be written to the array. Several of the enumerated values require some explanation: 1) Value 11, Supports Dual Sided Media, distinguishes a Device that can access both sides of dual sided Media, from a Device that reads only a single side and requires the Media to be flipped; and, 2) Value 12, Predismount Eject Not Required, indicates that Media does not have to be explicitly ejected from the Device before being accessed by a PickerElement.
MappingStrings | string | MIF.DMTF|Storage Devices|001.9, MIF.DMTF|Storage Devices|001.11, MIF.DMTF|Storage Devices|001.12, MIF.DMTF|Disks|003.7, MIF.DMTF|Host Disk|001.2, MIF.DMTF|Host Disk|001.4
ModelCorrespondence | string | CIM_MediaAccessDevice.CapabilityDescriptions
ValueMap | string | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
Values | string | Unknown, Other, Sequential Access, Random Access, Supports Writing, Encryption, Compression, Supports Removeable Media, Manual Cleaning, Automatic Cleaning, SMART Notification, Supports Dual Sided Media, Predismount Eject Not Required
CapabilityDescriptions | string[] |
ArrayType | string | Indexed
Description | string | An array of free-form strings providing more detailed explanations for any of the AccessDevice features indicated in the Capabilities array. Note, each entry of this array is related to the entry in the Capabilities array that is located at the same index.
ModelCorrespondence | string | CIM_MediaAccessDevice.Capabilities

### Inherited Properties

Name | Data Type
--- | ---
AllocationState | string
Availability | uint16
Caption | string
CommunicationStatus | uint16
CreationClassName | string
Description | string
DetailedStatus | uint16
DeviceID | string
ElementName | string
EnabledDefault | uint16
EnabledState | uint16
ErrorCleared | boolean
ErrorDescription | string
Generation | uint64
HealthState | uint16
InstallDate | datetime
InstanceID | string
LastErrorCode | uint32
LocationIndicator | uint16
MaxQuiesceTime | uint64
Name | string
OperatingStatus | uint16
OtherEnabledState | string
PowerManagementSupported | boolean
PowerOnHours | uint64
PrimaryStatus | uint16
RequestedState | uint16
Status | string
StatusInfo | uint16
SystemCreationClassName | string
SystemName | string
TimeOfLastStateChange | datetime
TotalPowerOnHours | uint64
TransitioningToState | uint16
AdditionalAvailability | uint16[]
AvailableRequestedStates | uint16[]
IdentifyingDescriptions | string[]
OperationalStatus | uint16[]
OtherIdentifyingInfo | string[]
PowerManagementCapabilities | uint16[]
StatusDescriptions | string[]

## Class Methods

### Inherited Class Methods

Name | Return Type
--- | ---
EnableDevice | uint32
OnlineDevice | uint32
QuiesceDevice | uint32
RequestStateChange | uint32
Reset | uint32
RestoreProperties | uint32
SaveProperties | uint32
SetPowerState | uint32