# Class CIM_Button
extends CIM_LogicalDevice

CIM_Button models the logical aspects of a mechanical or electronic human interface device pressed to activate an electrical circuit in a computer. Mechanical buttons may include spring-loaded mechanical key or knobs. Electronic buttons may include touch-sensitive switches or screens. The Button object is used to model the manageable aspects of a Button.

### 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_Button

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | CIM_Button models the logical aspects of a mechanical or electronic human interface device pressed to activate an electrical circuit in a computer. Mechanical buttons may include spring-loaded mechanical key or knobs. Electronic buttons may include touch-sensitive switches or screens. The Button object is used to model the manageable aspects of a Button.
Experimental | boolean | true
UMLPackagePath | string | CIM::Device::Button
Version | string | 2.22.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
ButtonPurpose | uint16 |
Description | string | The ButtonPurpose property identifies or defines the use of the button represented by the instance. If the type is set to "Other", then the OtherButtonPurpose property can be used to further identify the purpose. Descriptions of the different Button purposes are as follows: A Power Button changes the power state of a device. A reset button is used to reset the state of a device. Undock is used to undock or disconnect a device or entire system from a separate device or system. An Open/Close button is used on a device that has an object that usually moves such as a drawer, door, or tray.
ModelCorrespondence | string | CIM_Button.OtherButtonPurpose
ValueMap | string | 0, 1, 2, 3, 4, 5, .., 32768..65535
Values | string | Unknown, Other, Power, Reset, Undock, Open/Close, DMTF Reserved, Vendor Reserved
ButtonState | uint16 |
Description | string | The current state of the button.
ValueMap | string | 0, 2, 3, .., 32768..65535
Values | string | Unknown, Deassert, Assert, DMTF Reserved, Vendor Reserved
ButtonType | uint16 |
Description | string | The ButtonType property identifies or defines the type the button represented by the instance. If the type is set to "Other", then the OtherButtonType property can be used to further identify the type. A momentary button is one that depressed for a moment to cause the desired affect the target device or circuit A toggle type button is one that will remain in a switched or depressed position until it is depressed or switched again.
ModelCorrespondence | string | CIM_Button.OtherButtonType
ValueMap | string | 0, 1, 2, 3, .., 32768..65535
Values | string | Unknown, Other, Momentary, Toggle, DMTF Reserved, Vendor Reserved
OtherButtonPurpose | string |
Description | string | A string describing the Button Purpose - used when the ButtonPurpose property is set to "Other".
MaxLen | uint32 | 128
ModelCorrespondence | string | CIM_Button.ButtonPurpose
OtherButtonType | string |
Description | string | A string describing the Button Purpose - used when the ButtonType property is set to "Other".
MaxLen | uint32 | 128
ModelCorrespondence | string | CIM_Button.ButtonType
ButtonActionMapping | string[] |
ArrayType | string | Indexed
Description | string | ButtonActionMapping shall identify the action that occurs if the ButtonState transitions to the value specified in the corresponding array index of the ButtonStateMapping property. Each value shall be formatted using the following algorithm: [OrgID]:[LocalID] Where [OrgID] and [LocalID] are separated by a colon (:), and where [OrgID] shall include a copyrighted, trademarked, or otherwise unique name that is owned by the business entity that is creating or defining the string value or that is a registered ID assigned to the business entity by a recognized global authority. [OrgID] shall not contain a colon (:). [LocalID] is chosen by the business entity and shall not be reused to identify different underlying (real-world) elements. For DMTF defined values, [OrgID] shall be "DMTF". If ButtonPurpose contains the value 2 "Power", ButtonActionMapping shall contain one of the following values: "DMTF:PowerOn" - A transition to the state will result in a request to power on the associated element. "DMTF:PowerOff" - A transition to the state will result in a request to power off the associated element. "DMTF:PowerChange" - A transition to the state will result in a request to change the power state of the associated element. If ButtonPurpose contains the value 3 "Reset", ButtonActionMapping shall contain one of the following values: "DMTF:Reset" - A transition to the state will result in a request to reset the associated element. If ButtonPurpose contains the value 4 "Undock", ButtonActionMapping shall contain one of the following values: "DMTF:Undock" - A transition to the state will result in a request to undock the associated element. If ButtonPurpose contains the value 5 "OpenClose", ButtonActionMapping shall contain one of the following values: "DMTF:OpenCloseChange" - A transition to the state will result in a request to open or close the associated element as appropriate. That is, an open element will be closed, and a closed element will be opened. "DMTF:OpenCloseOpen" - A transition to the state will result in a request to open the associated element. "DMTF:OpenCloseClose" - A transition to the state will result in a request to close the associated element.
ModelCorrespondence | string | CIM_Button.ButtonStateMapping
ButtonStateMapping | uint16[] |
ArrayType | string | Indexed
Description | string | ButtonStateMapping identifies a supported button state that correlates to a specific action that will occur if the button transitions to the state.
ModelCorrespondence | string | CIM_Button.ButtonActionMapping
ValueMap | string | 2, 3
Values | string | Deassert, Assert

### Inherited Properties

Name | Data Type | Class Origin
--- | --- | ---
AllocationState | string | CIM_LogicalDevice
Availability | uint16 | CIM_LogicalDevice
Caption | string | CIM_ManagedElement
CommunicationStatus | uint16 | CIM_ManagedSystemElement
CreationClassName | string | CIM_LogicalDevice
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
Generation | uint64 | CIM_ManagedElement
HealthState | uint16 | CIM_ManagedSystemElement
InstallDate | datetime | CIM_ManagedSystemElement
InstanceID | string | CIM_ManagedElement
LastErrorCode | uint32 | CIM_LogicalDevice
LocationIndicator | uint16 | CIM_LogicalDevice
MaxQuiesceTime | uint64 | CIM_LogicalDevice
Name | string | CIM_ManagedSystemElement
OperatingStatus | uint16 | CIM_ManagedSystemElement
OtherEnabledState | string | CIM_EnabledLogicalElement
PowerManagementSupported | boolean | CIM_LogicalDevice
PowerOnHours | uint64 | CIM_LogicalDevice
PrimaryStatus | uint16 | CIM_ManagedSystemElement
RequestedState | uint16 | CIM_EnabledLogicalElement
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
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