ISettings: scope settings. You can access information about instrument settings through ISettings. Settings for the math target,
as well as the input and output waveforms, are put into the dictionary. However, if the waveform is an intermediate, no setting
information is available. Examples of intermediates are:
■
MATH1=Add(Ch1*Ch2, Ch3): Ch1*Ch2 is an intermediate
■
MATH1=Add(Ch1, Ch2)*Ch3: The output of Add is an intermediate
To look up information in ISettings, you need to know the waveform name. For input or output waveforms, this is put into the
SourceName field. This is either Ch<n>, Math<n>, Ref<n> or Intermediate<n> if it is a channel, math, reference, or intermediate
waveform respectively. To find the name of the target math, look up MathTarget in ISettings (a string of the form Math<n> is
returned).
Once you have the waveform name, you can look up the following information:
■
Vertical scale (“VScale”)
■
Vertical offset (“VOffset”)
■
Vertical position (“VPosition”)
■
Vertical units (“VUnits”)
■
Horizontal scale (“HScale”)
■
Horizontal offset (“HOffset”)
■
Horizontal position (“HPosition”)
■
Horizontal units (“HUnits”)
Additionally, the following information about the target math is available:
■
LPCT
■
MPCT
■
HPCT
■
HYSTPCT
The recommended method for looking up information is to use the ISettings::GetNumber(string sourceName, string name, double
defaultValue) and ISettings::GetString(string sourceName, string name, double defaultValue) functions. For example, to get the
name of the target math:
string mathTarget = settings.GetString("", "mathTarget", "");
Or to get the vertical scale for an input:
double scale = settings.GetNumber((!string.IsNullOrEmpty(input1.SourceName) ?
input1.SourceName : ""), "vscale", double.NaN);
Note: Strings are not case sensitive, so VSCALE and vscale return the same information.
You can also use the array operators to look up information, but if the information is not in the dictionary you may end up with null
objects:
string mathTarget = settings["mathTarget"];
double scale = settings["ch1.vscale"];
This may be useful for debug purposes however.
IRange: gating information. Currently, the IRange parameter will always be null. It is in place to support future features.
Oscilloscope reference
DPO70000SX, MSO/DPO70000DX, MSO/DPO70000C, DPO7000C, and MSO/DPO5000B Series 711