示例#1
0
        public int Subscribe(string topic, Type messageType, RosSharedData.MessageHandler messageHandler, int throttle_rate = 0, int queue_length = 1, int fragment_size = int.MaxValue, string compression = "none")
        {
            string rosMessageType = MessageTypes.RosMessageType(messageType);

            if (rosMessageType == null)
            {
                return(0);
            }

            return(Subscribe(topic, messageType, messageHandler, throttle_rate, queue_length, fragment_size, compression));
        }
示例#2
0
        public int Subscribe(string topic, string rosMessageType, RosSharedData.MessageHandler messageHandler, int throttle_rate = 0, int queue_length = 1, int fragment_size = int.MaxValue, string compression = "none")
        {
            Type messageType = MessageTypes.MessageType(rosMessageType);

            if (messageType == null)
            {
                return(0);
            }

            int id = generateId();

            sharedData.AddSubscriber(id, topic, messageType, messageHandler);
            sendOperation(new Subscription(id, topic, rosMessageType, throttle_rate, queue_length, fragment_size, compression));
            return(id);
        }