2. Overview

Scope

ifw-rtmslib packages the low-latency RTMS sender/receiver helper layer that depends solely on llnetio and IFW foundation utilities. It exposes the C++ library ifwRtmsLib_llnetio together with unit tests and the Sphinx manual in doc/manual.

Modules

rtmslib/src

Core C++ implementation: transport glue, extended info helpers and logging utilities for RTMS senders and receivers.

rtmslib/test

GTest unit tests that validate configuration handling and extended info packing/unpacking.

doc/manual

This Sphinx project; building it produces HTML and PDF manuals.

Dependencies

The library uses the following external dependencies (checked in wscript):

  • llnetio for UDP/MUDPI/RTMS transport

  • fmt and log4cplus for formatting and logging

  • Boost

  • taiclock, cfitsio for FITS handling

Building

Run the build from the repository root inside the standard IFW workspace:

$ ./waf configure build

The resulting shared library is installed as ifwRtmsLib_llnetio and can be required by other projects via the workspace dependency ifw-rtmslib.rtmslib_llnetio.

Documentation build

$ cd doc/manual/src
$ make html

Add latexpdf as the make target to produce the PDF variant. The doc/wscript and doc/manual/wscript files allow ./waf --with-docs to include the manual when documentation builds are wired into the workspace.