226 WM-OM-E Rev I
// Prototype C++ client application for "Fast Wave Port' Math Processor
//
// Compatibility:
// Microsoft Visual C++ 6.0, 7.1
// MinGW 'gcc' based compiler (free download from http://www.mingw.org/)
// Compile with: mingw32-c++ -o fastWavePortClient.exe fastwaveportclient.cpp
//---------------------------------------------------------------------------------------
---
#include "windows.h"
#include <stdio.h>
//---------------------------------------------------------------------------------------
// FastWavePort header, describes various properties of the waveform passed to the
// user-processing
// function. Also used to carry the properties of the processed waveform back to the
// DSO.
#define FLAGS_OUTPUT_VALID 0x01
typedef unsigned __int64 lecTimeStamp;
lecTimeStamp lecTimeStampOneSecond = 1000000000; // 1 ns units in a second
#pragma pack(push, 4) // pack on 4-byte boundaries (Important!)
struct CDescHeader
{
int descVersion; // header version number
int flags; // misc. flags indicating the status of input, and
// how to treat the output
int headerSize; // size of the header, data starts immediately after
// the hdr.
int windowSize; // total size of the window (header + data)
int numSamples; // total number of samples in the input waveform
int segmentIndex; // index of this segment, usually zero when input
// waveform is not a sequence
int numSweeps;
int _dummy1; // not used
double verGain; // scale factor that relates integer sample data
//values to the vertical units of the waveform.
double verOffset; // vertical offset (in vertical units, e.g. Volts) of
// the waveform
double verResolution; // vertical resolution of the measurement system (also
// in vertical units)
double horInterval; // scale factor that relates integer sample indices to
// the horizontal units of the waveform.