DLL Plugin

The user can make his own real time blocks by making a DLL. SkySweeper calls routines in the DLL via the DLL block. Insert a DLL block into configuration. Write the name of the DLL file or use the browse button. Press the connect button to connect to the DLL module. If the DLL module is compatible with the SkySweeper the status well change to connected.

 

 

The DLL plugin has to contain at least one routine called Process. SkySweeper calls Process routine to pass data for processing. The routine contains two input parameters: InWaveHder and OutWaveHdr, which are the WAVEHDR structures. The WAVEHDR structure defines the header used to identify a waveform-audio buffer, and it is defined in the file called mmsystem.h. The data is in the floating point format.

The following routines are not mandatory, but they are useful for example to initialize variables.

Create routine is called only once when the SkySweeper connects to the DLL. The Create routine is the first routine, which is called by the SkySweeper.

Delete routine is called only once when the SkySweeper disconnects the DLL. The Delete routine is the last routine, which is called by the SkySweeper.

Start routine is called every time when the user starts processing. Start has two parameters SampleRate and BitsPerSample, which tells the selected sample rate and bits per sample respectively. The BitsPerSample parameter tells the bits per sample of input data. Internally the data is processed as floating-point numbers.

Stop routine is called every time when the user stops processing.

SupportSampleRate routine is called by SkySweeper to ask whether the DLL supports selected the sample rate. If the DLL supports the sample rate it must return 1 other wise it has to return 0.

There are two examples under the installation directory. The demo1 is the simplest example. It multiples the input signal by two. The demo2 sums a sine signal to the input signal. The example uses Intel’s native signal processing (nsp) library functions. To compile an example you have to download nsp library from Intel’s web site in order to get the necessary header files. The control is a windows program, which is used to set signal generator frequency, amplitude and phase. The control program communicates with the signal generator DLL using a shared memory.

You can try the example with the precompiled siggen.dll and control.exe files. You have nsp libraries in your computer because they are copied during SkySweeper installation.

How to make and compile a DLL read that from windows manuals. The control windows program uses Borland’s OWL library.