gaps-online-software 0.10
online software for the TOF system for the GAPS experiment
Loading...
Searching...
No Matches
gaps-online-software documentation

The GAPS online softere allows to read and work with TOF only data as well as telemetered data to ground from several different APIs.

APIs

Rust API

  • tof-dataclasses tof-dataclasses provides the Rust side of the general TOF API. This comprises classes for events, calibration and (de)serialization methods
  • telemetry-dataclasses _telemetry-dataclasses provides Rust bindings to read and work with telemetered data, as is in *.bin files sent down from the experiment.

Telemetered data wraps all TOF (and other data) in a new packet tppe with a dedicated header.

  • tof-control tof-control is Takeru's code for changing voltages/thresholds etc and monitor Tof environmental sensors

CXX API

The CXX API is an independent implementation of the rust tof-dataclasses project.

Python API

The python API is exposed through gaps_online which can be imported if the setup-env.sh shell has been sourced and the thus PYTHONPATH has been modified. If BUILD_RUSTPYBINDINGS are enabled, the project exposes the rust code throug pyo3 crafted pybindings. The CXX interface is wrapped through pybind11, these pybindings can be enable with BUILD_CXXPYBINDINGS as of version 0.10 (LELEWAA) we discourage to use the cxx pybindings, sinde the rust pybindings have matured enough and are faster as well as more stable

The rust side of the rust pybdingings is documented through the rust doc system and can be found here:

  • go-pybidings. Pyo3 wrapper for a part of the rust code. If BUILD_TELEMETRY and/or BUILD_LIFTOF are enabled, these parts of the code will be exposed through python as well.

The python API exposed through python (which is what a user will encounter in their ipython shell or similar) are doucmented through sphinx and can be found here:

  • gaps-online The 'meta' package for access through python.

Executable programs and higher level libraries [liftof]

Liftof ("liftof is for TOF") is a collection of binaries and a library which are used for in-flight data taking. Liftof is written in Rust It also ships with binaries for debugging and analysis.

liftof-cc contains 2 executable programs:

  • liftof-cc : Command and control server
  • liftof-mt : Readout/Diagnose MTB, show event stream and can send RBEventRequests to RBs

liftof-rb readoutboard code