| Interface | osid.control.Setting | ||
|---|---|---|---|
| Implements | osid.OsidObject | ||
| osid.Subjugateable | |||
| Description | An  | ||
| Method | getControllerId | ||
| Description | Gets the controller  | ||
| Return | osid.id.Id | the controller  Id  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getController | ||
| Description | Gets the controller. | ||
| Return | osid.control.Controller | the controller | |
| Errors | OPERATION_FAILED | unable to complete request | |
| Compliance | mandatory | This method must be implemented. | |
| Method | isOn | ||
| Description | Tests if the toggleable controller is on. | ||
| Return | boolean |  true if the controller is on, false otherwise | |
| Errors | ILLEGAL_STATE |  Controller.isToggleable() is false  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | isOff | ||
| Description | Tests if the toggleable controller is off. | ||
| Return | boolean |  true if the controller is iff, false otherwise | |
| Errors | ILLEGAL_STATE |  Controller.isToggleable() is false  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getVariableAmount | ||
| Description | Gets the level amount on a fixed scale. | ||
| Return | decimal | the level amount | |
| Errors | ILLEGAL_STATE |  Controller.isVariable() is false  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getDiscreetStateId | ||
| Description | Gets the discreet  | ||
| Return | osid.id.Id | the state  Id  | |
| Errors | ILLEGAL_STATE |  Controller.hasDiscreetStates() is false  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getDiscreetState | ||
| Description | Gets the discreet  | ||
| Return | osid.process.State | the state | |
| Errors | ILLEGAL_STATE |  Controller.hasDiscreetStates() is false  | |
| OPERATION_FAILED | unable to complete request | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getRampRate | ||
| Description | Gets the ramp rate from off to on to use for the transition for this setting. If the ramp rate is 10 seconds and the variable percentage is 50%, then the actual transition duration from off would be 5 seconds for a linear controller. | ||
| Return | osid.calendaring.Duration | the ramp rate | |
| Errors | ILLEGAL_STATE |  Controller.isRampable() is false  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getSettingRecord | ||
| Description | Gets the setting record corresponding to the given 
                     | ||
| Parameters | osid.type.Type | settingRecordType | the type of setting record to retrieve | 
| Return | osid.control.records.SettingRecord | the setting record | |
| Errors | NULL_ARGUMENT |  settingRecordType is null  | |
| OPERATION_FAILED | unable to complete request | ||
| UNSUPPORTED |  hasRecordType(settingRecordType) is false  | ||
| Compliance | mandatory | This method must be implemented. | |