SELKIELogger
1.0.0
|
The repository contains the following top level directories:
Supplementary documentation files, to provide additional information not present in the Doxygen annotations within the source code.
Python module containing code and utilities for interacting with files used and generated by this project. The module itself lives under /python/SELKIELogger
Parent directory for reusable library code. The only files that directly belongs in this directory are version.h.in and CMakeLists.txt. Each class of devices has a separate loadable library, with the code for each in a dedicated directory as described below. Each library needs to have a public facing top level header file (e.g. SELKIELoggerBase.h, SELKIELoggerGPS.h) which includes the individual files within the folder.
Core library functions, including the API definition of messages, strings, string arrays and various utility functions.
Code specifically for dealing with data in the message packed format used by this project, including interactions with devices generating data in that format.
Device and message handling code for NMEA0183 style serial communication.
Support for I2C sensors connected directly to a PC. Each sensor type requires device specific support, which can then be included in this library.
Currently supports INA219 current and voltage sensors.
Support for serial connected GPS devices. Currently only supports u-blox devices, but could be extended to other brands and protocols.
Contains unit tests, sample data and configuration for use with CTest.
Coverage for message processing functions is reasonable, but could still be expanded to cover more cases. This is particularly true for failure and error cases.