/// <summary> /// Map the status from the remote recorder to our internal statemachine input /// </summary> /// <param name="rrState"></param> /// <returns></returns> private StateMachine.StateMachineInput MapRRStateToSMInput(RemoteRecorderStatus rrState) { switch (rrState) { case RemoteRecorderStatus.Stopped: return(StateMachine.StateMachineInput.RecorderStopped); case RemoteRecorderStatus.Recording: return(StateMachine.StateMachineInput.RecorderRecording); case RemoteRecorderStatus.RecorderRunning: return(StateMachine.StateMachineInput.RecorderRunning); case RemoteRecorderStatus.Previewing: Recording nextRecording = controller.GetNextRecording(); if (nextRecording != null) { return(StateMachine.StateMachineInput.RecorderPreviewingQueued); } else { return(StateMachine.StateMachineInput.RecorderPreviewing); } case RemoteRecorderStatus.Paused: return(StateMachine.StateMachineInput.RecorderPaused); case RemoteRecorderStatus.Faulted: return(StateMachine.StateMachineInput.RecorderFaulted); case RemoteRecorderStatus.Disconnected: return(StateMachine.StateMachineInput.Disconnected); default: return(StateMachine.StateMachineInput.NoInput); } }
/// <summary> /// Map the remote recorder status to the input event type of the state machine. /// </summary> private Input MapInputFrom(RemoteRecorderStatus state) { switch (state) { case RemoteRecorderStatus.Stopped: return(Input.RecorderStopped); case RemoteRecorderStatus.Recording: return(Input.RecorderRecording); case RemoteRecorderStatus.RecorderRunning: return(Input.RecorderDormant); case RemoteRecorderStatus.Previewing: Recording nextRecording = controller.GetNextRecording(); if (nextRecording != null) { return(Input.RecorderPreviewingWithNextSchedule); } else { return(Input.RecorderPreviewingNoNextSchedule); } case RemoteRecorderStatus.Paused: return(Input.RecorderPaused); case RemoteRecorderStatus.Faulted: return(Input.RecorderFaulted); case RemoteRecorderStatus.Disconnected: return(Input.RecorderDisconnected); default: return(Input.None); } }
/// <summary> /// Map the remote recorder status to the input event type of the state machine. /// </summary> private Input MapInputFrom(RemoteRecorderStatus state) { switch (state) { case RemoteRecorderStatus.Stopped: return Input.RecorderStopped; case RemoteRecorderStatus.Recording: return Input.RecorderRecording; case RemoteRecorderStatus.RecorderRunning: return Input.RecorderDormant; case RemoteRecorderStatus.Previewing: Recording nextRecording = controller.GetNextRecording(); if (nextRecording != null) { return Input.RecorderPreviewingWithNextSchedule; } else { return Input.RecorderPreviewingNoNextSchedule; } case RemoteRecorderStatus.Paused: return Input.RecorderPaused; case RemoteRecorderStatus.Faulted: return Input.RecorderFaulted; case RemoteRecorderStatus.Disconnected: return Input.RecorderDisconnected; default: return Input.None; } }