Welcome to MCL‘s documentation!

The multiprocess communication library (a.k.a MCL) provides software for developing low-latency message-passing systems. Message-passing is performed using IPv6 multicast. Two key concepts underpin the design philosophy of and use of MCL: the publish-subscribe paradigm and inter-process communication.

To ensure the success and longevity of a software project, it must be extensible and reliable. MCL encourages users to adopt a modular design when developing software projects. By breaking up software into modules of functionality, small portions of code can be independently developed and maintained - increasing flexibility, maintainability and extensibility. Information is transfered from one module to another using the publish-subscribe paradigm. This strategy allows event-driven code to be run on many independent processes. Message passing over the publish-subscribe network allows communication to occur transparently within a single computer, across multiple computers and across heterogeneous devices.

MCL was developed at The Intelligent Vehicles and Safety Systems Group at the Australian Centre for Field Robotics (ACFR).

The following sections provide an introduction to the MCL project:

MCL API documentation

The following packages are available in MCL:

mcl Root MCL namespace.
mcl.event Event-driven functionality of MCL.
mcl.logging Package for creating and handling network log files in MCL.
mcl.messages Modules for specifying and manipulating MCL message objects.
mcl.network Network communication services.

Indices and tables