protected void setGuiCurrentDirection(DirectionData dir) { if (_mainWindow != null) { ccrwpf.Invoke invoke = new ccrwpf.Invoke(delegate() { _mainWindow.CurrentDirection = new DirectionData() { TimeStamp = dir.TimeStamp, heading = dir.heading, bearing = _currentGoalBearing }; } ); _wpfServicePort.Post(invoke); Arbiter.Activate(TaskQueue, invoke.ResponsePort.Choice( s => { }, // delegate for success ex => { } //Tracer.Error(ex) // delegate for failure )); } }