/lcm

Lightweight Communications and Marshalling

Primary LanguageJavaGNU Lesser General Public License v2.1LGPL-2.1

Lightweight Communications and Marshalling (LCM)

LCM is a set of libraries and tools for message passing and data marshalling, targeted at real-time systems where high-bandwidth and low latency are critical. It provides a publish/subscribe message passing model and automatic marshalling/unmarshalling code generation with bindings for applications in a variety of programming languages.

Quick Links

Features

  • Low-latency inter-process communication
  • Efficient broadcast mechanism using UDP Multicast
  • Type-safe message marshalling
  • User-friendly logging and playback
  • No centralized "database" or "hub" -- peers communicate directly
  • No daemons
  • Few dependencies

Supported platforms and languages

  • Platforms:
    • GNU/Linux
    • OS X
    • Windows
    • Any POSIX-1.2001 system (e.g., Cygwin, Solaris, BSD, etc.)
  • Languages
    • C
    • C++
    • C#
    • Java
    • Lua
    • MATLAB
    • Python