Musen  v1.1.0
ROS 2 UDP and TCP socket communication library
Musen (無線)

latest version commits since latest version license

Musen (無線, wireless) is a package that provides UDP and TCP socket communication library. This library is written in C++ and currently only works on Linux based operating system. In this library, the UDP socket communication will be handled by Broadcaster and Listener objects while the TCP socket communication will be handled by Server, Session, and Client objects.

Features

  • Send and receive data on UDP socket using Broadcaster and Listener objects.
  • Send and receive data on TCP socket using Server, Session, and Client objects.
  • Specify the port number and target hosts to be used.
  • Message serialization support for string, list of string, and struct data.

Requirement

Installation

Binary Packages

See releases for the latest version of this package.

Build From Source

  • Create a build directory and change the working directory to it.
    $ mkdir build && cd build
  • Configure CMake and build the project.
    $ cmake .. && make

Optionally, you could speed up the build process by specifying the parallel job using -j option, see this.

  • (Optional) generate documentation.
    $ doxygen
  • (Optional) reconfigure CMake to build a Debian packages.
    $ cmake -DCMAKE_INSTALL_PREFIX=/usr .. && make && cpack
  • (Optional) reconfigure CMake to run the unit tests.
    $ cmake -DMUSEN_BUILD_TESTS=ON .. && make && ctest --verbose

Usages

See examples for information on how to use this package.

Documentation

You can read the full API documentation in the generated doc directory (see this) or in here.

License

This project is licensed under the terms of the MIT License.

Copyright © 2021-2024 ICHIRO ITS