Как я могу читать сериализованные данные о хлопьях с С++ с помощью Python

Я использую rospy и roscpp для соединения друг с другом. Один из узлов roscpp опубликовал тему бинарного архива хлопьев и подписан узлом rospy. Как я могу прочитать двоичный архив хлопьев с помощью python?


person CHOcho    schedule 09.07.2020    source источник
comment
Без дополнительной информации очень сложно понять и ответить на ваш вопрос. Но вам, возможно, стоит взглянуть на github.com/jcarbaugh/cereal .   -  person Fruchtzwerg    schedule 09.07.2020
comment
Обязательно ли использовать хлопья?   -  person JWCS    schedule 10.07.2020


Ответы (1)


Если я правильно вас понимаю, вы пытаетесь отправить сообщение между узлами ros, которые реализованы на разных языках. Но язык реализации не имеет значения, потому что ros автоматически сериализует сообщения. По сути, все это система обмена сообщениями, не зависящая от языка. Если вы хотите передавать данные между узлами, выберите тип сообщения, опубликуйте это сообщение в теме на одном узле и подпишитесь на него с обратным вызовом на другом узле.

Если вы хотите использовать пользовательскую сериализацию данных, а сообщения ros кажутся недостаточными, вы, вероятно, захотите использовать файл std_msgs:: Строка!, ByteMultiArray или UInt8MultiArray. Но хлопья не совсем делают автоматическую сериализацию за вас, так как вам все равно нужно объявлять функции. В целом, если вы используете ros, это кажется излишним; если вы, возможно, не используете его для регистрации или хранения данных?

person JWCS    schedule 10.07.2020