User Tools

Site Tools


documentation:system_build

Streams5 DLL Hierarchy

Our build of the automated system involves several DLL files that we have written to be integrated with Streams5. The two largest and most important modules are the Auto Calibration stream filter and the AIRS Loader.

Right now DLLs are linked in compile time using .libs; I plan on changing that so that we use LoadLibrary() and load the DLLs themselves, not the libs

Auto Calibration stream filter

The purpose of the auto calibration stream filter is to achieve a nice-looking histogram and properly exposed images by automatically calculating the proper integration time and gain values. For instructions on how to add this stream filter, see here

The auto calibration stream filter, fAutoCalibration.dll depends on a smaller DLL module, MS4100Ctrl.dll, used for communications with the cameras. An important thing to note about MS4100Ctrl is that the SendCommand procedure must have a specific delay between when the command is sent and the reply is read (currently set to 100ms)

Don't confuse fAutoCalibration.dll with fHistogram.dll. The latter is a 'manual' version of the auto calibration filter and could be used not only to calibrate the cameras manually (either via sliders or the “auto calibrate” button) but also to view the histograms from the images.

AIRS Loader

The AIRS Loader DLL is a Streams5 SDK application loaded at Streams startup. Its purpose is to present an interface for the touchscreen monitor, from which the user will be able to invoke calibration / recording. The first thing the Loader does is change Streams settings for the GPS, Laser, and Watson box (InstrumentSetup.cpp). The settings must be located in the C:\FORESTRY\config.ini file

If you want to check the settings beforehand, use the program InstrumentStatus.exe. It will let you look at the data coming on the ports and save new settings easily to the config file. This program depends on the C_COM dll for COM-port communications.

documentation/system_build.txt · Last modified: 2007/01/19 22:27 (external edit)