The LTAS Source Slaving Selector application was developed to transmit LTAS data in User Datagram Protocol (UDP) packets using the LTAS data from one of multiple incoming UDP streams. Users select the data stream via a graphical user interface (GUI), which also displays a variety of data values from the LTAS frames. Prior art that performs a similar objective includes the Selectable Internet Protocol Slaving (SIPS) system, which can perform the objective, but can also create problems when transmitting slaving LTAS data by filling some data fields with zeroes. This is especially true for the velocity data fields. In addition, SIPS' GUI does not include X' and Y' angles, which are a form of local coordinates. The SIPS software was built using an older version of the integrated development environment (IDE) and compiler.
The LTAS Source Slaving Selector software is a standalone application running on Microsoft Windows 7.
This software was developed using the C/C++ programming language with Qt for the integrated development environment (IDE), Qt libraries, and Microsoft Visual Studio 2013 or MinGW for the compiler. The LS3 application is generally built using the model-controller-view design pattern by grouping the source code into two categories: logic and graphics. The logics portion is responsible for listening to network ports for LTAS packets, decoding the received packets for data integrity check purposes, storing the packets in local memory for slaving purposes, and transmitting the packets back to the network using a different port number for slaving. This portion also passes the received packets to the graphics portion for displaying, and accepts slaving selection from the graphics. The graphics portion uses the data values extracted from each LTAS data frame to render the data values on the display, and simultaneously waits for the user's slaving selection made by clicking one of the buttons on the display.
In addition to these functions, this application records all incoming and outgoing LTAS data streams to files with time stamps in binary format. A configuration file, in XML (Extensible Markup Language) format, is used and loaded at the application's startup to describe the incoming and outgoing data streams and graphical settings. The Network Countdown Time Protocol (NCTP) is used for time-synchronizing and displaying Earth and countdown times for informational purposes.