/// <summary> /// Toggles the state of the switching device and puts the device into manual override. /// </summary> public void ManuallyToggleActualState() { m_inManualOverrideMode = true; if (m_actualState == SwitchingDeviceActualState.Closed) { m_actualState = SwitchingDeviceActualState.Open; } else if (m_actualState == SwitchingDeviceActualState.Open) { m_actualState = SwitchingDeviceActualState.Closed; } }
/// <summary> /// Removes the <see cref="LinearStateEstimator.Modeling.SwitchingDeviceBase"/> from <i>manual override</i> and reverts its state back to the default state defined by <see cref="LinearStateEstimator.Modeling.SwitchingDeviceNormalState"/>. /// </summary> public void RemoveFromManualAndRevertToDefault() { m_inManualOverrideMode = false; if (m_normalState == SwitchingDeviceNormalState.Closed) { m_actualState = SwitchingDeviceActualState.Closed; } else if (m_normalState == SwitchingDeviceNormalState.Open) { m_actualState = SwitchingDeviceActualState.Open; } }
/// <summary> /// Sets the <see cref="LinearStateEstimator.Modeling.SwitchingDeviceBase.ActualState"/> to the desired state and puts the <see cref="LinearStateEstimator.Modeling.SwitchingDeviceBase"/> into <i>manual override</i>. While in <i>manual override</i> the <see cref="LinearStateEstimator.Modeling.SwitchingDeviceBase"/> will not update its state due to measurement update. /// </summary> /// <param name="switchingDeviceActualState">The desired <see cref="LinearStateEstimator.Modeling.SwitchingDeviceActualState"/>.</param> public void ManuallySwitchTo(SwitchingDeviceActualState switchingDeviceActualState) { m_inManualOverrideMode = true; m_actualState = switchingDeviceActualState; }