public SensorsDialog(ConnectionContext connection) { InitializeComponent(); Accelerations.StartPolling(connection); updateThread = new Thread(UpdateInstruments); updateThread.IsBackground = true; updateThread.Start(); }
public double ChangeAccelerationUnit(double AccelerationValue, Accelerations fromAccelerationUnit, Accelerations toAccelerationUnit) { object[] results = this.Invoke("ChangeAccelerationUnit", new object[] { AccelerationValue, fromAccelerationUnit, toAccelerationUnit }); return((double)(results[0])); }
/// <remarks/> public void ChangeAccelerationUnitAsync(double AccelerationValue, Accelerations fromAccelerationUnit, Accelerations toAccelerationUnit, object userState) { if ((this.ChangeAccelerationUnitOperationCompleted == null)) { this.ChangeAccelerationUnitOperationCompleted = new System.Threading.SendOrPostCallback(this.OnChangeAccelerationUnitOperationCompleted); } this.InvokeAsync("ChangeAccelerationUnit", new object[] { AccelerationValue, fromAccelerationUnit, toAccelerationUnit }, this.ChangeAccelerationUnitOperationCompleted, userState); }
private void ConnectButton_Click(object sender, EventArgs e) { Button button = (Button)sender; if (button.Text.Equals("Connect")) { this.openConnection = connectionManager.GetConnectionContext(selectedConnection); if (openConnection.OpenConnection()) { //check authorization string userPassword = null; //TODO: Figure out if API will close socket or not. while (!openConnection.Authorize()) { //prompt user for correct password userPassword = Dialog.ShowPrompt("Password Please:", selectedConnection.Password); selectedConnection.Password = userPassword; openConnection.connection = selectedConnection; connectionManager.Save(selectedConnection); if (userPassword.Equals("")) { return; } } //TODO: Refactor maybe button.Text = "Disconnect"; //Accelerations.StartPolling(openConnection); setConnectionListItemDisplayConnected(true); //start mesh if controller available if (SelectedController != null && ControllerManager.IsControllerConnected(SelectedController)) { InitiateMesh(); } } else { Dialog.ShowMessageDialog("Error Opening Connection to ROV. Most likely Connection Refused."); } } else { StopMesh(); Accelerations.StopPolling(); openConnection.Close(); button.Text = "Connect"; //TODO: Refactor setConnectionListItemDisplayConnected(false); } }
public override bool Run() { // There is no input assumed. This is a dedicated acceleration sensor. vRadius = MassBalance.StructuralToBody(vLocation); //aircraft forces vAccel = (Accelerations.GetBodyAccel() + Accelerations.GetPQRidot() * vRadius + Propagate.GetPQRi() * (Propagate.GetPQRi() * vRadius)); // transform to the specified orientation vAccel = sensorOrientation.mT * vAccel; input = vAccel[sensorOrientation.axis - 1]; ProcessSensorSignal(); SetOutput(); return(true); }
/// <remarks/> public void ChangeAccelerationUnitAsync(double AccelerationValue, Accelerations fromAccelerationUnit, Accelerations toAccelerationUnit) { this.ChangeAccelerationUnitAsync(AccelerationValue, fromAccelerationUnit, toAccelerationUnit, null); }
private void SensorsDialog_FormClosing(object sender, FormClosingEventArgs e) { Accelerations.StopPolling(); updateThread.Abort(); }