Filter Library | Camera | Interface Physics |
#include <InterfaceDLL.h>
Type to support the exchange of data between the CameraDLL and the main program.
typedef struct __SpmUpdateIVCurve { DWORD dwFlags; // Parameter flags (not used) DWORD dwMask; // Parameter mask (MinMax flag) DWORD dwNumOfPoints; // Number of points to add to curve DWORD dwCurveNumber; // Curve Number. int nPositionX; // IV point position in picometer. int nPositionY; // IV point position in picometer. LPSPMDEVICESPECIFICIVDATA lpDevSpecIVData; short* wIVData; // ptr to IVcurve base address int nMinI; // Minimal Current int nMaxI; // Maximal Current double dDataScaleFactor; // Scale factor between 1 unit and 1 LSB int nDataOffset; // Offset for ADC=0, // use : Abs.Height = DataScale * (ADCValue + DataOffset) } SPMUPDATEIVCURVE, *LPSPMUPDATEIVCURVE;
This structure is used by the Dll notification UpdateIVCurveData. It contains information about the IVCurves to be added to the document.
The dwPointsOffset and dwNumOfPoints are used when adding partial curves. The Offset parameter is the number of samplepoints already added before and therefore the start point of this partial data curve. The NumOfPoints parameter specifies the number of new valid samplepoints in this frame.
When adding complete frames the Offset parameter must be 0 and the NumOfPoints parameter should be dwNumberOfSamples.
The dwCurveNumber is a curvecounter, the Dll should count the frames it adds to the document. The main program can use this number to check if it is missing curves (underrun).
The dwPositionX and dwPositionY define the position where the IV curve is made. The lpDevSpecIVData parameter is a pointer to a device specific data structure that can contain all sorts of parameters. E.g. Amplifier Gain, Sample Temperature.
lpIVData is a pointer to the first point in the IVCurve, all samplepoints are 16 bit. Data organization is set in the StartIVMeasurement-notification.
dwMask specifies which parameters are valid. If the Dll has the opportunity to calculate these values it can pass them to the main program (when the IVCurve is completed). dwMask can be any combination of the following: SPM_IDM_MINI, SPM_IDM_MAXI. The nMinZ and nMaxZ are the minimal respectively maximal value of the data.
Definition at line 1213 of file InterfaceDLL.h.
Public Attributes | |
DWORD | dwFlags |
Parameter flags (not used). | |
DWORD | dwMask |
Parameter mask (MinMax flag). | |
DWORD | dwNumOfPoints |
Number of points to add to curve. | |
DWORD | dwCurveNumber |
Curve Number. | |
int | nPositionX |
IV point position in picometer. | |
int | nPositionY |
IV point position in picometer. | |
LPSPMDEVICESPECIFICIVDATA | lpDevSpecIVData |
short * | wIVData |
ptr to IVcurve base address | |
int | nMinI |
Minimal Current. | |
int | nMaxI |
Maximal Current. | |
double | dDataScaleFactor |
Scale factor between 1 unit and 1 LSB. | |
int | nDataOffset |
Offset for ADC=0, use : Abs.Height = DataScale * (ADCValue + DataOffset). |