-
Notifications
You must be signed in to change notification settings - Fork 2
YDL and LCM
sberkun edited this page May 26, 2021
·
2 revisions
YDL (pronounced "yodel") is a TCP server that forwards messages between processes.
YDL.py
has two methods meant for external use:
-
ydl_start_read(receive_channel, queue, put_json=False)
starts a daemon thread that puts received messages into the queue -
ydl_send(target_channel, header, dic={})
sends a message to the given target
Start up the main processes (such as server.py
and Shepherd.py
) and YDL.py
. The processes should be able to send messages through YDL.
- most of the design for YDL was copied from this tutorial: https://realpython.com/python-sockets/. It is a good introduction to socket programming and selectors.
- another proposed name for YDL was "didgeridoo"
LCM (Lightweight Communications and Marshaling) was the old way that Shepherd processes communicated. The interface was very similar; however LCM was a pain to install, especially on Windows.