private void disposeController() { if (m_controller != null) { lock (m_controller) { // Close the port m_controller.Dispose(); m_controller = null; } } }
private void ensureController() { _service.LogInfoViaService("TrackRoamerBotHardwareController: ensureController() sComPort=" + sComPort + " m_controller=" + m_controller); if (m_controller == null) { m_controller = new ControllerRQAX2850(sComPort); m_controller.onValueReceived_EncoderLeftAbsolute += new OnValueReceived(m_controller_onValueReceived_EncoderLeftAbsolute); m_controller.onValueReceived_EncoderRightAbsolute += new OnValueReceived(m_controller_onValueReceived_EncoderRightAbsolute); m_controller.onValueReceived_EncoderSpeed += new OnValueReceived(m_controller_onValueReceived_EncoderSpeed); m_controller.onValueReceived_DigitalInputF += new OnValueReceived(m_controller_onValueReceived_DigitalInputF); m_controller.onValueReceived_DigitalInputEmerg += new OnValueReceived(m_controller_onValueReceived_DigitalInputEmerg); m_controller.init(); } _service.LogInfoViaService("TrackRoamerBotHardwareController: ensureController() finished"); }