GetData is a library that provides an API to interface with dirfile databases. The dirfile database format is designed to provide a fast, scalable format for storing and reading binary, synchronously-sampled, time-ordered data. GetData was originally written for the BOOMERanG and BLAST experiments as a data format suitable for use for both quick-look and data reduction. It is now used by many other cosmological and astrophysical experiments including ACT, Planck, Spider, Keck, as well as other projects.
QP is a family of lightweight software frameworks for building responsive and modular real-time embedded applications as systems of cooperating, event-driven active objects (actors). The QP family consists of QP/C, QP/C++, and QP-nano frameworks, which are all strictly quality controlled, superbly documented, and commercially licensable. The behavior of active objects is specified in QP by means of hierarchical state machines (UML statecharts). The frameworks support manual coding of UML state machines in C or C++ as well as automatic code generation by means of the free QM modeling tool. All QP frameworks can run on bare-metal MCUs, completely replacing a traditional RTOS. Ports and ready-to-use examples are provided for all major CPUs, such as ARM Cortex-M, ARM7/9, MSP430, C28x, C55x, RX, R8C, AVR32, AVRMega, PIC24/dsPIC, as well as Arduino and mbed. QP/C and QP/C++ can also work with a traditional OS/RTOS, such as: POSIX (Linux, QNX), Windows, VxWorks, ThreadX, and uC/OS.
Grapple is designed to be a simple network layer, allowing the addition of multiuser features to an application for as little as a dozen lines of code. However, it also allows for more. It features simple client-server networking that keeps all clients aware of all other clients, passworded servers, and data transfer via TCP, UDP, or reliable UDP. Advanced features include network messaging via push, pull, or a combination, multiple methods of querying users, user groups for client bandwidth saving, network load reacting data transmission and retransmission, background pinging to monitor network states, server failover, and a fully functional lobby system.