SPx ProgrammingSPx is provided as a set of C++ classes for Windows XP/Vista or Linux/X11. You build an SPx application by combining the SPx library classes with your application code, and possibly one or more pre-built SPx servers. SPx is a framework of classes that provide a wide range of radar-related processing and display functions. Your application could use one SPx capability or the full set.
An SPx solution can be based on a client-server architecture or an integrated architecture in which
the software modules run with the application on a single computer. In a distributed solution, an SPx server
can receive radar video in a remote server and distribute video to client displays over a LAN.
The remote SPx server can be a custom application that you write from the SPx objects, or
it can be one of the pre-defined SPx servers. Processes and ThreadsAn SPx application can run as a server in its own process, or may be linked with application code to form a multi-threaded program. With a modern multi-core processor, the ability to create separate threads of execution allows for optimum use of the computing capability.
SPx SoftwareSPx is supplied as a set of include files and C++ class libraries with associated C functions. A development release comprises:
The libraries supplied may be for Windows or Linux, with other operating systems on request. You develop your application by including the SPx classes to provide the capabilities for radar processing and display. The SPx framework is open and extensible, so you can add your own processing modules and access the data at any stage of the processing. When you have developed your application and linked with the SPx libraries, the executable program runs as a normal C/C++ program. SPx is licensed through a developer licence, which supports the process of writing the application and includes support from Cambridge Pixel, and run-time licenses for the deployed modules. A dongle may be required in your deployed system to enable the software to run correctly (other run-time protection methods are possible if your application market would prefer not to use dongles) Creating a radar overlay to a graphics applicationA simple application of SPx is to add radar scan conversion into a graphics applications - often called a radar overlay. In reality, SPx is designed to support a underlay-radar-overlay configuration, in which graphics can be placed underneath the radar video for semi-transparent blending, or as an overlay to the radar video. A radar overlay application is constructed by combining a number of SPx classes: Radar source class. This could be a test generator, network receiver or hardware interface. There are a number of available classes that all have the common characteristic of providing a source of radar video. Radar Interface Buffer (RIB). The RIB provides buffered storage between the generation of radar video and the processing. One thread writes into the RIB and another reads out. Polar Interface Module (PIM). The PIM provides storage for radar video, typically in the form of a range-azimuth storage. Data received from the RIB is written into the PIM where it is available for manipulation by processes. Optional Processing. Any number of SPx (or custom written) processes can process data from the PIM. A processing chain may be constructed that starts with a PIM. For the purposes of this example, the only process of interest is the scan conversion. PPI Scan Conversion. The PPI scan converter takes data from the PIM at regular intervals (nominally every 20ms) and scan converts to a bitmap structure. Within SPx scan conversion is divided into two stages: the conversion from polar to rectangular coordinates and the display of that scan converted data. PPI Scan Conversion Display. The final processing component takes the scan converted data and displays it. This display process allows graphics that are generated outside of SPx to be combined with the radar video and displayed. It is significant to note that SPx is largely insensitive to the method of generating the overlay/underlay graphics.
|
|
|
Cambridge Pixel Ltd New Cambridge House, Litlington, Royston, Herts, SG8 0SS, UK Phone: +44 (0) 1763 852749 Registered Office: Lake House, Royston, Herts, SG8 9JB, UK Registered in England No 6174486 |