Beispiel #1
0
        public void AddLocalConnection(Publication pub)
        {
            lock (gate)
            {
                if (IsDisposed)
                {
                    return;
                }

                logger.LogInformation("Creating intraprocess link for topic [{0}]", Name);

                var pub_link = new LocalPublisherLink(this, XmlRpcManager.Instance.Uri);
                var sub_link = new LocalSubscriberLink(pub);
                pub_link.SetPublisher(sub_link);
                sub_link.SetSubscriber(pub_link);

                AddPublisherLink(pub_link);
                pub.AddSubscriberLink(sub_link);
            }
        }
Beispiel #2
0
        public void addLocalConnection(Publication pub)
        {
            lock ( publisher_links_mutex )
            {
                if (_dropped)
                {
                    return;
                }

                ROS.Info()($"[{ThisNode.Name}] Creating intraprocess link for topic [{name}]");

                var pub_link = new LocalPublisherLink(this, XmlRpcManager.Instance.Uri);
                var sub_link = new LocalSubscriberLink(pub);
                pub_link.setPublisher(sub_link);
                sub_link.SetSubscriber(pub_link);

                addPublisherLink(pub_link);
                pub.addSubscriberLink(sub_link);
            }
        }
Beispiel #3
0
 public void SetSubscriber(LocalPublisherLink publisherLink)
 {
     subscriber          = publisherLink;
     connectionId        = ConnectionManager.Instance.GetNewConnectionId();
     DestinationCallerId = ThisNode.Name;
 }