public virtual IEnumerator<ITask> ReliableSubscribeHandler(ReliableSubscribe subscribe)
 {
     base.SubscribeHelper(_subMgrPort, subscribe.Body, subscribe.ResponsePort);
     yield break;
 }
Example #2
0
        IEnumerator<ITask> ReliableSubscribeHandler(ReliableSubscribe subscribe)
        {
            Tracer.Trace("SickLRF::ReliableSubscribeHandler()");

            yield return Arbiter.Choice(
                SubscribeHelper(_subMgrPort, subscribe.Body, subscribe.ResponsePort),
                delegate(SuccessResult success)
                {
                    if (_state != null &&
                        _state.DistanceMeasurements != null)
                    {
                        _subMgrPort.Post(new submgr.Submit(
                            subscribe.Body.Subscriber, DsspActions.ReplaceRequest, _state, null));
                    }
                },
                null
            );
        }
Example #3
0
 public IEnumerator<ITask> ReliableSubscribeHandler(ReliableSubscribe subscribe)
 {
     yield return Arbiter.Choice(
         SubscribeHelper(_subMgrPort, subscribe.Body, subscribe.ResponsePort),
         delegate(SuccessResult success)
         {
             drive.Update update = new drive.Update(_state);
             SendNotificationToTarget<drive.Update>(subscribe.Body.Subscriber, _subMgrPort, update);
         },
         delegate(Exception ex)
         {
             LogError(ex);
             throw ex;
         }
     );
 }