From c52237cae47e34443805f54a0f6995736cac0b61 Mon Sep 17 00:00:00 2001 From: Piv <18462828+Piv200@users.noreply.github.com> Date: Thu, 5 Mar 2020 19:40:34 +1030 Subject: [PATCH] FInal fixes to move to message factory --- SlamController/slam_streamer.py | 1 - persontracking/lidar_cache.py | 8 +++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/SlamController/slam_streamer.py b/SlamController/slam_streamer.py index 937de8b..be77d0e 100644 --- a/SlamController/slam_streamer.py +++ b/SlamController/slam_streamer.py @@ -20,7 +20,6 @@ class SlamStreamer: self._map_meters = map_meters self._lidar_connection = lidar_connection self._port = port - self._zmq_context = self._create_context() def start(self): ''' diff --git a/persontracking/lidar_cache.py b/persontracking/lidar_cache.py index 2a87b50..3f105ca 100644 --- a/persontracking/lidar_cache.py +++ b/persontracking/lidar_cache.py @@ -4,6 +4,8 @@ from threading import Thread from persontracking import algorithms import persontracking.lidar_tracker_pb2 as tracker_pb import zmq +import Messaging.message_factory as mf +import Messaging.messages as messages class LidarCache(): @@ -36,8 +38,7 @@ class LidarCache(): Performs a scan for the given number of iterations. ''' # Create the 0MQ socket first. This should not be passed between threads. - self._socket = self._create_socket() - self._socket.bind("tcp://*:" + str(self.port)) + self._mFactory = mf.getZmqPubSubStreamer(self.port) for i, scan in enumerate(self.lidar.iter_scans(min_len=self.measurements)): print('%d: Got %d measurments' % (i, len(scan))) @@ -53,7 +54,8 @@ class LidarCache(): def fireGroupsChanged(self): # Send the updated groups to 0MQ socket. - self._socket.send_multipart(["lidar_map", tracker_pb.PointScan(points=[]).SerializeToString()]) + self._mFactory.send_message_topic("lidar_map", messages.ProtoMessage( + message=tracker_pb.PointScan(points=[]).SerializeToString())) def stop_scanning(self): self.run = False