PacketLib 1.3.2 Interface Control Document
Technical documentation
09/10/2012
The PacketLib C++ library has been developed in order to facilitate the development of applications which handle data streams containing Source Packets compliant to the ESA Telemetry and Telecommand standard.
The library has been developed in the framework of the DISCoS system adopted for the development of some of the ground software for the AGILE mission.
The library is devoted to applications which are required either to generate or to process data stream containing ESA standard Source Packets.
In general, the library is used for applications which require to decode/encode the various data fields of the packets which are read/written in raw format from/to an input/output stream.
The various cases are dealt by the I/O Abstraction Layer of the library, which allows the application to easily select the I/O device among those supported by the library (file, socket, shared memory).
The Telemetry Management Layer of the PacketLib library implements the data stream structure by means of configuration files, allowing the application to handle different layouts without using any hard-coded
information.
The purpose of the present document is to identify and describe the various interfaces of the PacketLib.
Chapter 3 introduces the PacketLib design concept, which is based on the configuration files presented in Chapter 4. Chapter 5 identifies the various type of Source Packet layouts which can be easily modelled by the PacketLib configuration files.
Further documentation on the PacketLib is provided by the PacketLib 1.3.2 Programmer's Guide.