Big changes

This commit is contained in:
Duc
2025-03-13 12:04:22 -07:00
parent c689fcb7f9
commit ffa9905494
748 changed files with 199255 additions and 3743 deletions

View File

@@ -0,0 +1,367 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Ivi.DCPwr</name>
</assembly>
<members>
<member name="T:Ivi.DCPwr.Errors">
<summary>
A strongly-typed resource class, for looking up localized strings, etc.
</summary>
</member>
<member name="P:Ivi.DCPwr.Errors.ResourceManager">
<summary>
Returns the cached ResourceManager instance used by this class.
</summary>
</member>
<member name="P:Ivi.DCPwr.Errors.Culture">
<summary>
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
</summary>
</member>
<member name="T:Ivi.DCPwr.IIviDCPwr">
<summary>
IviDCPwr class-compliant root interface
</summary>
</member>
<member name="P:Ivi.DCPwr.IIviDCPwr.Outputs">
<summary>
A reference to the IIviDCPwrOutputs interface
</summary>
</member>
<member name="P:Ivi.DCPwr.IIviDCPwr.Trigger">
<summary>
A reference to the IIviDCPwrTrigger interface
</summary>
</member>
<member name="T:Ivi.DCPwr.IIviDCPwrOutput">
<summary>
IviDCPwr class-compliant IIviDCPwrOutputs collection interface
</summary>
</member>
<member name="M:Ivi.DCPwr.IIviDCPwrOutput.ConfigureCurrentLimit(Ivi.DCPwr.CurrentLimitBehavior,System.Double)">
<summary>
Configures the output current limit value and the behavior of the power supply when the output current
is greater than or equal to that value.
</summary>
<param name="behavior">The behavior of the power supply when the output current is greater than or
equal to the value of the Limit parameter. Refer to the CurrentLimitBehavior property for details.</param>
<param name="limit">The power supply's output current limit. Refer to the CurrentLimit property for
details.</param>
</member>
<member name="M:Ivi.DCPwr.IIviDCPwrOutput.ConfigureRange(Ivi.DCPwr.RangeType,System.Double)">
<summary>
Configures the power supply's output range on an output. Setting a voltage range can invalidate a previously
configured current range. Setting a current range can invalidate a previously configured voltage range.
</summary>
<param name="rangeType">The kind of range to be configured, either Current or Voltage.</param>
<param name="range">The range in which the power supply operates. This value is coerced to the closest value
the instrument supports that is greater than or equal to the value specified.</param>
</member>
<member name="M:Ivi.DCPwr.IIviDCPwrOutput.ConfigureOvp(System.Boolean,System.Double)">
<summary>
Configures the over-voltage limit and the behavior of the power supply when the output voltage is greater
than or equal to the limit.
</summary>
<param name="enabled">The behavior of the power supply when the ouptut voltage is greater than or
equal to the value of the Limit parameter. When the Enabled parameter is False, the Limit parameter does
not affect the instrument's behavior, and the driver does not set the OVPLimit property. Refer to the
OVPEnabled property for details.</param>
<param name="limit">The power supply's over-voltage protection limit. Refer to the OVPLimit property.</param>
</member>
<member name="M:Ivi.DCPwr.IIviDCPwrOutput.Measure(Ivi.DCPwr.MeasurementType)">
<summary>
Takes a measurement on the output signal and returns the measured value.
</summary>
<param name="measurementType">The type of measurement to take, either Current or Volatge</param>
<returns>The measured value.</returns>
</member>
<member name="M:Ivi.DCPwr.IIviDCPwrOutput.QueryCurrentLimitMax(System.Double)">
<summary>
Returns the maximum programmable current limit that the power supply accepts for a particular voltage
level on an output.
</summary>
<param name="voltageLevel">The voltage level for which to determine the maximum programmable current limit.</param>
<returns>The maximum programmable current limit for the specified voltage level.</returns>
</member>
<member name="M:Ivi.DCPwr.IIviDCPwrOutput.QueryState(Ivi.DCPwr.OutputState)">
<summary>
Returns true if the power supply is in the state indicated by the outputState parameter.
</summary>
<param name="outputState">The output state for which to query.</param>
<returns>Returns true if the power supply is in the state indicated by the outputState parameter,
and False if it is not.</returns>
</member>
<member name="M:Ivi.DCPwr.IIviDCPwrOutput.QueryVoltageLevelMax(System.Double)">
<summary>
Returns the maximum programmable voltage level that the power supply accepts for a particular current limit
on an output.
</summary>
<param name="currentLimit">The current limit for which to determine the maximum programmable voltage level.</param>
<returns>Returns the maximum programmable voltage level for the specified current limit.</returns>
</member>
<member name="M:Ivi.DCPwr.IIviDCPwrOutput.ResetOutputProtection">
<summary>
Resets the power supply's output protection after an over-voltage or over-current condition occurs.
</summary>
</member>
<member name="P:Ivi.DCPwr.IIviDCPwrOutput.CurrentLimit">
<summary>
The output current limit, in Amps.
</summary>
</member>
<member name="P:Ivi.DCPwr.IIviDCPwrOutput.CurrentLimitBehavior">
<summary>
The behavior of the power supply when the output current is equal to or greater than the value of
the CurrentLimit property.
</summary>
</member>
<member name="P:Ivi.DCPwr.IIviDCPwrOutput.Enabled">
<summary>
If true, the signal the power supply produces appears at the output connector.
</summary>
</member>
<member name="P:Ivi.DCPwr.IIviDCPwrOutput.OvpLimit">
<summary>
The voltage the power supply allows, in Volts.
</summary>
</member>
<member name="P:Ivi.DCPwr.IIviDCPwrOutput.OvpEnabled">
<summary>
If True, the power supply disables the output when the output voltage is greater than or equal to the OVP limit.
</summary>
</member>
<member name="P:Ivi.DCPwr.IIviDCPwrOutput.TriggerSource">
<summary>
The trigger source.
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</summary>
</member>
<member name="P:Ivi.DCPwr.IIviDCPwrOutput.TriggeredCurrentLimit">
<summary>
The value to which the power supply sets the current limit after a trigger event occurs, in Amps.
</summary>
</member>
<member name="P:Ivi.DCPwr.IIviDCPwrOutput.TriggeredVoltageLevel">
<summary>
The value to which the power supply sets the voltage level after a trigger event occurs, in Volts.
</summary>
</member>
<member name="P:Ivi.DCPwr.IIviDCPwrOutput.VoltageLevel">
<summary>
The voltage level the DC power supply attempts to generate, in Volts.
</summary>
</member>
<member name="T:Ivi.DCPwr.IIviDCPwrOutputCollection">
<summary>
IviDCPwr class-compliant IIviDCPwrOutputs collection interface
</summary>
</member>
<member name="T:Ivi.DCPwr.IIviDCPwrTrigger">
<summary>
IviDCPwr class-compliant IIviDCPwrTrigger interface
</summary>
</member>
<member name="M:Ivi.DCPwr.IIviDCPwrTrigger.Abort">
<summary>
Returns the power supply to the ignore triggers state if the power supply is currently waiting for a
trigger to change the output signal. If the power supply is not waiting for a trigger, this method does
nothing.
</summary>
</member>
<member name="M:Ivi.DCPwr.IIviDCPwrTrigger.Initiate">
<summary>
Causes the power supply to wait for a trigger if the power supply is not currently waiting for a trigger.
If the power supply is already waiting for a trigger, this method does nothing
</summary>
</member>
<member name="M:Ivi.DCPwr.IIviDCPwrTrigger.SendSoftwareTrigger">
<summary>
Supplies a trigger signal when the IIviDCPwrOutput.TriggerSource property is set to a software trigger.
</summary>
</member>
<member name="T:Ivi.DCPwr.CurrentLimitBehavior">
<summary>
IviDCPwr class-compliant values for current limit behavior.
</summary>
</member>
<member name="F:Ivi.DCPwr.CurrentLimitBehavior.Regulate">
<summary>
Output voltage is restricted such that the output current is not greater than the value of the Current Limit property.
</summary>
</member>
<member name="F:Ivi.DCPwr.CurrentLimitBehavior.Trip">
<summary>
When the output current is equal to or greater than the value of the Current Limit property, the output is disabled.
</summary>
</member>
<member name="T:Ivi.DCPwr.IviDCPwr">
<summary>
The IviDCPwr class allows clients to create instances of drivers that implement the class-compliant
IviDCPwr interfaces, based on information in the IVI configuration store. This allows clients to
interchange IVI.NET class-compliant IviDCPwr drivers without modifying or rebuilding the client program
source code.
</summary>
</member>
<member name="M:Ivi.DCPwr.IviDCPwr.Create(System.String)">
<summary>
Create an instance of an IviDCPwr class-compliant driver and return an IIviDCPwr reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery and reset parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDCPwr driver to be created.</param>
<returns>
An IIviDCPwr interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
</member>
<member name="M:Ivi.DCPwr.IviDCPwr.Create(System.String,System.Boolean,System.Boolean)">
<summary>
Create an instance of an IviDCPwr class-compliant driver and return an IIviDCPwr reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery and reset parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDCPwr driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<returns>
An IIviDCPwr interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
</member>
<member name="M:Ivi.DCPwr.IviDCPwr.Create(System.String,System.Boolean,System.Boolean,System.String)">
<summary>
Create an instance of an IviDCPwr class-compliant driver and return an IIviDCPwr reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery, reset, and options parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDCPwr driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<param name="options">A comma-separated list of option assignments. An options assignment has the form
"OptionName=Value", where OptionName is one of: 'Cache', 'InterchangeCheck', 'QueryInstrStatus',
'RangeCheck', 'RecordCoercions', 'Simulate', or 'DriverSetup'. With the exception of DriverSetup, all
of the options accept values of 'true' or 'false'. 'DriverSetup' is a string, and must be last in the
list. The method assumes that everything following 'DriverSetup=' is part of the assignment. The
DriverSetup string is meaningful only to the specific driver being instantiated.
</param>
<returns>
An IIviDCPwr interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
<remarks>
Examples of legal values for the options parameter are:
<para>* ""</para>
<para>* "Simulate=true"</para>
<para>* "Simulate=true,Cache=false,QueryInstrStatus=false"</para>
<para>* "Simulate=true,Cache=false,DriverSetup=Trace=false"</para>
<para>Note that 'Simulate', 'Cache', and 'QueryInstrStatus' are standard IVI features, while
'Trace=false' is meaningful only to the specific driver being instantiated.</para>
</remarks>
</member>
<member name="M:Ivi.DCPwr.IviDCPwr.Create(System.String,System.Boolean,System.Boolean,Ivi.Driver.LockType,System.String,System.String)">
<summary>
Create an instance of an IviDCPwr class-compliant driver and return an IIviDCPwr reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery, reset, and options parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDCPwr driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<param name="lockType">Specifies whether to use .NET AppDomain-wide locking or machine-wide locking.</param>
<param name="accessKey">Specifies a user-selectable access key to identify the lock. Driver instances
that are created with the same accessKey will be protected from simultaneous access by multiple threads
within a process or across processes, depending upon the value of the lockType parameter. </param>
<param name="options">A comma-separated list of option assignments. An options assignment has the form
"OptionName=Value", where OptionName is one of: 'Cache', 'InterchangeCheck', 'QueryInstrStatus',
'RangeCheck', 'RecordCoercions', 'Simulate', or 'DriverSetup'. With the exception of DriverSetup, all
of the options accept values of 'true' or 'false'. 'DriverSetup' is a string, and must be last in the
list. The method assumes that everything following 'DriverSetup=' is part of the assignment. The
DriverSetup string is meaningful only to the specific driver being instantiated.
</param>
<returns>
An IIviDCPwr interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
<remarks>
Examples of legal values for the options parameter are:
<para>* ""</para>
<para>* "Simulate=true"</para>
<para>* "Simulate=true,Cache=false,QueryInstrStatus=false"</para>
<para>* "Simulate=true,Cache=false,DriverSetup=Trace=false"</para>
<para>Note that 'Simulate', 'Cache', and 'QueryInstrStatus' are standard IVI features, while
'Trace=false' is meaningful only to the specific driver being instantiated.</para>
</remarks>
</member>
<member name="T:Ivi.DCPwr.MeasurementType">
<summary>
IviDCPwr class-compliant values measurement type.
</summary>
</member>
<member name="F:Ivi.DCPwr.MeasurementType.Current">
<summary>
Current is measured.
</summary>
</member>
<member name="F:Ivi.DCPwr.MeasurementType.Voltage">
<summary>
Voltage is measured.
</summary>
</member>
<member name="T:Ivi.DCPwr.OutputState">
<summary>
IviDCPwr class-compliant values for output state.
</summary>
</member>
<member name="F:Ivi.DCPwr.OutputState.ConstantVoltage">
<summary>
A constant voltage condition.
</summary>
</member>
<member name="F:Ivi.DCPwr.OutputState.ConstantCurrent">
<summary>
A constant current condition.
</summary>
</member>
<member name="F:Ivi.DCPwr.OutputState.OverVoltage">
<summary>
An over-voltage condition.
</summary>
</member>
<member name="F:Ivi.DCPwr.OutputState.OverCurrent">
<summary>
An over-current condition.
</summary>
</member>
<member name="F:Ivi.DCPwr.OutputState.Unregulated">
<summary>
An unregulated condition.
</summary>
</member>
<member name="T:Ivi.DCPwr.RangeType">
<summary>
IviDCPwr class-compliant values for the range type.
</summary>
</member>
<member name="F:Ivi.DCPwr.RangeType.Current">
<summary>
Current range.
</summary>
</member>
<member name="F:Ivi.DCPwr.RangeType.Voltage">
<summary>
Voltage range.
</summary>
</member>
</members>
</doc>

View File

@@ -0,0 +1,606 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Ivi.Dmm</name>
</assembly>
<members>
<member name="T:Ivi.Dmm.Auto">
<summary>IVI Dmm values for automatic mode of operation.</summary>
</member>
<member name="F:Ivi.Dmm.Auto.Off">
<summary>
Specifies that the Dmm set automatic value selection off.
</summary>
</member>
<member name="F:Ivi.Dmm.Auto.On">
<summary>
Specifies that the Dmm set automatic value selection on.
</summary>
</member>
<member name="F:Ivi.Dmm.Auto.Once">
<summary>
Specifies that the Dmm automatically select the value once, and then set automatic value selection off.
</summary>
</member>
<member name="T:Ivi.Dmm.ApertureTimeUnits">
<summary>IVI DMM class-compliant values for aperture time units.</summary>
</member>
<member name="F:Ivi.Dmm.ApertureTimeUnits.Seconds">
<summary>Specifies seconds for aperture time units.</summary>
</member>
<member name="F:Ivi.Dmm.ApertureTimeUnits.PowerlineCycles">
<summary>Specifies powerline cycles for aperture time units.</summary>
</member>
<member name="T:Ivi.Dmm.Errors">
<summary>
A strongly-typed resource class, for looking up localized strings, etc.
</summary>
</member>
<member name="P:Ivi.Dmm.Errors.ResourceManager">
<summary>
Returns the cached ResourceManager instance used by this class.
</summary>
</member>
<member name="P:Ivi.Dmm.Errors.Culture">
<summary>
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
</summary>
</member>
<member name="T:Ivi.Dmm.IviDmm">
<summary>
The IviDmm class allows clients to create instances of drivers that implement the class-compliant
IviDmm interfaces, based on information in the IVI configuration store. This allows clients to
interchange IVI.NET class-compliant IviDmm drivers without modifying or rebuilding the client program
source code.
</summary>
</member>
<member name="M:Ivi.Dmm.IviDmm.Create(System.String)">
<summary>
Create an instance of an IviDmm class-compliant driver and return an IIviDmm reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery and reset parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDmm driver to be created.</param>
<returns>
An IIviDmm interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
</member>
<member name="M:Ivi.Dmm.IviDmm.Create(System.String,System.Boolean,System.Boolean)">
<summary>
Create an instance of an IviDmm class-compliant driver and return an IIviDmm reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery and reset parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDmm driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<returns>
An IIviDmm interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
</member>
<member name="M:Ivi.Dmm.IviDmm.Create(System.String,System.Boolean,System.Boolean,System.String)">
<summary>
Create an instance of an IviDmm class-compliant driver and return an IIviDmm reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery, reset, and options parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDmm driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<param name="options">A comma-separated list of option assignments. An options assignment has the form
"OptionName=Value", where OptionName is one of: 'Cache', 'InterchangeCheck', 'QueryInstrStatus',
'RangeCheck', 'RecordCoercions', 'Simulate', or 'DriverSetup'. With the exception of DriverSetup, all
of the options accept values of 'true' or 'false'. 'DriverSetup' is a string, and must be last in the
list. The method assumes that everything following 'DriverSetup=' is part of the assignment. The
DriverSetup string is meaningful only to the specific driver being instantiated.
</param>
<returns>
An IIviDmm interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
<remarks>
Examples of legal values for the options parameter are:
<para>* ""</para>
<para>* "Simulate=true"</para>
<para>* "Simulate=true,Cache=false,QueryInstrStatus=false"</para>
<para>* "Simulate=true,Cache=false,DriverSetup=Trace=false"</para>
<para>Note that 'Simulate', 'Cache', and 'QueryInstrStatus' are standard IVI features, while
'Trace=false' is meaningful only to the specific driver being instantiated.</para>
</remarks>
</member>
<member name="M:Ivi.Dmm.IviDmm.Create(System.String,System.Boolean,System.Boolean,Ivi.Driver.LockType,System.String,System.String)">
<summary>
Create an instance of an IviDmm class-compliant driver and return an IIviDmm reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery, reset, and options parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDmm driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<param name="lockType">Specifies whether to use .NET AppDomain-wide locking or machine-wide locking.</param>
<param name="accessKey">Specifies a user-selectable access key to identify the lock. Driver instances
that are created with the same accessKey will be protected from simultaneous access by multiple threads
within a process or across processes, depending upon the value of the lockType parameter. </param>
<param name="options">A comma-separated list of option assignments. An options assignment has the form
"OptionName=Value", where OptionName is one of: 'Cache', 'InterchangeCheck', 'QueryInstrStatus',
'RangeCheck', 'RecordCoercions', 'Simulate', or 'DriverSetup'. With the exception of DriverSetup, all
of the options accept values of 'true' or 'false'. 'DriverSetup' is a string, and must be last in the
list. The method assumes that everything following 'DriverSetup=' is part of the assignment. The
DriverSetup string is meaningful only to the specific driver being instantiated.
</param>
<returns>
An IIviDmm interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
<remarks>
Examples of legal values for the options parameter are:
<para>* ""</para>
<para>* "Simulate=true"</para>
<para>* "Simulate=true,Cache=false,QueryInstrStatus=false"</para>
<para>* "Simulate=true,Cache=false,DriverSetup=Trace=false"</para>
<para>Note that 'Simulate', 'Cache', and 'QueryInstrStatus' are standard IVI features, while
'Trace=false' is meaningful only to the specific driver being instantiated.</para>
</remarks>
</member>
<member name="T:Ivi.Dmm.MeasurementFunction">
<summary>IVI DMM class-compliant values for Function</summary>
</member>
<member name="F:Ivi.Dmm.MeasurementFunction.DCVolts">
<summary>Specifies that the Dmm measure DC voltage.</summary>
</member>
<member name="F:Ivi.Dmm.MeasurementFunction.ACVolts">
<summary>Specifies that the Dmm measure AC voltage.</summary>
</member>
<member name="F:Ivi.Dmm.MeasurementFunction.DCCurrent">
<summary>Specifies that the Dmm measure DC current.</summary>
</member>
<member name="F:Ivi.Dmm.MeasurementFunction.ACCurrent">
<summary>Specifies that the Dmm measure AC current.</summary>
</member>
<member name="F:Ivi.Dmm.MeasurementFunction.TwoWireResistance">
<summary>Specifies that the Dmm measure 2-wire resistance.</summary>
</member>
<member name="F:Ivi.Dmm.MeasurementFunction.FourWireResistance">
<summary>Specifies that the Dmm measure 4-wire resistance.</summary>
</member>
<member name="F:Ivi.Dmm.MeasurementFunction.ACPlusDCVolts">
<summary>Specifies that the Dmm measure AC plus DC voltage.</summary>
</member>
<member name="F:Ivi.Dmm.MeasurementFunction.ACPlusDCCurrent">
<summary>Specifies that the Dmm measure AC plus DC current.</summary>
</member>
<member name="F:Ivi.Dmm.MeasurementFunction.Frequency">
<summary>Specifies that the Dmm measure frequency.</summary>
</member>
<member name="F:Ivi.Dmm.MeasurementFunction.Period">
<summary>Specifies that the Dmm measure period.</summary>
</member>
<member name="F:Ivi.Dmm.MeasurementFunction.Temperature">
<summary>Specifies that the Dmm measure temperature.</summary>
</member>
<member name="T:Ivi.Dmm.IIviDmm">
<summary>IVI DMM class-compliant root interface</summary>
</member>
<member name="M:Ivi.Dmm.IIviDmm.Configure(Ivi.Dmm.MeasurementFunction,System.Double,System.Double)">
<summary>Configures the Function, Range, and Resolution properties.</summary>
<param name="measurementFunction">Specifies the MeasurementFunction property. The units for the Range and Resolution
parameters, and the measurement values that are returned are implied by the selected function. Measurement values
are returned by the Read, Read Multiple Point, Fetch, and Fetch Multiple Point methods.</param>
<param name="range">Specifies the Range property. It is coerced by the driver to the largest magnitude (positive or
negative) input value based on the rest of the instrument configuration. Negative values are permitted if valid for
the specified function (for instance DC Volts). Units are determined by Function. AutoRange is set to Auto.Off.</param>
<param name="resolution">Specifies the Resolution property. Units are determined by Function.</param>
</member>
<member name="M:Ivi.Dmm.IIviDmm.Configure(Ivi.Dmm.MeasurementFunction,Ivi.Dmm.Auto,System.Double)">
<summary>Configures the Function, AutoRange, and Resolution properties. If the value of the Auto Range parameter is
'On', then the Resolution parameter is ignored.</summary>
<param name="measurementFunction">Specifies the MeasurementFunction property. The units for the Range and Resolution
parameters, and the measurement values that are returned are implied by the selected function. Measurement values
are returned by the Read, Read Multiple Point, Fetch, and Fetch Multiple Point methods.</param>
<param name="autoRange">Specifies the AutoRange property. It indicates whether the range is set automatically by the instrument.
When autoRange is set to Off, the range selected is driver dependent. To control the resulting range, use the overload of
this function that includes the range.</param>
<param name="resolution">Specifies the Resolution property. Units are determined by Function.</param>
</member>
<member name="P:Ivi.Dmm.IIviDmm.MeasurementFunction">
<summary>The measurement function. This property determines the units for Range and Resolution and the values
returned by the Read, Read Multiple Point, Fetch, and Fetch Multiple Point methods.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmm.Range">
<summary>The measurement range, coerced by the driver to the largest magnitude (positive or
negative) input value based on the rest of the
instrument configuration. Negative values are permitted if valid for the current function (for instance DC Volts).
Setting this property sets AutoRange to Auto.Off. Units are determined by Function.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmm.AutoRange">
<summary>Indicates whether the range is set automatically by the instrument.When autoRange is set to Off, the range
selected is driver dependent. To control the resulting range, use the overload of this function that includes the range.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmm.Resolution">
<summary>The measurement resolution in absolute units. Units are determined by Function.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmm.AC">
<summary>Reference to the class-compliant IIviDmmAc interface</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmm.Advanced">
<summary>Reference to the class-compliant IIviDmmAdvanced interface</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmm.Frequency">
<summary>Reference to the class-compliant IIviDmmFrequency interface</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmm.Measurement">
<summary>Reference to the class-compliant IIviDmmMeasurement interface</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmm.Temperature">
<summary>Reference to the class-compliant IIviDmmTemperature interface</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmm.Trigger">
<summary>Reference to the class-compliant IIviDmmTrigger interface</summary>
</member>
<member name="T:Ivi.Dmm.IIviDmmAC">
<summary>IVI DMM class-compliant AC interface</summary>
</member>
<member name="M:Ivi.Dmm.IIviDmmAC.ConfigureBandwidth(System.Double,System.Double)">
<summary>Configures the FrequencyMax and FrequencyMin properties for DMMs that take AC voltage or AC current
measurements.</summary>
<param name="minFreq">Specifies the FrequencyMin property. It is the minimum frequency component of the input signal for AC measurements.</param>
<param name="maxFreq">Specifies the FrequencyMax property. It is the maximum frequency component of the input signal for AC measurements.</param>
</member>
<member name="P:Ivi.Dmm.IIviDmmAC.FrequencyMax">
<summary>The maximum frequency component of the input signal for AC measurements. The value of this property
affects instrument behavior only when the Function property is set to an AC voltage or AC current measurement.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmAC.FrequencyMin">
<summary>The minimum frequency component of the input signal for AC measurements. The value of this property
affects instrument behavior only when the Function property is set to an AC voltage or AC current measurement.</summary>
</member>
<member name="T:Ivi.Dmm.IIviDmmAdvanced">
<summary>IVI DMM class-compliant advanced features interface</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmAdvanced.ApertureTime">
<summary>The measurement aperture time (also known as integration time) based on the present configuration.
Units are specified by the property ApertureTimeUnits.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmAdvanced.ApertureTimeUnits">
<summary>Specifies whether the aperture time is express in seconds or powerline cycles.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmAdvanced.AutoZero">
<summary>The auto-zero mode. When the auto-zero mode is 'On', the DMM internally disconnects the input
signal and takes a Zero Reading. The DMM then subtracts the Zero Reading from the measurement. If AutoZero
is 'Once', it configures the DMM to take a Zero Reading immediately. The DMM then subtracts this Zero
Reading from all subsequent values it measures.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmAdvanced.PowerlineFrequency">
<summary>The power line frequency in Hertz. This property is used when ApertureTimeUnits is PowerlineCycles.</summary>
</member>
<member name="T:Ivi.Dmm.IIviDmmFrequency">
<summary>IVI DMM class-compliant frequency interface</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmFrequency.VoltageRange">
<summary>The expected maximum voltage level of the input signal for frequency and period measurements. Setting this
property sets Voltage Auto Range to Auto.Off. Units are Volts RMS.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmFrequency.VoltageAutoRange">
<summary>Indicates whether the frequency voltage range is set automatically by the instrument.</summary>
</member>
<member name="T:Ivi.Dmm.IIviDmmMeasurement">
<summary>IVI DMM class-compliant measurement interface</summary>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.Abort">
<summary>Aborts a previously initiated measurement and returns the DMM to the idle state.</summary>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.Fetch(Ivi.Driver.PrecisionTimeSpan)">
<summary>Returns the measured value from a measurement that the Initiate method initiates.</summary>
<param name="maximumTime">The maximum time allowed for the measurement to complete. If maxTime is PrecisionTimeSpan.Zero,
the measurement should only be returned if it is already available. If maxTime is PrecisionTimeSpan.MaxValue, the
measurement should wait until a measurement is available, with no timeout.</param>
<returns>The measured value. Out of range testing may be performed by using the IsOutOfRange,
IsOverRange, or IsUnderRange methods.</returns>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.FetchMultiPoint(Ivi.Driver.PrecisionTimeSpan)">
<summary>Returns an array of values from a measurement that the Initiate method initiates.</summary>
<param name="maximumTime">The maximum time allowed for the measurement to complete. If maxTime is PrecisionTimeSpan.Zero,
the measurement should only be returned if it is already available. If maxTime is PrecisionTimeSpan.MaxValue, the
measurement should wait until a measurement is available, with no timeout.</param>
<returns>An array of measured values. The size of the array is the product of the trigger count and the
sample count. Out of range testing may be performed by using the IsOutOfRange, IsOverRange, or IsUnderRange
methods.</returns>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.FetchMultiPoint(Ivi.Driver.PrecisionTimeSpan,System.Int32)">
<summary>Returns an array of values from a measurement that the Initiate method initiates.</summary>
<param name="maximumTime">The maximum time allowed for the measurement to complete. If maxTime is PrecisionTimeSpan.Zero,
the measurement should only be returned if it is already available. If maxTime is PrecisionTimeSpan.MaxValue, the
measurement should wait until a measurement is available, with no timeout.</param>
<param name="numberOfMeasurements">The number of measurements to return, starting with the first measurement
from the instrument.</param>
<returns>An array of measured values. The size of the array is the smaller of numberOfMeasurements or the
product of the trigger count and the sample count. Out of range testing may be performed by using the
IsOutOfRange, IsOverRange, or IsUnderRange methods.</returns>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.Initiate">
<summary>Initiates a measurement. When this method executes, the DMM leaves the idle state and waits for a
trigger.</summary>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.IsOutOfRange(System.Double)">
<summary>Takes a measurement value obtained from one of the Read or Fetch methods and determines if the
value is a valid measurement value or a value indicating that an out of range condition occurred. Out of
range conditions include both over range and under range conditions.</summary>
<param name="measurementValue">Pass the measurement value you obtain from one of the Read or Fetch functions.</param>
<returns>True if the value is out of range, otherwise false.</returns>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.IsOverRange(System.Double)">
<summary>Takes a measurement value obtained from one of the Read or Fetch methods and determines if the
value is a valid measurement value or a value indicating that an over range condition occurred.</summary>
<param name="measurementValue">Pass the measurement value you obtain from one of the Read or Fetch functions.</param>
<returns>True if the value is over range, otherwise false.</returns>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.IsUnderRange(System.Double)">
<summary>Takes a measurement value obtained from one of the Read or Fetch methods and determines if the
value is a valid measurement value or a value indicating that an under range condition occurred.</summary>
<param name="measurementValue">Pass the measurement value you obtain from one of the Read or Fetch functions.</param>
<returns>True if the value is under range, otherwise false.</returns>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.Read(Ivi.Driver.PrecisionTimeSpan)">
<summary>Initiates a measurement, waits for the DMM to return to the idle state, and returns the measured
value.</summary>
<param name="maximumTime">The maximum time allowed for the measurement to complete. If maxTime is PrecisionTimeSpan.MaxValue, the
measurement should wait until a measurement is available, with no timeout.</param>
<returns>The measured value. Out of range testing may be performed by using the IsOutOfRange, IsOverRange,
or IsUnderRange methods.</returns>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.ReadMultiPoint(Ivi.Driver.PrecisionTimeSpan)">
<summary>Initiates a measurement, waits for the DMM to return to the idle state, and returns an array of
values.</summary>
<param name="maximumTime">The maximum time allowed for the measurement to complete. If maxTime is PrecisionTimeSpan.MaxValue, the
measurement should wait until a measurement is available, with no timeout.</param>
<returns>An array of measured values. The size of the array is the product of the trigger count and the
sample count. Out of range testing may be performed by using the IsOutOfRange, IsOverRange, or IsUnderRange
methods.</returns>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.ReadMultiPoint(Ivi.Driver.PrecisionTimeSpan,System.Int32)">
<summary>Initiates a measurement, waits for the DMM to return to the idle state, and returns an array of
values.</summary>
<param name="maximumTime">The maximum time allowed for the measurement to complete. If maxTime is PrecisionTimeSpan.MaxValue, the
measurement should wait until a measurement is available, with no timeout.</param>
<param name="numberOfMeasurements">The number of measurements to return, starting with the first measurement
from the instrument.</param>
<returns>An array of measured values. The size of the array is the smaller of numberOfMeasurements or the
product of the trigger count and the sample count. Out of range testing may be performed by using the
IsOutOfRange, IsOverRange, or IsUnderRange methods.</returns>
</member>
<member name="M:Ivi.Dmm.IIviDmmMeasurement.SendSoftwareTrigger">
<summary>Sends a software trigger, which causes the DMM to take a measurement. The IIviDmmTrigger.Source property must accept
Software Trigger as a valid setting for this method to work. If the IIviDmmTrigger.Source is not set to Software Trigger,
this method does nothing and throws TriggerNotSoftwareException.</summary>
</member>
<member name="T:Ivi.Dmm.IIviDmmMultiPoint">
<summary>IVI DMM class-compliant multipoint interface</summary>
</member>
<member name="M:Ivi.Dmm.IIviDmmMultiPoint.Configure(System.Int32,System.Int32,System.String,Ivi.Driver.PrecisionTimeSpan)">
<summary>Configures multipoint TriggerCount, SampleCount, SampleTrigger and SampleInterval properties.</summary>
<param name="triggerCount">Specifies the TriggerCount property. It is the number of triggers the DMM accepts before it returns to the idle state.</param>
<param name="sampleCount">Specifies the SampleCount property. It is the number of measurements the DMM takes each time it receives a trigger.</param>
<param name="sampleTrigger">Specifies the SampleTrigger property. It is the sample trigger source. If the value of the Sample Count is greater than 1, the
DMM enters the Wait-For-Sample-Trigger state after taking a single measurement. When the event specified by this
parameter occurs, the DMM exits the Wait-For-Sample-Trigger state and takes the next measurement.</param>
<param name="sampleInterval">Specifies the SampleInterval property. It is the interval between samples in seconds.
Applies only when Sample Count is greater than 1 and Sample Trigger is Interval.</param>
</member>
<member name="P:Ivi.Dmm.IIviDmmMultiPoint.TriggerCount">
<summary>The number of triggers the DMM accepts before it returns to the idle state.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmMultiPoint.SampleCount">
<summary>The number of measurements the DMM takes each time it receives a trigger.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmMultiPoint.SampleInterval">
<summary>The interval between samples in seconds. Applies only when Sample Count is greater than 1 and Sample
Trigger is Interval.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmMultiPoint.SampleTrigger">
<summary>
The sample trigger source. If the value of the Sample Count is greater than 1, the DMM enters the
Wait-For-Sample-Trigger state after taking a single measurement. When a sample trigger occurs, the DMM takes the
next measurement.
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</summary>
</member>
<member name="T:Ivi.Dmm.IIviDmmRtd">
<summary>IVI DMM class-compliant RTD interface</summary>
</member>
<member name="M:Ivi.Dmm.IIviDmmRtd.Configure(System.Double,System.Double)">
<summary>Configures the Alpha and Resistance parameters for a resistance temperature device.</summary>
<param name="alpha">Specifies the Alpha property. It is the alpha parameter for a resistance temperature device (RTD).</param>
<param name="resistance">Specifies the Resistance property. It is the R0 parameter (resistance) for a resistance temperature device (RTD) also known as
the RTD reference value.</param>
</member>
<member name="P:Ivi.Dmm.IIviDmmRtd.Alpha">
<summary>The alpha parameter for a resistance temperature device (RTD). Applies only when the Temperature
Transducer Type is set to 2 Wire RTD or 4 Wire RTD.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmRtd.Resistance">
<summary>The R0 parameter (resistance) for a resistance temperature device (RTD). Also known as the RTD reference
value. Applies only when the Temperature Transducer Type is set to 2 Wire RTD or 4 Wire RTD.</summary>
</member>
<member name="T:Ivi.Dmm.IIviDmmTemperature">
<summary>IVI DMM class-compliant temperature interface</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmTemperature.TransducerType">
<summary>The type of device used to measure the temperature. This property affects instrument behavior only when
Function is set to a temperature measurement.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmTemperature.Rtd">
<summary>Reference to the class-compliant IIviDmmRtd interface</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmTemperature.Thermocouple">
<summary>Reference to the class-compliant IIviDmmThermocouple interface</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmTemperature.Thermistor">
<summary>Reference to the class-compliant IIviDmmThermistor interface</summary>
</member>
<member name="T:Ivi.Dmm.IIviDmmThermistor">
<summary>IVI DMM class-compliant thermistor interface</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmThermistor.Resistance">
<summary>The resistance of the thermistor in Ohms. Applies only when the IIviDmmTemperature.TransducerType property
is Thermistor.</summary>
</member>
<member name="T:Ivi.Dmm.IIviDmmThermocouple">
<summary>IVI DMM class-compliant thermocouple interface</summary>
</member>
<member name="M:Ivi.Dmm.IIviDmmThermocouple.Configure(Ivi.Dmm.ThermocoupleType,Ivi.Dmm.ReferenceJunctionType)">
<summary>Configures the thermocouple Type and ReferenceJunctionType properties of a thermocouple. Applies only when
the IIviDmmTemperature.TransducerType is Thermocouple.</summary>
<param name="type">Specifies the Type property. It is the type of thermocouple used to measure the temperature.</param>
<param name="referenceJunctionType">Specifies the ReferenceJunctionType property. It is the type of reference junction used in the reference junction compensation.</param>
</member>
<member name="P:Ivi.Dmm.IIviDmmThermocouple.FixedReferenceJunction">
<summary>The external reference junction temperature when a fixed reference junction thermocouple is used to
measure temperature, or the thermocouple junction temperature of an instrument without an internal temperature
sensor, in degrees Celsius.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmThermocouple.ReferenceJunctionType">
<summary>The type of reference junction to be used in the reference junction compensation of a thermocouple
measurement. Applies only when the Temperature Transducer Type is Thermocouple.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmThermocouple.Type">
<summary>The type of thermocouple used to measure the temperature. Applies only when the IIviDmmTemperature.TransducerType
is Thermocouple.</summary>
</member>
<member name="T:Ivi.Dmm.IIviDmmTrigger">
<summary>IVI DMM class-compliant trigger interface</summary>
</member>
<member name="M:Ivi.Dmm.IIviDmmTrigger.Configure(System.String,Ivi.Driver.PrecisionTimeSpan)">
<summary>Configures the trigger Source and Delay properties.</summary>
<param name="triggerSource">Specifies the Source property.</param>
<param name="triggerDelay">Specifies the Delay property. It is the interval between the time when the DMM receives the trigger and the time when
it takes a measurement. Positive values set the trigger delay. Negative values do not have a special meaning
but may be used to represent pre-trigger configurations. Auto Trigger Delay is set to Auto.Off.</param>
</member>
<member name="M:Ivi.Dmm.IIviDmmTrigger.Configure(System.String,System.Boolean)">
<summary>Configures the trigger Source and AutoDelay properties.</summary>
<param name="triggerSource">Specifies the Source property.</param>
<param name="autoTriggerDelay">Specifies the DelayAuto property. It indicates whether the range is set automatically by the instrument. If set to 'Off',
the driver Trigger Delay setting should stop at the current value selected by the algorithm.</param>
</member>
<member name="P:Ivi.Dmm.IIviDmmTrigger.Slope">
<summary>The interval between the time when the DMM receives the trigger and the time when it takes a
measurement. Positive values set the trigger delay in seconds. Negative values set auto delay mode.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmTrigger.Delay">
<summary>The interval between the time when the DMM receives the trigger and the time when it takes a
measurement. Positive values set the trigger delay. Negative values do not have a special meaning but may
be used to represent pre-trigger configurations. Setting this property sets AutoDelay to Auto.Off.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmTrigger.DelayAuto">
<summary>Indicates whether the trigger delay is set automatically by the instrument.</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmTrigger.Source">
<summary>
The trigger source.
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmTrigger.MeasurementCompleteDestination">
<summary>
The destination of the measurement-complete signal generated after each measurement.
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</summary>
</member>
<member name="P:Ivi.Dmm.IIviDmmTrigger.MultiPoint">
<summary>Reference to the class-compliant IIviDmmMultipoint interface</summary>
</member>
<member name="T:Ivi.Dmm.ReferenceJunctionType">
<summary>IVI DMM class-compliant values for thermocouple ReferenceJunctionType</summary>
</member>
<member name="F:Ivi.Dmm.ReferenceJunctionType.Fixed">
<summary>Specifies that the Dmm use a user-determined fixed value for the junction compensation.</summary>
</member>
<member name="F:Ivi.Dmm.ReferenceJunctionType.Internal">
<summary>Specifies that the Dmm use an internal sensor for the junction compensation.</summary>
</member>
<member name="T:Ivi.Dmm.ThermocoupleType">
<summary>IVI DMM class-compliant values for thermocouple Type</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.B">
<summary>Specifies that the Dmm measure temperature using a type B thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.C">
<summary>Specifies that the Dmm measure temperature using a type C thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.D">
<summary>Specifies that the Dmm measure temperature using a type D thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.E">
<summary>Specifies that the Dmm measure temperature using a type E thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.G">
<summary>Specifies that the Dmm measure temperature using a type G thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.J">
<summary>Specifies that the Dmm measure temperature using a type J thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.K">
<summary>Specifies that the Dmm measure temperature using a type K thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.N">
<summary>Specifies that the Dmm measure temperature using a type N thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.R">
<summary>Specifies that the Dmm measure temperature using a type R thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.S">
<summary>Specifies that the Dmm measure temperature using a type S thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.T">
<summary>Specifies that the Dmm measure temperature using a type T thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.U">
<summary>Specifies that the Dmm measure temperature using a type U thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.ThermocoupleType.V">
<summary>Specifies that the Dmm measure temperature using a type V thermocouple.</summary>
</member>
<member name="T:Ivi.Dmm.TransducerType">
<summary>IVI DMM class-compliant values for temperature TransducerType</summary>
</member>
<member name="F:Ivi.Dmm.TransducerType.Thermocouple">
<summary>Specifies that the Dmm measure temperature using a thermocouple.</summary>
</member>
<member name="F:Ivi.Dmm.TransducerType.Thermistor">
<summary>Specifies that the Dmm measure temperature using a thermistor.</summary>
</member>
<member name="F:Ivi.Dmm.TransducerType.TwoWireRtd">
<summary>Specifies that the Dmm measure temperature using a 2-wire resistive temperature device.</summary>
</member>
<member name="F:Ivi.Dmm.TransducerType.FourWireRtd">
<summary>Specifies that the Dmm measure temperature using a 4-wire resistive temperature device.</summary>
</member>
<member name="T:Ivi.Dmm.Slope">
<summary>IVI Driver values for Slope.</summary>
</member>
<member name="F:Ivi.Dmm.Slope.Positive">
<summary>
Specifies positive slope.
</summary>
</member>
<member name="F:Ivi.Dmm.Slope.Negative">
<summary>
Specifies negative slope.
</summary>
</member>
</members>
</doc>

View File

@@ -0,0 +1,865 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Ivi.Downconverter</name>
</assembly>
<members>
<member name="T:Ivi.Downconverter.Band">
<summary>
Matched arrays of band crossing start and stop frequencies.
</summary>
</member>
<member name="M:Ivi.Downconverter.Band.#ctor(System.Double,System.Double)">
<summary>
Constructs a band crossing start and stop frequency pair.
</summary>
<param name="startFrequency">The start frequency of the band. The units are Hertz. </param>
<param name="stopFrequency">The stop frequency of the band. The units are Hertz.</param>
</member>
<member name="P:Ivi.Downconverter.Band.StartFrequencies">
<summary>
The start frequency of the band.
</summary>
</member>
<member name="P:Ivi.Downconverter.Band.StopFrequency">
<summary>
The stop frequency of the band.
</summary>
</member>
<member name="T:Ivi.Downconverter.CalibratedStatus">
<summary>
Defined values indicating whether the instrument is currently in a valid self-calibrated state or whether it
needs to be calibrated.
</summary>
</member>
<member name="F:Ivi.Downconverter.CalibratedStatus.Calibrated">
<summary>
The downconverter is calibrated.
</summary>
</member>
<member name="F:Ivi.Downconverter.CalibratedStatus.Uncalibrated">
<summary>
The downconverter requires further calibration.
</summary>
</member>
<member name="F:Ivi.Downconverter.CalibratedStatus.Unknown">
<summary>
The downconverter cannot determine the status of the calibration.
</summary>
</member>
<member name="T:Ivi.Downconverter.CalibrationStatus">
<summary>
Defined values for the downconverter calibration status.
</summary>
</member>
<member name="F:Ivi.Downconverter.CalibrationStatus.Complete">
<summary>
The downconverter has completed the calibration.
</summary>
</member>
<member name="F:Ivi.Downconverter.CalibrationStatus.InProgress">
<summary>
The downconverter is still performing the calibration.
</summary>
</member>
<member name="F:Ivi.Downconverter.CalibrationStatus.Unknown">
<summary>
The downconverter cannot determine the status of the calibration.
</summary>
</member>
<member name="F:Ivi.Downconverter.CalibrationStatus.Failed">
<summary>
The downconverter calibration failed.
</summary>
</member>
<member name="T:Ivi.Downconverter.Errors">
<summary>
A strongly-typed resource class, for looking up localized strings, etc.
</summary>
</member>
<member name="P:Ivi.Downconverter.Errors.ResourceManager">
<summary>
Returns the cached ResourceManager instance used by this class.
</summary>
</member>
<member name="P:Ivi.Downconverter.Errors.Culture">
<summary>
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
</summary>
</member>
<member name="P:Ivi.Downconverter.Errors.FrequencyListUnknown">
<summary>
Looks up a localized string similar to The selected frequency list is not defined..
</summary>
</member>
<member name="P:Ivi.Downconverter.Errors.List">
<summary>
Looks up a localized string similar to List name: .
</summary>
</member>
<member name="T:Ivi.Downconverter.FrequencyListUnknownException">
<summary>
Frequency list is unknown.
</summary>
</member>
<member name="M:Ivi.Downconverter.FrequencyListUnknownException.#ctor(System.String,System.String)">
<summary>
Initializes a new instance of the class with a specified error message and frequency list name.
</summary>
<param name="message">The message that describes the error.</param>
<param name="list">The name of the unknown frequency list.</param>
</member>
<member name="M:Ivi.Downconverter.FrequencyListUnknownException.#ctor">
<summary>
Initializes a new instance of the class.
</summary>
</member>
<member name="M:Ivi.Downconverter.FrequencyListUnknownException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.Downconverter.FrequencyListUnknownException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified error message and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.Downconverter.FrequencyListUnknownException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.Downconverter.FrequencyListUnknownException.List">
<summary>
The name of the unknown frequency list.
</summary>
</member>
<member name="P:Ivi.Downconverter.FrequencyListUnknownException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.Downconverter.FrequencyStepScaling">
<summary>
Defined values for selecting the step size scaling for RF input frequency stepped sweeps.
</summary>
</member>
<member name="F:Ivi.Downconverter.FrequencyStepScaling.Linear">
<summary>
Indicates linear scaling for step sizes in stepped sweeps.
</summary>
</member>
<member name="F:Ivi.Downconverter.FrequencyStepScaling.Logarithmic">
<summary>
Indicates logarithmic scaling for step sizes in stepped sweeps.
</summary>
</member>
<member name="T:Ivi.Downconverter.FrequencySweepMode">
<summary>
Defined values for the RF input frequency sweep mode.
</summary>
</member>
<member name="F:Ivi.Downconverter.FrequencySweepMode.None">
<summary>
The RF input of the downconverter is a non-swept signal (continuous wave). Frequency settings from the base
capability group are used.
</summary>
</member>
<member name="F:Ivi.Downconverter.FrequencySweepMode.Sweep">
<summary>
The downconverter sweeps the RF input signal's frequency in analog form (non-stepped). Refer to the
IviDownconverterAnalogyFrequencySweep extension group.
</summary>
</member>
<member name="F:Ivi.Downconverter.FrequencySweepMode.Step">
<summary>
The downconverter sweeps the RF input signal's frequency in steps. Refer to the IviDownconverterFrequencyStep
extension group.
</summary>
</member>
<member name="F:Ivi.Downconverter.FrequencySweepMode.List">
<summary>
The downconverter uses a list to sweep the RF input signal frequency. Refer to the
IviDownconverterFrequencySweepList extension group.
</summary>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverter">
<summary>
IviDownconverter class-compliant root interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverter.Calibration">
<summary>
Reference to the class-compliant IIviDownconverterCalibration interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverter.ExternalLO">
<summary>
Reference to the class-compliant IIviDownconverterExternalLO interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverter.ExternalMixer">
<summary>
Reference to the class-compliant IIviDownconverterExternalMixer interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverter.IFOutput">
<summary>
Reference to the class-compliant IIviDownconverterIFOutput interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverter.ReferenceOscillator">
<summary>
Reference to the class-compliant IIviDownconverterReferenceOscillator interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverter.RFInput">
<summary>
Reference to the class-compliant IIviDownconverterRFInput interface.
</summary>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverterCalibration">
<summary>
IviDownconverter class-compliant Calibration interface.
</summary>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterCalibration.Calibrate">
<summary>
This method performs calibration on the entire device. This call can be blocking or non-blocking,
depending on the instrument implementation. If it is non-blocking, the user may use the GetCalibrationStatus
method to determine when the calibration is complete.
This method throws an exception if the instrument does not support programmatic calibration operations.
</summary>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterCalibration.GetCalibratedStatus">
<summary>
This method queries the instrument to determine the whether the instrument is currently in a valid
self-calibrated state or whether it needs to be calibrated. This method returns the Calibrated value in
the Status parameter when the device does not need further self-calibration.
</summary>
<returns>The calibrated status of the device.</returns>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterCalibration.GetCalibrationStatus">
<summary>
This method queries the instrument to determine the status of all calibration operations initiated by
the Calibrate method. This method returns the Calibration Complete value in the Status parameter only
when calibration is complete.
</summary>
<returns>The calibration status of the device.</returns>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverterExternalLO">
<summary>
IviDownconverter class-compliant external local oscillator interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterExternalLO.Enabled">
<summary>
True if the external LO is enabled, otherwise false.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterExternalLO.Frequency">
<summary>
Specifies the frequency of the external LO. The units are Hertz.
</summary>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverterExternalMixer">
<summary>
IviDownconverter class-compliant external mixer interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterExternalMixer.Bias">
<summary>
Reference to the class-compliant IIviDownconverterExternalMixerBias interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterExternalMixer.Enabled">
<summary>
True if the external mixer is enabled, otherwise false.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterExternalMixer.Harmonic">
<summary>
Specifies the harmonic number, that is, the order of the harmonic used for conversion.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterExternalMixer.NumberOfPorts">
<summary>
Specifies the number of ports.
</summary>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverterExternalMixerBias">
<summary>
IviDownconverter class-compliant external mixer bias interface.
</summary>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterExternalMixerBias.Configure(System.Double,System.Double)">
<summary>
This method configures the external mixer bias and the external mixer bias limit.
</summary>
<param name="bias">Specifies the bias current. The driver uses this value to set the External Mixer Bias
Level property.</param>
<param name="biasLimit">Specifies the bias current limit. The driver uses this value to set the External
Mixer Bias Limit property. See the property description for more details.</param>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterExternalMixerBias.Enabled">
<summary>
True if the external mixer's bias is enabled, otherwise false.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterExternalMixerBias.Level">
<summary>
Specifies the external mixer bias current. The units are Amps.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterExternalMixerBias.Limit">
<summary>
Specifies the external mixer bias current limit. The units are Amps.
</summary>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverterFrequencyStep">
<summary>
IviDownconverter class-compliant frequency step interface.
</summary>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterFrequencyStep.ConfigureDwell(System.Boolean,Ivi.Driver.PrecisionTimeSpan)">
<summary>
Configures the properties that control frequency stepping dwell.
</summary>
<param name="singleStepEnabled">Specifies whether the trigger initiates the next step. The driver uses this
value to set the Frequency Step Single Step Enabled property. </param>
<param name="dwell">Specifies the duration of one frequency step. The driver uses this value to set the
Frequency Step Dwell property. See the property description for more details.</param>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterFrequencyStep.ConfigureStartStop(System.Double,System.Double,Ivi.Downconverter.FrequencyStepScaling,System.Double)">
<summary>
Configures the properties that control the step frequencies of the downconverter's input frequency. These
properties are start and stop frequency, step size and lin/log scaling. If the stop frequency is less than
the start frequency, the frequency decreases during the sweep.
</summary>
<param name="start">Specifies the start frequency of the sweep. The driver uses this value to set the
Frequency Step Start property. See the property description for more details.</param>
<param name="stop">Specifies the stop frequency of the sweep. The driver uses this value to set the
Frequency Step Stop property. See the property description for more details.</param>
<param name="scaling">Specifies the scaling of the step sweep. The driver uses this value to set the
Frequency Step Scaling property. See the property description for more details.</param>
<param name="stepSize">Specifies the size of one step. The driver uses this value to set the Frequency
Step Size property. See the property description for more details.</param>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterFrequencyStep.Reset">
<summary>
Resets the current frequency step to the frequency step start value
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencyStep.Dwell">
<summary>
Specifies the duration of one step. The units are seconds. Dwell time starts immediately after a trigger
or the next step. No settling time is added. This property is ignored if the Frequency Step Single Step
Enabled property is set to True.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencyStep.Scaling">
<summary>
Specifies the spacing of the steps.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencyStep.SingleStepEnabled">
<summary>
True if single step mode is enabled, otherwise false.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencyStep.Size">
<summary>
Specifies the step size. The units are Hertz if the Frequency Step Scaling property is set to Linear. This
property is a unitless multiplier if the Frequency Step Scaling property is set to Logarithmic.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencyStep.Start">
<summary>
Specifies the start frequency of the stepped sweep. If the stop frequency is less than the start frequency,
the frequency decreases during the sweep. The units are Hertz.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencyStep.Stop">
<summary>
Specifies the stop frequency of the stepped sweep. If the stop frequency is less than the start frequency,
the frequency decreases during the sweep. The units are Hertz.
</summary>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverterFrequencySweep">
<summary>
IviDownconverter class-compliant frequency sweep interface.
</summary>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterFrequencySweep.Configure(Ivi.Downconverter.FrequencySweepMode,System.String)">
<summary>
Configures the whether the downconverter's RF input frequency is fixed, swept, or stepped.
</summary>
<param name="mode">Specifies the frequency sweep mode of the downconverter. That is, how the frequency is swept
when the device is triggerred. The driver uses this value to
set the Frequency Sweep Mode property. See the property description for more details.</param>
<param name="triggerSource">Specifies the source of the trigger to start an LO sweep. The driver uses this value
to set the Frequency Sweep Trigger Source property.
See the property description for more details.</param>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterFrequencySweep.GetBandInformation">
<summary>
This method returns the band crossing information for sweeps. Sweep timing is influenced by points in the
sweep where frequency bands are crossed. This method returns pairs of start/stop frequencies over which
the sweep timing is constant. Sweep timing between different pairs of start/stop frequencies is variable.
The bands are returned in ascending order of frequency.
</summary>
<returns>An array of start and stop frequency pairs over which the sweep timing is constant. The
frequencies are returned in ascending order. The units are Hertz.</returns>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterFrequencySweep.WaitUntilComplete(Ivi.Driver.PrecisionTimeSpan)">
<summary>
This method waits until the configured frequency sweep is complete. If no frequency sweep is currently running, this
method returns immediately. If the sweep does not complete within the time period the user specified with
the maxTime parameter, the method throws the Max Time Exceeded exception.
</summary>
<param name="maxTime">Specifies the maximum time this method will wait to complete. A value
of PrecisionTimeSpan.MaxValue indicates that the method is to wait indefinitely for the frequency sweep to
complete.</param>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweep.Analog">
<summary>
Reference to the class-compliant IIviDownconverterRFInputFrequencySweepNormal interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweep.IsSweeping">
<summary>
If true, the downconverter is currently sweeping the RF input signal.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweep.List">
<summary>
Reference to the class-compliant IIviDownconverterRFInputFrequencySweepList interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweep.Mode">
<summary>
The sweep mode of the RF input signal.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweep.NumberOfBands">
<summary>
The number of bands that will be returned from a call to the Get Band Crossing Info method. The count
returned here indicates the number of start-stop frequency pairs.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweep.Step">
<summary>
Reference to the class-compliant IIviDownconverterRFInputFrequencySweepStep interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweep.TriggerSource">
<summary>
The trigger used to start an LO sweep operation.
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</summary>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverterFrequencySweepAnalog">
<summary>
IviDownconverter class-compliant frequency sweep analog interface.
</summary>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterFrequencySweepAnalog.ConfigureStartStop(System.Double,System.Double)">
<summary>
Configures the start and stop frequency properties that control the frequency sweep of the RF input signal for analog sweep.
If the stop frequency is less than the start frequency, the frequency decreases during the sweep.
</summary>
<param name="start">Specifies the start frequency of the sweep. The driver uses this value to set the
Frequency Sweep Start property. See the property description for more details.</param>
<param name="stop">Specifies the stop frequency of the sweep. The driver uses this value to set the
Frequency Sweep Stop property. See the property description for more details.</param>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweepAnalog.Start">
<summary>
Specifies the start frequency of the LO sweep. If the stop frequency is less than the start frequency, the
frequency decreases during the sweep. The units are Hertz
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweepAnalog.Stop">
<summary>
Specifies the stop frequency of the LO sweep. If the stop frequency is less than the start frequency, the
frequency decreases during the sweep. The units are Hertz.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweepAnalog.Time">
<summary>
Specifies the duration of one LO sweep from start to stop frequency.
</summary>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverterFrequencySweepList">
<summary>
IviDownconverter class-compliant frequency sweep list interface.
</summary>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterFrequencySweepList.ClearAll">
<summary>
Deletes all lists from the pool of defined lists.
</summary>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterFrequencySweepList.ConfigureDwell(System.Boolean,Ivi.Driver.PrecisionTimeSpan)">
<summary>
Configures the properties that control frequency list stepping.
</summary>
<param name="singleStepEnabled">Specifies whether the trigger initiates the next step. The driver uses
this value to set the Frequency List Single Step Enabled property. See the property description for more
details.</param>
<param name="dwell">Specifies the duration of one frequency step. The driver uses this value to set the
Frequency List Dwell property. See the property description for more details.</param>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterFrequencySweepList.CreateList(System.String,System.Double[])">
<summary>
Creates a named list of frequency for a list sweep
</summary>
<param name="name">Specifies the name of the frequency list to be created.</param>
<param name="frequencyList">Specifies the array of frequency values to become elements of the list. The
units are Hertz.</param>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterFrequencySweepList.Reset">
<summary>
Resets the current list to the first entry value.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweepList.Dwell">
<summary>
Specifies the duration of one step. This property is ignored if the Frequency Sweep List Single Step
Enabled property is set to True.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweepList.SelectedName">
<summary>
Selects the list to be active using the name specified with CreateList
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterFrequencySweepList.SingleStepEnabled">
<summary>
Enables single step mode.
</summary>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverterIFOutput">
<summary>
IviDownconverter class-compliant IF output interface.
</summary>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterIFOutput.GetName(System.Int32)">
<summary>
Returns the physical repeated capability identifier defined by the specific driver for the IF Output that
corresponds to the zero-based index that the user specifies. Valid values for the Index parameter are
between zero and the value of the IF Output Count property minus one. If the user passes an invalid value
for the Index parameter, the method returns an empty string.
</summary>
<param name="index">An index to the IF Output repeated capability between zero and the value of the IF
Output Count property minus one</param>
<returns>A physical repeated capability identifier defined by the specific driver.</returns>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterIFOutput.WaitUntilSettled(Ivi.Driver.PrecisionTimeSpan)">
<summary>
Wait until all of the signals flowing through the downconverter have settled. If the signals did not settle
within the time period the user specified with the maxTime parameter, the method throws the Max Time
Exceeded exception.
</summary>
<param name="maxTime">The maximum time for this method to complete before throwing an exception. A value
of PrecisionTimeSpan.MaxValue indicates that the method is to wait indefinitely for the frequency sweep to
complete.</param>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterIFOutput.ActiveIFOutput">
<summary>
Specifies the IF output that is currently active. Subsequent calls to methods and properties that are based
on the IF Output repeated capability will be applied to the Active IF Output specified with this property.
The values for this property correspond to the allowed repeated capability names for the IF Output repeated
capability. Note that the Active IF Output property does not enable the specified output. This property
only controls the IF Output repeated capability instance to which other methods and properties apply. Use
the IF Output Enabled attribute to route the IF signal to a specific output.
[Use the Get IF Output Name method or refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterIFOutput.Count">
<summary>
Returns the number of IF Outputs available on the device.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterIFOutput.Enabled">
<summary>
True if the IF output is enabled, otherwise false. Only a single IF Output can be enabled at a time. Thus,
when this property is set to true for a particular IF output, all other IF outputs are disabled.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterIFOutput.FilterBandwidth">
<summary>
Returns the maximum effective IF signal bandwidth that the downconverter can present to the digitizer. The
units are Hertz. This value is a measure of the spectral width between two points for which the amplitude
profile is 3 dB below a peak close to mid band.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterIFOutput.Frequency">
<summary>
Returns the frequency of the IF output. The units are Hertz.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterIFOutput.Gain">
<summary>
Specifies the amount of gain (or attenuation) to apply to the IF output of the downconverter. The units are
dB. Positive values for this property represent signal gain while negative values represent attenuation.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterIFOutput.IsSettled">
<summary>
Indicates whether the downconverter has settled from changes to either the RF input signal or changes to
device control parameters, such as IF Output Gain, IF Frequency, or RF Attenuation. This property indicates
whether or not the IF output is valid for processing by another downstream system component, such as a
digitizer.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterIFOutput.VideoDetectorBandwidth">
<summary>
Specifies the bandwidth of the IF output video detection filter. The units are Hertz.
</summary>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverterReferenceOscillator">
<summary>
IviDownconverter class-compliant reference oscillator interface.
</summary>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterReferenceOscillator.Configure(System.String,System.Double)">
<summary>
Configures the downconverters reference oscillator.
</summary>
<param name="source">Specifies the source of the reference frequency signal. The driver uses this value to
set the Reference Oscillator Source property. See the property description for more details.</param>
<param name="frequency">Specifies the frequency of the external reference oscillator. This parameter is
only used if the Source is set to External. The driver uses this value to set the Reference Oscillator
Frequency property. See the property description for more details.</param>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterReferenceOscillator.ExternalFrequency">
<summary>
Specifies the frequency of the external signal that is used as reference for internal IF frequency
generation. This value is used only if Reference Oscillator Source is set to External. The units are Hertz.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterReferenceOscillator.OutputEnabled">
<summary>
If True, the Reference output is enabled. If False, the Reference output is disabled.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterReferenceOscillator.Source">
<summary>
Specifies the reference oscillator source used to generate the precise IF output frequency.
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</summary>
</member>
<member name="T:Ivi.Downconverter.IIviDownconverterRFInput">
<summary>
IviDownconverter class-compliant RF output interface.
</summary>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterRFInput.GetName(System.Int32)">
<summary>
Returns the physical repeated capability identifier defined by the specific driver for the RF Output that
corresponds to the zero-based index that the user specifies. Valid values for the Index parameter are
between zero and the value of the RF Output Count property minus one. If the user passes an invalid value
for the Index parameter, the method returns an empty string.
</summary>
<param name="index">An index to the RF Output repeated capability between zero and the value of the RF
Output Count property minus one</param>
<returns>A physical repeated capability identifier defined by the specific driver.</returns>
</member>
<member name="M:Ivi.Downconverter.IIviDownconverterRFInput.SendSoftwareTrigger">
<summary>
Refer to IVI-3.3: Standard Cross Class Capabilities, Section 2 Software Triggering Capability for the
prototype and complete description of this method.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterRFInput.ActiveRFInput">
<summary>
Specifies the RF input that is currently active. Subsequent calls to methods and properties that are based
on the RF Input repeated capability will be applied to the Active RF Input specified here. The values for
this property correspond to the allowed repeated capability names for the RF Input repeated capability.
[Use the Get RF Input Name method or refer to the instrument driver documentation for valid values, which
may include one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterRFInput.Attenuation">
<summary>
Specifies the amount of attenuation (or gain) to apply to the RF input of the downconverter. The units are
dB. Positive values for this property represent attenuation while negative values represent gain.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterRFInput.Bypass">
<summary>
Specifies whether or not the RF input signal bypasses the entire downconverter. When set to True, the RF
input signal is routed directly to the IF output indicated by the value of the Active IF Output property.
When set to False, the RF input signal is routed into the front end of the downconverter and follows the
normal signal path, as dictated by other downstream path control properties, such as Preselector Enabled
and Front End Bypass.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterRFInput.CorrectionsEnabled">
<summary>
If true, automatic global corrections on the device is enabled, otherwisw false.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterRFInput.Count">
<summary>
Returns the number of RF Inputs available on the device.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterRFInput.Coupling">
<summary>
Specifies the coupling applied to RF input.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterRFInput.Frequency">
<summary>
Specifies the frequency of the RF input. The units are Hertz.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterRFInput.FrequencySweep">
<summary>
Reference to the class-compliant IIviDownconverterRFInputFrequencySweep interface.
</summary>
</member>
<member name="P:Ivi.Downconverter.IIviDownconverterRFInput.PreselectorEnabled">
<summary>
Enables or disables bypassing the downconverter's pre-selection filter.
</summary>
</member>
<member name="T:Ivi.Downconverter.InputCoupling">
<summary>
Defined values for the type of RF input coupling.
</summary>
</member>
<member name="F:Ivi.Downconverter.InputCoupling.AC">
<summary>
The downconverter AC couples the RF input signal.
</summary>
</member>
<member name="F:Ivi.Downconverter.InputCoupling.DC">
<summary>
The downconverter DC couples the RF input signal.
</summary>
</member>
<member name="T:Ivi.Downconverter.IviDownconverter">
<summary>
The IviDownconverter class allows clients to create instances of drivers that implement the class-compliant
IviDownconverter interfaces, based on information in the IVI configuration store. This allows clients to
interchange IVI.NET class-compliant IviDownconverter drivers without modifying or rebuilding the client program
source code.
</summary>
</member>
<member name="M:Ivi.Downconverter.IviDownconverter.Create(System.String)">
<summary>
Create an instance of an IviDownconverter class-compliant driver and return an IIviDownconverter reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery and reset parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDownconverter driver to be created.</param>
<returns>
An IIviDownconverter interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
</member>
<member name="M:Ivi.Downconverter.IviDownconverter.Create(System.String,System.Boolean,System.Boolean)">
<summary>
Create an instance of an IviDownconverter class-compliant driver and return an IIviDownconverter reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery and reset parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDownconverter driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<returns>
An IIviDownconverter interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
</member>
<member name="M:Ivi.Downconverter.IviDownconverter.Create(System.String,System.Boolean,System.Boolean,System.String)">
<summary>
Create an instance of an IviDownconverter class-compliant driver and return an IIviDownconverter reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery, reset, and options parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDownconverter driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<param name="options">A comma-separated list of option assignments. An options assignment has the form
"OptionName=Value", where OptionName is one of: 'Cache', 'InterchangeCheck', 'QueryInstrStatus',
'RangeCheck', 'RecordCoercions', 'Simulate', or 'DriverSetup'. With the exception of DriverSetup, all
of the options accept values of 'true' or 'false'. 'DriverSetup' is a string, and must be last in the
list. The method assumes that everything following 'DriverSetup=' is part of the assignment. The
DriverSetup string is meaningful only to the specific driver being instantiated.
</param>
<returns>
An IIviDownconverter interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
<remarks>
Examples of legal values for the options parameter are:
<para>* ""</para>
<para>* "Simulate=true"</para>
<para>* "Simulate=true,Cache=false,QueryInstrStatus=false"</para>
<para>* "Simulate=true,Cache=false,DriverSetup=Trace=false"</para>
<para>Note that 'Simulate', 'Cache', and 'QueryInstrStatus' are standard IVI features, while
'Trace=false' is meaningful only to the specific driver being instantiated.</para>
</remarks>
</member>
<member name="M:Ivi.Downconverter.IviDownconverter.Create(System.String,System.Boolean,System.Boolean,Ivi.Driver.LockType,System.String,System.String)">
<summary>
Create an instance of an IviDownconverter class-compliant driver and return an IIviDownconverter reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery, reset, and options parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviDownconverter driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<param name="lockType">Specifies whether to use .NET AppDomain-wide locking or machine-wide locking.</param>
<param name="accessKey">Specifies a user-selectable access key to identify the lock. Driver instances
that are created with the same accessKey will be protected from simultaneous access by multiple threads
within a process or across processes, depending upon the value of the lockType parameter. </param>
<param name="options">A comma-separated list of option assignments. An options assignment has the form
"OptionName=Value", where OptionName is one of: 'Cache', 'InterchangeCheck', 'QueryInstrStatus',
'RangeCheck', 'RecordCoercions', 'Simulate', or 'DriverSetup'. With the exception of DriverSetup, all
of the options accept values of 'true' or 'false'. 'DriverSetup' is a string, and must be last in the
list. The method assumes that everything following 'DriverSetup=' is part of the assignment. The
DriverSetup string is meaningful only to the specific driver being instantiated.
</param>
<returns>
An IIviDownconverter interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
<remarks>
Examples of legal values for the options parameter are:
<para>* ""</para>
<para>* "Simulate=true"</para>
<para>* "Simulate=true,Cache=false,QueryInstrStatus=false"</para>
<para>* "Simulate=true,Cache=false,DriverSetup=Trace=false"</para>
<para>Note that 'Simulate', 'Cache', and 'QueryInstrStatus' are standard IVI features, while
'Trace=false' is meaningful only to the specific driver being instantiated.</para>
</remarks>
</member>
</members>
</doc>

View File

@@ -0,0 +1,968 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Ivi.LxiSync</name>
</assembly>
<members>
<member name="T:Ivi.LxiSync.Errors">
<summary>
A strongly-typed resource class, for looking up localized strings, etc.
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.ResourceManager">
<summary>
Returns the cached ResourceManager instance used by this class.
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.Culture">
<summary>
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.AlarmDoesNotExist">
<summary>
Looks up a localized string similar to The specified alarm has not been defined..
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.AlarmExists">
<summary>
Looks up a localized string similar to The specified alarm already exists..
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.AlarmName">
<summary>
Looks up a localized string similar to Alarm name: .
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.AlarmTime">
<summary>
Looks up a localized string similar to Alarm time: .
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.AlarmTimeInvalid">
<summary>
Looks up a localized string similar to The alarm time is invalid..
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.CannotRemoveReservedRepeatedCapability">
<summary>
Looks up a localized string similar to The reserved repeated capability cannot be removed from the collection..
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.EventSourceDoesNotExist">
<summary>
Looks up a localized string similar to The specified event source has not been defined..
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.EventSourceExists">
<summary>
Looks up a localized string similar to The specified event source already exists..
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.EventSourceName">
<summary>
Looks up a localized string similar to Event source name: .
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.EventSourceNotSet">
<summary>
Looks up a localized string similar to The event source has not been specified..
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.InvalidEventSource">
<summary>
Looks up a localized string similar to The specified event source is not valid..
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.OutOfEventResources">
<summary>
Looks up a localized string similar to Out of event resources..
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.RepeatedCapability">
<summary>
Looks up a localized string similar to Repeated capability: .
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.RepeatedCapabilityInstance">
<summary>
Looks up a localized string similar to Repeated capability instance: .
</summary>
</member>
<member name="P:Ivi.LxiSync.Errors.WiredOrModeInvalid">
<summary>
Looks up a localized string similar to The event source cannot operate in driven mode while serving as the wired-OR bias..
</summary>
</member>
<member name="T:Ivi.LxiSync.AlarmDoesNotExistException">
<summary>
A specified alarm has not been defined.
</summary>
</member>
<member name="M:Ivi.LxiSync.AlarmDoesNotExistException.#ctor(System.String,System.String)">
<summary>
Initializes a new instance of the class with a specified error message and alarm name.
</summary>
<param name="message">The message that describes the error.</param>
<param name="alarmName">The alarm name.</param>
</member>
<member name="M:Ivi.LxiSync.AlarmDoesNotExistException.#ctor">
<summary>
Initializes a new instance of the class.
</summary>
</member>
<member name="M:Ivi.LxiSync.AlarmDoesNotExistException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.LxiSync.AlarmDoesNotExistException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified error message and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.LxiSync.AlarmDoesNotExistException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.LxiSync.AlarmDoesNotExistException.AlarmName">
<summary>
The alarm name.
</summary>
</member>
<member name="P:Ivi.LxiSync.AlarmDoesNotExistException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.LxiSync.AlarmExistsException">
<summary>
A specified alarm already exists.
</summary>
</member>
<member name="M:Ivi.LxiSync.AlarmExistsException.#ctor(System.String,System.String)">
<summary>
Initializes a new instance of the class with a specified error message and alarm name.
</summary>
<param name="message">The message that describes the error.</param>
<param name="alarmName">The alarm name.</param>
</member>
<member name="M:Ivi.LxiSync.AlarmExistsException.#ctor">
<summary>
Initializes a new instance of the class.
</summary>
</member>
<member name="M:Ivi.LxiSync.AlarmExistsException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.LxiSync.AlarmExistsException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified error message and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.LxiSync.AlarmExistsException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.LxiSync.AlarmExistsException.AlarmName">
<summary>
The alarm name.
</summary>
</member>
<member name="P:Ivi.LxiSync.AlarmExistsException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.LxiSync.AlarmTimeInvalidException">
<summary>
An alarm time is invalid.
</summary>
</member>
<member name="M:Ivi.LxiSync.AlarmTimeInvalidException.#ctor(System.String,System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="alarmName">The alarm name.</param>
<param name="alarmTime">The specified (invalid) time.</param>
</member>
<member name="M:Ivi.LxiSync.AlarmTimeInvalidException.#ctor">
<summary>
Initializes a new instance of the class.
</summary>
</member>
<member name="M:Ivi.LxiSync.AlarmTimeInvalidException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.LxiSync.AlarmTimeInvalidException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified error message and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.LxiSync.AlarmTimeInvalidException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.LxiSync.AlarmTimeInvalidException.AlarmName">
<summary>
The alarm name.
</summary>
</member>
<member name="P:Ivi.LxiSync.AlarmTimeInvalidException.AlarmTime">
<summary>
The specified (invalid) time.
</summary>
</member>
<member name="P:Ivi.LxiSync.AlarmTimeInvalidException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.LxiSync.ArmSourceDetection">
<summary>Defined values for the style of arm source detection.</summary>
</member>
<member name="F:Ivi.LxiSync.ArmSourceDetection.Rise">
<summary>The LXI device will arm on the rising edge of the arm source.</summary>
</member>
<member name="F:Ivi.LxiSync.ArmSourceDetection.Fall">
<summary>The LXI device will arm on the falling edge of the arm source.</summary>
</member>
<member name="F:Ivi.LxiSync.ArmSourceDetection.High">
<summary>The LXI device will arm while the arm source is high, that is, while it remains true.</summary>
</member>
<member name="F:Ivi.LxiSync.ArmSourceDetection.Low">
<summary>The LXI device will arm while the arm source is low, that is, while it remains false.</summary>
</member>
<member name="T:Ivi.LxiSync.CannotRemoveReservedRepeatedCapabilityException">
<summary>
A reserved repeated capability cannot be removed from one of the IviLxiSync collections.
</summary>
</member>
<member name="M:Ivi.LxiSync.CannotRemoveReservedRepeatedCapabilityException.#ctor(System.String,System.String)">
<summary>
Initializes a new instance of the class with a specified repeated capability and repeated capability
instance.
</summary>
<param name="repeatedCapability">The name of the repeated capability.</param>
<param name="repeatedCapabilityInstance">The repeated capability instance that is reserved.</param>
</member>
<member name="M:Ivi.LxiSync.CannotRemoveReservedRepeatedCapabilityException.#ctor">
<summary>
Initializes a new instance of the class.
</summary>
</member>
<member name="M:Ivi.LxiSync.CannotRemoveReservedRepeatedCapabilityException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.LxiSync.CannotRemoveReservedRepeatedCapabilityException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified error message and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.LxiSync.CannotRemoveReservedRepeatedCapabilityException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.LxiSync.CannotRemoveReservedRepeatedCapabilityException.RepeatedCapability">
<summary>
The name of the repeated capability..
</summary>
</member>
<member name="P:Ivi.LxiSync.CannotRemoveReservedRepeatedCapabilityException.RepeatedCapabilityInstance">
<summary>
The repeated capability instance that is reserved.
</summary>
</member>
<member name="P:Ivi.LxiSync.CannotRemoveReservedRepeatedCapabilityException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.LxiSync.EventDriveMode">
<summary>Event driver mode.</summary>
</member>
<member name="F:Ivi.LxiSync.EventDriveMode.Driven">
<summary>Events are enabled in driven mode.</summary>
</member>
<member name="F:Ivi.LxiSync.EventDriveMode.Off">
<summary>Events are not enabled in any mode.</summary>
</member>
<member name="F:Ivi.LxiSync.EventDriveMode.WiredOr">
<summary>Events are enabled in wired-OR mode.</summary>
</member>
<member name="T:Ivi.LxiSync.EventSourceDoesNotExistException">
<summary>
A specified event source is not defined.
</summary>
</member>
<member name="M:Ivi.LxiSync.EventSourceDoesNotExistException.#ctor(System.String,System.String)">
<summary>
Initializes a new instance of the class with a specified error message and event source name.
</summary>
<param name="message">The message that describes the error.</param>
<param name="eventSourceName">The name of the event source.</param>
</member>
<member name="M:Ivi.LxiSync.EventSourceDoesNotExistException.#ctor">
<summary>
Initializes a new instance of the class.
</summary>
</member>
<member name="M:Ivi.LxiSync.EventSourceDoesNotExistException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.LxiSync.EventSourceDoesNotExistException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified error message and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.LxiSync.EventSourceDoesNotExistException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.LxiSync.EventSourceDoesNotExistException.EventSourceName">
<summary>
The name of the event source.
</summary>
</member>
<member name="P:Ivi.LxiSync.EventSourceDoesNotExistException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.LxiSync.EventSourceExistsException">
<summary>
A specified event source already exists.
</summary>
</member>
<member name="M:Ivi.LxiSync.EventSourceExistsException.#ctor(System.String,System.String)">
<summary>
Initializes a new instance of the class with a specified error message and event source name.
</summary>
<param name="message">The message that describes the error.</param>
<param name="eventSourceName">The name of the event source.</param>
</member>
<member name="M:Ivi.LxiSync.EventSourceExistsException.#ctor">
<summary>
Initializes a new instance of the class.
</summary>
</member>
<member name="M:Ivi.LxiSync.EventSourceExistsException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.LxiSync.EventSourceExistsException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified error message and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.LxiSync.EventSourceExistsException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.LxiSync.EventSourceExistsException.EventSourceName">
<summary>
The name of the event source.
</summary>
</member>
<member name="P:Ivi.LxiSync.EventSourceExistsException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.LxiSync.EventSourceNotSetException">
<summary>
The event source has not been specified.
</summary>
</member>
<member name="M:Ivi.LxiSync.EventSourceNotSetException.#ctor">
<summary>
Initializes a new instance of the class.
</summary>
</member>
<member name="M:Ivi.LxiSync.EventSourceNotSetException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.LxiSync.EventSourceNotSetException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified error message and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.LxiSync.EventSourceNotSetException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.LxiSync.EventSourceNotSetException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSync">
<summary>LxiSync root interface.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSync.Arm">
<summary>Reference to the ILxiSyncArm interface.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSync.EventLog">
<summary>Reference to the ILxiSyncEventLog interface.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSync.Events">
<summary>Reference to the ILxiSyncEvents interface.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSync.Time">
<summary>Reference to the ILxiSyncTime interface.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSync.Trigger">
<summary>Reference to the ILxiSyncTrigger interface.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncArm">
<summary>LxiSync arm interface.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArm.Sources">
<summary>Reference to the ILxiSyncArmSources interface.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArm.ArmCount">
<summary>Specifies the number of times the arm has to occur to complete the arm loop; that is, the number of arms
that are accepted before the measurement must be initiated again.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArm.Delay">
<summary>Specifies the delay from when the arm logic satisfied until the waiting for trigger state is entered.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArm.Alarms">
<summary>Reference to the ILxiSyncArmAlarms interface.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncArmAlarm">
<summary>LxiSync arm alarm interface.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncArmAlarm.Configure(System.Boolean,Ivi.Driver.PrecisionDateTime,Ivi.Driver.PrecisionTimeSpan,System.Int32)">
<summary>Configures the most commonly configured properties of the arm alarm sub-system.</summary>
<param name="enabled">If true, the arm alarm is enabled. Refer to the Enabled property.</param>
<param name="time">Specifies the 1588 time. </param>
<param name="period">The period of the arm alarm. Refer to the Period property for details.</param>
<param name="repeatCount">The number of times to repeat the trigger. Refer to the RepeatCount property
for details.</param>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArmAlarm.Time">
<summary>The 1588 time at which the alarm will go off.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArmAlarm.Period">
<summary>The period of the arm alarm; that is, the amount of time that transpires before the alarm
repeats.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArmAlarm.RepeatCount">
<summary>The number of times to repeat the trigger at the period specified by the Period
property.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArmAlarm.Enabled">
<summary>If true, the arm alarm is enabled.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncArmAlarmCollection">
<summary>LxiSync repeated capability interface containing methods and properties that apply to all arm alarms
defined for the device. A particular arm alarm can be accessed using the Item property.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncArmAlarmCollection.DisableAll">
<summary>Disables all arm alarms.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncArmAlarmCollection.Add(System.String)">
<summary>Creates a new arm alarm</summary>
<param name="alarmName">
The name of the arm alarm to create.
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</param>
<returns>A reference to the new arm alarm object.</returns>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncArmAlarmCollection.Remove(System.String)">
<summary>Removes an arm alarm.</summary>
<param name="alarmName">Specifies the name of the arm alarm to remove.</param>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncArmAlarmCollection.RemoveAllCustomArmAlarms">
<summary>Removes all of the custom arm alarms that were added using the Add method.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncArmSource">
<summary>LxiSync arm source interface.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncArmSource.Configure(System.Boolean,Ivi.LxiSync.ArmSourceDetection)">
<summary>Configures the most commonly configured properties of the arm source sub-system.</summary>
<param name="enabled">Enables or disables the arm source. Refer to the Enabled property.</param>
<param name="detection">The style of arm source detection. Refer to the Detection property.</param>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArmSource.Enabled">
<summary>If true, the arm source is enabled.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArmSource.Detection">
<summary>The style of arm source detection.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArmSource.Filter">
<summary>A filter for restricting arm sources.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArmSource.EventId">
<summary>The LAN event identifier that is associated with this arm source. LAN Events with this
identifier are accepted from the source described in the filter.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncArmSourceCollection">
<summary>LxiSync repeated capability interface containing methods and properties that apply to all arm sources
defined for the device. A particular arm source can be accessed using the Item property.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncArmSourceCollection.Add(System.String)">
<summary>Creates a new arm source.</summary>
<param name="sourceName">
The name of the arm source to create.
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</param>
<returns>A reference to the new arm source object.</returns>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncArmSourceCollection.Remove(System.String)">
<summary>Removes an arm source.</summary>
<param name="sourceName">The name of the arm source to remove.</param>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncArmSourceCollection.DisableAll">
<summary>Disables all arm sources.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncArmSourceCollection.RemoveAllCustomArmSources">
<summary>Removes all of the custom arm sources that were added using the Add method.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncArmSourceCollection.OrEnabled">
<summary>If true, OR-summing of the arm sources is enabled.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncEvent">
<summary>LxiSync event interface.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncEvent.Configure(Ivi.LxiSync.EventDriveMode,System.String,System.String,Ivi.LxiSync.Slope)">
<summary>Configures the most commonly configured properties of the event sub-system.</summary>
<param name="driveMode">The event mode. Refer to the DriveMode property for details.</param>
<param name="source">The signal which causes an event to be transmitted. Refer to the Source property.</param>
<param name="destinationPath">The list of places to send the event. Refer to the DestinationPath property.</param>
<param name="slope">The slope of the event signal. Refer to the Slope property for details.</param>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncEvent.Source">
<summary>The signal which causes an event to be transmitted.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncEvent.DestinationPath">
<summary>The list of places to send the event.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncEvent.Slope">
<summary>The slope of the inbound event that will cause the generation of an outbound event.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncEvent.DriveMode">
<summary>The event mode - that is, how the event is transmitted.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncEventLog">
<summary>LxiSync event log interface.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncEventLog.Clear">
<summary>Removes all existing entries from the event log.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncEventLog.GetNextEntry">
<summary>Retrieves and clears the oldest event log entry for the IVI session. </summary>
<returns />
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncEventLog.EntryCount">
<summary>Returns the number of event log entries available.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncEventLog.Enabled">
<summary>if true, the event logging feature is enabled.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncEventCollection">
<summary>LxiSync repeated capability interface containing methods and properties that apply to all events defined
for the device. A particular event can be accessed using the Item property.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncEventCollection.DisableAll">
<summary>Disables all events.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncEventCollection.Add(System.String)">
<summary>Creates a new event.</summary>
<param name="eventName">The name of the event to create.</param>
<returns>A reference to the new event object.</returns>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncEventCollection.Remove(System.String)">
<summary>Removes an event.</summary>
<param name="eventName">The name of the event to remove.</param>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncEventCollection.RemoveAllCustomEvents">
<summary>Removes all of the custom events that were added using the Add function.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncEventCollection.WiredOrBiasMode">
<summary>The Wired-Or Bias Mode interface lines for which the LXI device will serve as the wired-OR bias. </summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncTime">
<summary>LxiSync time interface.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTime.SystemTime">
<summary>The current 1588 time.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTime.IsMaster">
<summary>Indicates if this device is the 1588 master.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTime.IsSynchronized">
<summary>Indicates if the device is synchronized.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncTrigger">
<summary>LxiSync trigger interface.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTrigger.Sources">
<summary>Reference to the ILxiSyncTriggerSources interface.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTrigger.TriggerCount">
<summary>Specifies the number of times a trigger has to occur to complete a measurement; that is, the number of
triggers that are accepted before the measurement must be armed again.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTrigger.Alarms">
<summary>Reference to the ILxiSyncTriggerAlarms interface.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTrigger.TriggerSource">
<summary>
Specifies which of the available trigger sources to use as the signal for triggering the device-specific
operation (for example, a measurement).
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncTriggerAlarm">
<summary>LxiSync trigger alarm interface.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncTriggerAlarm.Configure(Ivi.Driver.PrecisionDateTime,Ivi.Driver.PrecisionTimeSpan,System.Int32)">
<summary>Configures the most commonly configured properties of the trigger alarm sub-system.</summary>
<param name="time">The 1588 time of the trigger alarm. Refer to the Time parameter for details.</param>
<param name="period">The period of the trigger alarm. Refer to the Period parameter for details.</param>
<param name="repeatCount">The number of times to repeat the trigger at the period specified by the
period parameter. Refer to the RepeatCount property.</param>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTriggerAlarm.Period">
<summary>The period of the trigger alarm; that is, the amount of time that transpires before the alarm
repeats.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTriggerAlarm.RepeatCount">
<summary>The number of times to repeat the trigger at the period specified by the Period property.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTriggerAlarm.Time">
<summary>The time at which the alarm will go off.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTriggerAlarm.Enabled">
<summary>If true, the trigger alarm is enabled.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncTriggerAlarmCollection">
<summary>LxiSync repeated capability interface containing methods and properties that apply to all trigger alarms
defined for the device. A particular trigger alarm can be accessed using the Item property.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncTriggerAlarmCollection.Add(System.String)">
<summary>This function creates a new trigger alarm</summary>
<param name="alarmName">
Specifies the name of the trigger alarm to create.
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</param>
<returns>A reference to the new trigger alarm object.</returns>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncTriggerAlarmCollection.DisableAll">
<summary>This function disables all trigger alarms.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncTriggerAlarmCollection.Remove(System.String)">
<summary>This function removes a trigger alarm.</summary>
<param name="alarmName">Specifies the name of the trigger alarm to remove.</param>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncTriggerAlarmCollection.RemoveAllTriggerAlarms">
<summary>This function removes all of the trigger alarms that were added using the Add Trigger Alarm function.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncTriggerSource">
<summary>LxiSync trigger source interface.</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncTriggerSource.Configure(Ivi.Driver.PrecisionTimeSpan,Ivi.LxiSync.Slope)">
<summary>Configures the most commonly configured properties of the trigger source sub-system.</summary>
<param name="delay">The trigger source delay. Refer to the Delay property for details.</param>
<param name="detection">The slope of the trigger source. Refer to the Detection property.</param>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTriggerSource.Delay">
<summary>The trigger source delay from when the trigger logic is satisfied until the device specific
action (for instance a measurement) is triggered. A negative value implies pre-trigger acquisition.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTriggerSource.Detection">
<summary>The slope of the trigger source.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTriggerSource.EventId">
<summary>The LAN event identifier that is associated with this trigger source.</summary>
</member>
<member name="P:Ivi.LxiSync.IIviLxiSyncTriggerSource.Filter">
<summary>The filter for restricting trigger sources.</summary>
</member>
<member name="T:Ivi.LxiSync.IIviLxiSyncTriggerSourceCollection">
<summary>
LxiSync repeated capability interface containing methods and properties that apply to all trigger sources
defined for the device. A particular trigger source can be accessed using the Item property.
</summary>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncTriggerSourceCollection.Add(System.String)">
<summary>
This function creates a new trigger source.
</summary>
<param name="sourceName">
Specifies the name of the trigger source to create.
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</param>
<returns>A reference to the new trigger source object.</returns>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncTriggerSourceCollection.Remove(System.String)">
<summary>This function removes a trigger source.</summary>
<param name="sourceName">Specifies the name of the trigger source to remove.</param>
</member>
<member name="M:Ivi.LxiSync.IIviLxiSyncTriggerSourceCollection.RemoveAllCustomTriggerSources">
<summary>This function removes all of the custom trigger sources that were added using the Add Trigger Source
function.</summary>
</member>
<member name="T:Ivi.LxiSync.InvalidEventSourceException">
<summary>
A specified event source is not valid.
</summary>
</member>
<member name="M:Ivi.LxiSync.InvalidEventSourceException.#ctor(System.String,System.String)">
<summary>
Initializes a new instance of the class with a specified error message and event source name.
</summary>
<param name="message">The message that describes the error.</param>
<param name="eventSourceName">The name of the event source.</param>
</member>
<member name="M:Ivi.LxiSync.InvalidEventSourceException.#ctor">
<summary>
Initializes a new instance of the class.
</summary>
</member>
<member name="M:Ivi.LxiSync.InvalidEventSourceException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.LxiSync.InvalidEventSourceException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified error message and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.LxiSync.InvalidEventSourceException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.LxiSync.InvalidEventSourceException.EventSourceName">
<summary>
The name of the event source.
</summary>
</member>
<member name="P:Ivi.LxiSync.InvalidEventSourceException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.LxiSync.WiredOrBiasModeLines">
<summary>Defined values for the Wired-Or Bias Mode interface lines.</summary>
</member>
<member name="F:Ivi.LxiSync.WiredOrBiasModeLines.None">
<summary>No LXI lines.</summary>
</member>
<member name="F:Ivi.LxiSync.WiredOrBiasModeLines.Lxi0">
<summary>Line LXI0.</summary>
</member>
<member name="F:Ivi.LxiSync.WiredOrBiasModeLines.Lxi1">
<summary>Line LXI1.</summary>
</member>
<member name="F:Ivi.LxiSync.WiredOrBiasModeLines.Lxi2">
<summary>Line LXI2.</summary>
</member>
<member name="F:Ivi.LxiSync.WiredOrBiasModeLines.Lxi3">
<summary>Line LXI3.</summary>
</member>
<member name="F:Ivi.LxiSync.WiredOrBiasModeLines.Lxi4">
<summary>Line LXI4.</summary>
</member>
<member name="F:Ivi.LxiSync.WiredOrBiasModeLines.Lxi5">
<summary>Line LXI5.</summary>
</member>
<member name="F:Ivi.LxiSync.WiredOrBiasModeLines.Lxi6">
<summary>Line LXI6.</summary>
</member>
<member name="F:Ivi.LxiSync.WiredOrBiasModeLines.Lxi7">
<summary>Line LXI7.</summary>
</member>
<member name="T:Ivi.LxiSync.WiredOrModeInvalidException">
<summary>
The event source cannot operate in driven mode while serving as the wired-OR bias.
</summary>
</member>
<member name="M:Ivi.LxiSync.WiredOrModeInvalidException.#ctor">
<summary>
Initializes a new instance of the class.
</summary>
</member>
<member name="M:Ivi.LxiSync.WiredOrModeInvalidException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.LxiSync.WiredOrModeInvalidException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified error message and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.LxiSync.WiredOrModeInvalidException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.LxiSync.WiredOrModeInvalidException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.LxiSync.OutOfEventResourcesException">
<summary>
The channel is not enabled.
</summary>
</member>
<member name="M:Ivi.LxiSync.OutOfEventResourcesException.#ctor">
<summary>
The driver is out of event resources.
</summary>
</member>
<member name="M:Ivi.LxiSync.OutOfEventResourcesException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified error message.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.LxiSync.OutOfEventResourcesException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified error message and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.LxiSync.OutOfEventResourcesException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.LxiSync.OutOfEventResourcesException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.LxiSync.Slope">
<summary>IVI LxiSync values for Slope.</summary>
</member>
<member name="F:Ivi.LxiSync.Slope.Positive">
<summary>
Positive slope.
</summary>
</member>
<member name="F:Ivi.LxiSync.Slope.Negative">
<summary>
Negative slope.
</summary>
</member>
</members>
</doc>

View File

@@ -0,0 +1,626 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Ivi.PwrMeter</name>
</assembly>
<members>
<member name="T:Ivi.PwrMeter.Errors">
<summary>
A strongly-typed resource class, for looking up localized strings, etc.
</summary>
</member>
<member name="P:Ivi.PwrMeter.Errors.ResourceManager">
<summary>
Returns the cached ResourceManager instance used by this class.
</summary>
</member>
<member name="P:Ivi.PwrMeter.Errors.Culture">
<summary>
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
</summary>
</member>
<member name="P:Ivi.PwrMeter.Errors.ChannelName">
<summary>
Looks up a localized string similar to Channel name: .
</summary>
</member>
<member name="P:Ivi.PwrMeter.Errors.ChannelNotEnabled">
<summary>
Looks up a localized string similar to The channel is not enabled for measurement..
</summary>
</member>
<member name="T:Ivi.PwrMeter.IIviPwrMeter">
<summary>
IVI PwrMeter class-compliant root interface.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeter.Channels">
<summary>
A reference to the IIviPwrMeterChannels interface.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeter.Measurement">
<summary>
A reference to the IIviPwrMeterMeasurement interface.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeter.ReferenceOscillator">
<summary>
A reference to the IIviPwrReferenceOscillator interface.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeter.Trigger">
<summary>
A reference to the IIviPwrMeterTrigger interface.
</summary>
</member>
<member name="T:Ivi.PwrMeter.IIviPwrMeterAveraging">
<summary>
IVI PwrMeter class-compliant averaging interface.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterAveraging.CountAuto">
<summary>
If true, auto-averaging is enabled for a particular input channel, otherwise it is disabled.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterAveraging.Count">
<summary>
The averaging count. When the CountAuto property is set to false, the driver filters the input signal
by averaging it the number of times specified by this property.
</summary>
</member>
<member name="T:Ivi.PwrMeter.IIviPwrMeterChannel">
<summary>
IVI PwrMeter class-compliant channel interface.
</summary>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterChannel.Calibrate">
<summary>
Performs a calibration on a particular channel and sensor. This method returns only after calibration is
complete.
</summary>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterChannel.Zero">
<summary>
Performs a zero operation on a particular channel.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterChannel.Averaging">
<summary>
A reference to the IIviPwrMeterAveraging interface.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterChannel.CorrectionFrequency">
<summary>
The frequency of the input signal in Hertz. The instrument uses this value to determine the appropriate
correction factor for the sensor.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterChannel.DutyCycle">
<summary>
A reference to the IIviPwrMeterDutyCycleCorrection interface.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterChannel.Enabled">
<summary>
If true, the power meter should take a measurement on a particular input channel. The power meter will
take a measurement on a channel only if that channel is enabled.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterChannel.MeasurementState">
<summary>
The status of the measurement initiated by the Initiate function. The driver returns OperationState.Complete
only when measurements are complete on all enabled channels.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterChannel.Offset">
<summary>
The offset to be added to the measured value in units of dB. This property can be used to compensate
for system losses or gains between the unit under test and the power sensor.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterChannel.Range">
<summary>
A reference to the IIviPwrMeterRange interface.
</summary>
</member>
<member name="T:Ivi.PwrMeter.IIviPwrMeterChannelCollection">
<summary>
IVI PwrMeter class-compliant channels interface. A particular channel can be referenced using the indexer.
</summary>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterChannelCollection.Zero">
<summary>
Performs a zero operation on all enabled channels
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterChannelCollection.CalibrationState">
<summary>
Returns the status of all calibration operations initiated by the Calibrate function. The driver returns
OperationState.Complete only when calibration is complete on all enabled channels. If some calibration
operations are still in progress on one or more channels, the driver returns OperationState.InProgress.
If the driver cannot query the instrument to determine its state, the driver returns OperationState.Unknown.
</summary>
<remarks>The driver does not check the instrument status to determine the measurement state. Typically, the
end-user accesses this property only in a sequence of other driver calls. The sequence performs one
operation. The end-user uses the low-level functions to optimize one or more aspects of interaction with the
instrument. To check the instrument status, call the Error Query function at the conclusion of the sequence.</remarks>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterChannelCollection.ZeroState">
<summary>
The status of all zero correction operations initiated by the Zero or Zero All Channel functions. The
driver returns OperationState.Complete only when zero corrections are complete on all enabled channels.
If some zero correction operations are still in progress on one or more channels, the driver returns
OperationState.InProgress. If the driver cannot query the instrument to determine its state, the driver
returns OperationState.Unknown.
</summary>
<remarks>The driver does not check the instrument status to determine the measurement state. Typically, the
end-user accesses this property only in a sequence of other driver calls. The sequence performs one
operation. The end-user uses the low-level functions to optimize one or more aspects of interaction with the
instrument. To check the instrument status, call the Error Query function at the conclusion of the sequence.</remarks>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterChannelCollection.Units">
<summary>
Specifies the unit to which the RF power is converted after measurement
</summary>
</member>
<member name="T:Ivi.PwrMeter.IIviPwrMeterDutyCycleCorrection">
<summary>
IVI PwrMeter class-compliant duty cycle correction interface.
</summary>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterDutyCycleCorrection.Configure(System.Boolean,System.Double)">
<summary>
Enables or disables duty cycle correction and sets the duty cycle for pulse power measurements
</summary>
<param name="enabled">If true, duty cycle correction is enabled. Refer to the Enabled property for
details.</param>
<param name="correction">The duty cycle correction value. Refer to the Value property for details.</param>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterDutyCycleCorrection.Enabled">
<summary>
If true, duty cycle correction is enabled for the particular channel.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterDutyCycleCorrection.Value">
<summary>
The duty cycle correction the power meter uses to calculate the pulse power of a pulse-modulated signal.
The value of this property is specified as a percentage. The power meter measures the average power of
the pulsed input signal and then divides the result by the value specified for this attribute to obtain
a pulse power reading.
</summary>
</member>
<member name="T:Ivi.PwrMeter.IIviPwrMeterInternalTrigger">
<summary>
IVI PwrMeter class-compliant internal trigger interface.
</summary>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterInternalTrigger.Configure(System.String,Ivi.PwrMeter.Slope)">
<summary>
Configures the internal trigger event source and slope.
</summary>
<param name="eventSource">The name of the channel to use as the internal trigger event source. Refer to
the EventSource property for details.</param>
<param name="slope">The internal trigger slope. Refer to the Slope property for details.</param>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterInternalTrigger.EventSource">
<summary>
The channel that the power meter uses to monitor the internal trigger event
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterInternalTrigger.Level">
<summary>
The trigger level for the measurement signal. The value of this property is specified in the same unit
as the value of the IIviPwrMeterChannel.Units property
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterInternalTrigger.Slope">
<summary>
The trigger slope. The power meter may trigger on the rising or falling edge of the measurement signal.
</summary>
</member>
<member name="T:Ivi.PwrMeter.IIviPwrMeterMeasurement">
<summary>
IVI PwrMeter class-compliant measurement interface.
</summary>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterMeasurement.Abort">
<summary>
Aborts all previously initiated measurements and returns the power meter to the Idle state.
</summary>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterMeasurement.Configure(Ivi.PwrMeter.MeasurementOperator,System.String,System.String)">
<summary>
Configures the instrument to take single or dual channel measurements
</summary>
<param name="measurementOperator">The math function applied to the operands.</param>
<param name="operand1">The name of the channel from which the value for the first operand of the math
function is measured.</param>
<param name="operand2">The name of the channel from which the value for the second operand of the math
function is measured.</param>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterMeasurement.Fetch">
<summary>
Returns the result of a previously configured and initiated 1 or 2 channel measurement. The Configure
method can be used to set up the measurement. The Initiate method initiates that measurement. The
meaurement result will be returned in the units specified by the IIviPwrMeterChannelCollection.Units
property.
</summary>
<returns>Measured value</returns>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterMeasurement.FetchChannel(System.String)">
<summary>
Returns the result from a previously initiated measurement on a specified channel. The Initiate method
initiates that measurement. The meaurement result will be returned in the units specified by the
IIviPwrMeterChannelCollection.Units property.
</summary>
<param name="channelName">The name of the channel from which to fetch the measurement.</param>
<returns>Measured value</returns>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterMeasurement.Initiate">
<summary>
Initiates a measurement on all enabled channels. When this method executes, the power meter leaves the
Idle state
</summary>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterMeasurement.GetMeasurementComplete">
<summary>
Returns the status of the measurement initiated by the Initiate function. The driver returns
OperationState.Complete only when measurements are complete on all enabled channels.
</summary>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterMeasurement.Read(Ivi.Driver.PrecisionTimeSpan)">
<summary>
Initiates a previously configured measurement, waits until the power meter has returned to the Idle state,
then returns the result of that measurement. The Configure method can be used to set up the measurement.
The meaurement result will be returned in the units specified by the IIviPwrMeterChannelCollection.Units
property.
</summary>
<param name="maximumTime">The maximum time to wait for a return value.</param>
<returns>Measured value.</returns>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterMeasurement.ReadChannel(System.String,Ivi.Driver.PrecisionTimeSpan)">
<summary>
Initiates a previously configured measurement, waits until the power meter has returned to the Idle state,
then returns the result of the measurement on the specified channel. The meaurement result will be
returned in the units specified by the IIviPwrMeterChannelCollection.Units property.
</summary>
<param name="channelName">The name of the channel from which to take the measurement.</param>
<param name="maxTime">The maximum time to wait for a return value.</param>
<returns>Measured value.</returns>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterMeasurement.SendSoftwareTrigger">
<summary>
Sends a software trigger to the instrument
</summary>
</member>
<member name="T:Ivi.PwrMeter.IIviPwrMeterRange">
<summary>
IVI PwrMeter class-compliant meter and sensor range selection interface.
</summary>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterRange.Configure(System.Double,System.Double)">
<summary>
Configures the lower and upper range values for a particular channel
</summary>
<param name="lower">The lower limit of the expected value of the measurement. Refer to the Lower
property for details.</param>
<param name="upper">The upper limit of the expected value of the measurement. Refer to the Upper
property for details.</param>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterRange.Configure(System.Boolean)">
<summary>
Configures the lower and upper range values for a particular channel
</summary>
<param name="rangeAuto">If True, the instrument automatically sets the best range for the measurement. If
False, the range is set using the Upper and Lower properties.</param>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterRange.Auto">
<summary>
If True, the instrument automatically sets the best range for the measurement. If False, the range is
set using the Upper and Lower properties.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterRange.Lower">
<summary>
The lower limit (minimum) of the expected value of the measurement. The value of this property is
specified in the same units as the value of the IIviPwrMeterChannelCollection.Units property
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterRange.Upper">
<summary>
The upper limit (maximum) of the expected value of the measurement. The value of this property is
specified in the same units as the value of the IIviPwrMeterChannelCollection.Units property
</summary>
</member>
<member name="T:Ivi.PwrMeter.IIviPwrMeterReferenceOscillator">
<summary>
IVI PwrMeter class-compliant reference oscillator interface.
</summary>
</member>
<member name="M:Ivi.PwrMeter.IIviPwrMeterReferenceOscillator.Configure(System.Double,System.Double)">
<summary>
Configures the frequency and power level of the signal generated by the reference oscillator.
</summary>
<param name="frequency">The frequency of the reference oscillator. Refer to the Frequency property for
details.</param>
<param name="level">The power level of the reference oscillator. Refer to the Level property for details.</param>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterReferenceOscillator.Enabled">
<summary>
If true, the internal reference oscillator is enabled, otherwise it is not enabled.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterReferenceOscillator.Frequency">
<summary>
The frequency of the signal generated by the reference oscillator in Hertz.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterReferenceOscillator.Level">
<summary>
The power level of the signal generated by the reference oscillator in dBm.
</summary>
</member>
<member name="T:Ivi.PwrMeter.IIviPwrMeterTrigger">
<summary>
IVI PwrMeter class-compliant trigger interface.
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterTrigger.Source">
<summary>
The trigger source that the power meter monitors for a trigger event.
[Refer to the instrument driver documentation for valid values, which may include
one or more of the standard values defined in Ivi.Driver.TriggerSource.]
</summary>
</member>
<member name="P:Ivi.PwrMeter.IIviPwrMeterTrigger.Internal">
<summary>
A reference to the IIviPwrMeterInternalTrigger interface.
</summary>
</member>
<member name="T:Ivi.PwrMeter.ChannelNotEnabledException">
<summary>
The channel is not enabled.
</summary>
</member>
<member name="M:Ivi.PwrMeter.ChannelNotEnabledException.#ctor(System.String,System.String)">
<summary>
Initializes a new instance of the class with a specified channel name.
</summary>
<param name="message">The message that describes the error.</param>
<param name="channelName">The channel name.</param>
</member>
<member name="M:Ivi.PwrMeter.ChannelNotEnabledException.#ctor">
<summary>
Initializes a new instance of the class.
</summary>
</member>
<member name="M:Ivi.PwrMeter.ChannelNotEnabledException.#ctor(System.String)">
<summary>
Initializes a new instance of the class with a specified channel name.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:Ivi.PwrMeter.ChannelNotEnabledException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the class with a specified channel name and a reference to the inner exception
that is the cause of this exception.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception, or a null reference
if no inner exception is specified.</param>
</member>
<member name="M:Ivi.PwrMeter.ChannelNotEnabledException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the class with serialized data.
</summary>
<param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
exception being thrown.</param>
<param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.</param>
</member>
<member name="P:Ivi.PwrMeter.ChannelNotEnabledException.ChannelName">
<summary>
The channel name.
</summary>
</member>
<member name="P:Ivi.PwrMeter.ChannelNotEnabledException.Message">
<summary>
Gets the error message.
</summary>
</member>
<member name="T:Ivi.PwrMeter.IviPwrMeter">
<summary>
The IviPwrMeter class allows clients to create instances of drivers that implement the class-compliant
IviPwrMeter interfaces, based on information in the IVI configuration store. This allows clients to
interchange IVI.NET class-compliant IviPwrMeter drivers without modifying or rebuilding the client program
source code.
</summary>
</member>
<member name="M:Ivi.PwrMeter.IviPwrMeter.Create(System.String)">
<summary>
Create an instance of an IviPwrMeter class-compliant driver and return an IIviPwrMeter reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery and reset parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviPwrMeter driver to be created.</param>
<returns>
An IIviPwrMeter interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
</member>
<member name="M:Ivi.PwrMeter.IviPwrMeter.Create(System.String,System.Boolean,System.Boolean)">
<summary>
Create an instance of an IviPwrMeter class-compliant driver and return an IIviPwrMeter reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery and reset parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviPwrMeter driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<returns>
An IIviPwrMeter interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
</member>
<member name="M:Ivi.PwrMeter.IviPwrMeter.Create(System.String,System.Boolean,System.Boolean,System.String)">
<summary>
Create an instance of an IviPwrMeter class-compliant driver and return an IIviPwrMeter reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery, reset, and options parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviPwrMeter driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<param name="options">A comma-separated list of option assignments. An options assignment has the form
"OptionName=Value", where OptionName is one of: 'Cache', 'InterchangeCheck', 'QueryInstrStatus',
'RangeCheck', 'RecordCoercions', 'Simulate', or 'DriverSetup'. With the exception of DriverSetup, all
of the options accept values of 'true' or 'false'. 'DriverSetup' is a string, and must be last in the
list. The method assumes that everything following 'DriverSetup=' is part of the assignment. The
DriverSetup string is meaningful only to the specific driver being instantiated.
</param>
<returns>
An IIviPwrMeter interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
<remarks>
Examples of legal values for the options parameter are:
<para>* ""</para>
<para>* "Simulate=true"</para>
<para>* "Simulate=true,Cache=false,QueryInstrStatus=false"</para>
<para>* "Simulate=true,Cache=false,DriverSetup=Trace=false"</para>
<para>Note that 'Simulate', 'Cache', and 'QueryInstrStatus' are standard IVI features, while
'Trace=false' is meaningful only to the specific driver being instantiated.</para>
</remarks>
</member>
<member name="M:Ivi.PwrMeter.IviPwrMeter.Create(System.String,System.Boolean,System.Boolean,Ivi.Driver.LockType,System.String,System.String)">
<summary>
Create an instance of an IviPwrMeter class-compliant driver and return an IIviPwrMeter reference to the
caller. The creation process uses the IVI configuration store to map a logical name or driver session
name to the main driver class of the corresponding specific driver. The driver is initialized using
information from the IVI configuration store and the idQuery, reset, and options parameters.
</summary>
<param name="name">An IVI configuration store logical name or driver session name that refers to the
IVI.NET class-compliant IviPwrMeter driver to be created.</param>
<param name="idQuery">If true, verify the ID of the instrument.</param>
<param name="reset">If true, reset the instrument.</param>
<param name="lockType">Specifies whether to use .NET AppDomain-wide locking or machine-wide locking.</param>
<param name="accessKey">Specifies a user-selectable access key to identify the lock. Driver instances
that are created with the same accessKey will be protected from simultaneous access by multiple threads
within a process or across processes, depending upon the value of the lockType parameter. </param>
<param name="options">A comma-separated list of option assignments. An options assignment has the form
"OptionName=Value", where OptionName is one of: 'Cache', 'InterchangeCheck', 'QueryInstrStatus',
'RangeCheck', 'RecordCoercions', 'Simulate', or 'DriverSetup'. With the exception of DriverSetup, all
of the options accept values of 'true' or 'false'. 'DriverSetup' is a string, and must be last in the
list. The method assumes that everything following 'DriverSetup=' is part of the assignment. The
DriverSetup string is meaningful only to the specific driver being instantiated.
</param>
<returns>
An IIviPwrMeter interface reference for the specific driver that is referred to by the provided IVI
configuration store logical name or driver session name.
</returns>
<remarks>
Examples of legal values for the options parameter are:
<para>* ""</para>
<para>* "Simulate=true"</para>
<para>* "Simulate=true,Cache=false,QueryInstrStatus=false"</para>
<para>* "Simulate=true,Cache=false,DriverSetup=Trace=false"</para>
<para>Note that 'Simulate', 'Cache', and 'QueryInstrStatus' are standard IVI features, while
'Trace=false' is meaningful only to the specific driver being instantiated.</para>
</remarks>
</member>
<member name="T:Ivi.PwrMeter.MeasurementOperator">
<summary>
IVI PwrMeter class-compliant values for measurement operator
</summary>
</member>
<member name="F:Ivi.PwrMeter.MeasurementOperator.None">
<summary>
No operation - the measurement returns the first operand.
</summary>
</member>
<member name="F:Ivi.PwrMeter.MeasurementOperator.Difference">
<summary>
Subtraction - the measurement returns the difference between the first operand and the second operand.
</summary>
</member>
<member name="F:Ivi.PwrMeter.MeasurementOperator.Sum">
<summary>
Addition - the measurement returns the sum of the first operand and the second operand.
</summary>
</member>
<member name="F:Ivi.PwrMeter.MeasurementOperator.Quotient">
<summary>
Division - the measurement returns first operand divided by the second operand
</summary>
</member>
<member name="T:Ivi.PwrMeter.OperationState">
<summary>
IVI PwrMeter class-compliant values for operation state
</summary>
</member>
<member name="F:Ivi.PwrMeter.OperationState.InProgress">
<summary>
The power meter is still performing the operation.
</summary>
</member>
<member name="F:Ivi.PwrMeter.OperationState.Complete">
<summary>
The power meter has completed the operation.
</summary>
</member>
<member name="F:Ivi.PwrMeter.OperationState.Unknown">
<summary>
The power meter cannot determine the status of the operation.
</summary>
</member>
<member name="T:Ivi.PwrMeter.Units">
<summary>
IVI PwrMeter class-compliant values for units
</summary>
</member>
<member name="F:Ivi.PwrMeter.Units.dBm">
<summary>
dBm.
</summary>
</member>
<member name="F:Ivi.PwrMeter.Units.dBmV">
<summary>
dB millivolts.
</summary>
</member>
<member name="F:Ivi.PwrMeter.Units.dBuV">
<summary>
dB microvolts.
</summary>
</member>
<member name="F:Ivi.PwrMeter.Units.Watts">
<summary>
Watts.
</summary>
</member>
<member name="T:Ivi.PwrMeter.Slope">
<summary>IviPwrMeter class defined values for slope.</summary>
</member>
<member name="F:Ivi.PwrMeter.Slope.Positive">
<summary>
A positive (rising edge) slope.
</summary>
</member>
<member name="F:Ivi.PwrMeter.Slope.Negative">
<summary>
A negative (falling edge) slope.
</summary>
</member>
</members>
</doc>

View File

@@ -0,0 +1,26 @@
<?xml version="1.0"?>
<DotNETComponent xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Visible>true</Visible>
<SupportedProjectTypes>
<string>WindowsFormsApplication2012</string>
<string>WindowsFormsApplication2013</string>
</SupportedProjectTypes>
<SelectedByDefault>false</SelectedByDefault>
<Title>Measurement Studio Hardware Class Libraries/NI-DMM Library</Title>
<Description>Contains classes for configuring and controlling NI digital multimeters using the NI-DMM driver.</Description>
<Name2012>NationalInstruments.ModularInstruments.NIDmm.Fx45</Name2012>
<Name2013>NationalInstruments.ModularInstruments.NIDmm.Fx45</Name2013>
<Licensed>false</Licensed>
<Dependencies>
<DotNETAssembly>
<Name>NationalInstruments.ModularInstruments.Common</Name>
</DotNETAssembly>
</Dependencies>
<ThirdPartyDependencies>
<string>Ivi.Driver</string>
<string>Ivi.Dmm</string>
</ThirdPartyDependencies>
<Namespaces>
<string>NationalInstruments.ModularInstruments.NIDmm</string>
</Namespaces>
</DotNETComponent>

View File

@@ -0,0 +1,27 @@
<?xml version="1.0"?>
<DotNETComponent xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ToolBoxPriority>1</ToolBoxPriority>
<Visible>true</Visible>
<SupportedProjectTypes>
<string>CppCLI2012</string>
<string>WindowsFormsApplication2012</string>
</SupportedProjectTypes>
<SelectedByDefault>false</SelectedByDefault>
<Title>Measurement Studio Hardware Class Libraries/NI-SWITCH Library</Title>
<Description>Contains classes to control and configure NI switch modules using the NI-SWITCH driver.</Description>
<Name2012>NationalInstruments.ModularInstruments.NISwitch.Fx45</Name2012>
<Licensed>false</Licensed>
<Dependencies>
<DotNETAssembly>
<Name>NationalInstruments.ModularInstruments.Common</Name>
</DotNETAssembly>
</Dependencies>
<ThirdPartyDependencies>
<string>Ivi.Driver</string>
<string>Ivi.Swtch</string>
</ThirdPartyDependencies>
<Namespaces>
<string>NationalInstruments.ModularInstruments.NISwitch</string>
</Namespaces>
</DotNETComponent>

View File

@@ -0,0 +1,21 @@
<?xml version="1.0"?>
<DotNETComponent xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Visible>true</Visible>
<SupportedProjectTypes>
<string>CppCLI2012</string>
<string>WindowsFormsApplication2012</string>
</SupportedProjectTypes>
<SelectedByDefault>true</SelectedByDefault>
<Title>Measurement Studio Hardware Class Libraries/NI-488.2 Library</Title>
<Description>Contains objects that communicate with GPIB instruments, control GPIB boards, and acquire GPIB status information.</Description>
<Name2012>NationalInstruments.NI4882</Name2012>
<Licensed>false</Licensed>
<Dependencies>
<DotNETAssembly>
<Name>NationalInstruments.Common</Name>
</DotNETAssembly>
</Dependencies>
<Namespaces>
<string>NationalInstruments.NI4882</string>
</Namespaces>
</DotNETComponent>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1 @@
these dlls were taken from C:\Program Files (x86)\IVI Foundation\IVI\Microsoft.NET\Framework32\v4.0.30319

View File

@@ -0,0 +1,68 @@
<IviConfigStore xmlns:dt="urn:schemas-microsoft-com:datatypes">
<Name>IVI Configuration Server</Name>
<Description>The IVI Configuration Server allows access to and modification of an IVI configuration store</Description>
<Vendor>IVI Foundation, Inc</Vendor>
<Revision>1.3.1.0</Revision>
<SpecificationMajorVersion>1</SpecificationMajorVersion>
<SpecificationMinorVersion>0</SpecificationMinorVersion>
<MasterLocation></MasterLocation>
<ProcessDefaultLocation/>
<ActualLocation></ActualLocation>
<PublishedAPIs>
<IviPublishedAPI id="p4">
<Name>IviDriver</Name>
<MajorVersion>1</MajorVersion>
<MinorVersion>0</MinorVersion>
<Type>IVI.NET</Type>
</IviPublishedAPI>
</PublishedAPIs>
<SoftwareModules>
<IviSoftwareModule id="p1">
<Name>Raytheon.GuidedElectronicsUnit v1.2.5 Fx46</Name>
<Description>IVI.NET Driver for GuidedElectronicsUnit</Description>
<DataComponents>
<IviStructure id="p2">
<Name>Configurable Initial Settings</Name>
<Description/>
<ReadOnly>1</ReadOnly>
<UsedInSession>Required</UsedInSession>
<Type>Structure</Type>
<HelpContextID>0</HelpContextID>
<HelpFilePath/>
<SoftwareModuleKey/>
<DataComponents>
<IviString id="p3">
<Name>Model</Name>
<Description>Default model used during simulation</Description>
<ReadOnly>1</ReadOnly>
<UsedInSession>Required</UsedInSession>
<Type>String</Type>
<HelpContextID>0</HelpContextID>
<HelpFilePath/>
<SoftwareModuleKey/>
<Value>HSSub6020a, HSSub9010</Value>
</IviString>
</DataComponents>
</IviStructure>
</DataComponents>
<ModulePath></ModulePath>
<Prefix></Prefix>
<ProgID></ProgID>
<SupportedInstrumentModels>HSSub6020a, HSSub9010</SupportedInstrumentModels>
<PhysicalNames>
</PhysicalNames>
<PublishedAPIs>
<IviPublishedAPI idref="p4"/>
</PublishedAPIs>
<AssemblyQualifiedClassName>Raytheon.GuidedElectronicsUnit.GuidedElectronicsUnit, Raytheon.GuidedElectronicsUnit.Fx46, Version=1.2.5.0, Culture=neutral, PublicKeyToken=65cff6f5578f3c89</AssemblyQualifiedClassName>
<ModulePath64></ModulePath64>
</IviSoftwareModule>
</SoftwareModules>
<HardwareAssets>
</HardwareAssets>
<DriverSessions>
</DriverSessions>
<Sessions/>
<LogicalNames>
</LogicalNames>
</IviConfigStore>

View File

@@ -0,0 +1,304 @@
{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff0\deff0\stshfdbch0\stshfloch31506\stshfhich31506\stshfbi31506\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
{\f2\fbidi \fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f3\fbidi \froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f34\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria Math;}
{\f37\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhimajor\f31502\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0302020204030204}Calibri Light;}
{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
{\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}
{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f294\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f295\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
{\f297\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f298\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f299\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f300\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
{\f301\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f302\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f304\fbidi \fswiss\fcharset238\fprq2 Arial CE;}{\f305\fbidi \fswiss\fcharset204\fprq2 Arial Cyr;}
{\f307\fbidi \fswiss\fcharset161\fprq2 Arial Greek;}{\f308\fbidi \fswiss\fcharset162\fprq2 Arial Tur;}{\f309\fbidi \fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f310\fbidi \fswiss\fcharset178\fprq2 Arial (Arabic);}
{\f311\fbidi \fswiss\fcharset186\fprq2 Arial Baltic;}{\f312\fbidi \fswiss\fcharset163\fprq2 Arial (Vietnamese);}{\f314\fbidi \fmodern\fcharset238\fprq1 Courier New CE;}{\f315\fbidi \fmodern\fcharset204\fprq1 Courier New Cyr;}
{\f317\fbidi \fmodern\fcharset161\fprq1 Courier New Greek;}{\f318\fbidi \fmodern\fcharset162\fprq1 Courier New Tur;}{\f319\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f320\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);}
{\f321\fbidi \fmodern\fcharset186\fprq1 Courier New Baltic;}{\f322\fbidi \fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f634\fbidi \froman\fcharset238\fprq2 Cambria Math CE;}{\f635\fbidi \froman\fcharset204\fprq2 Cambria Math Cyr;}
{\f637\fbidi \froman\fcharset161\fprq2 Cambria Math Greek;}{\f638\fbidi \froman\fcharset162\fprq2 Cambria Math Tur;}{\f641\fbidi \froman\fcharset186\fprq2 Cambria Math Baltic;}{\f642\fbidi \froman\fcharset163\fprq2 Cambria Math (Vietnamese);}
{\f664\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\f665\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\f667\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\f668\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}
{\f669\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}{\f670\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);}{\f671\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\f672\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}
{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhimajor\f31528\fbidi \fswiss\fcharset238\fprq2 Calibri Light CE;}{\fhimajor\f31529\fbidi \fswiss\fcharset204\fprq2 Calibri Light Cyr;}
{\fhimajor\f31531\fbidi \fswiss\fcharset161\fprq2 Calibri Light Greek;}{\fhimajor\f31532\fbidi \fswiss\fcharset162\fprq2 Calibri Light Tur;}{\fhimajor\f31533\fbidi \fswiss\fcharset177\fprq2 Calibri Light (Hebrew);}
{\fhimajor\f31534\fbidi \fswiss\fcharset178\fprq2 Calibri Light (Arabic);}{\fhimajor\f31535\fbidi \fswiss\fcharset186\fprq2 Calibri Light Baltic;}{\fhimajor\f31536\fbidi \fswiss\fcharset163\fprq2 Calibri Light (Vietnamese);}
{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbminor\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}
{\fhiminor\f31573\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}{\fhiminor\f31574\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);}{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}
{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}}
{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;
\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\red0\green0\blue0;\red0\green0\blue0;\red230\green230\blue230;}{\*\defchp \f31506\fs22 }{\*\defpap \ql \li0\ri0\sa160\sl259\slmult1
\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0
\f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 \sqformat \spriority0 Normal;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\*
\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa160\sl259\slmult1
\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31506\afs22\alang1025 \ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused Normal Table;}{
\s15\ql \li0\ri0\sb100\sa100\sbauto1\saauto1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext15 \ssemihidden \sunhideused \styrsid11281381 Normal (Web);}{\*\cs16 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \ul\cf2 \sbasedon10 \sunhideused \styrsid11281381 Hyperlink;}{\*\cs17 \additive \rtlch\fcs1 \af0 \ltrch\fcs0
\cf15\chshdng0\chcfpat0\chcbpat19 \sbasedon10 \ssemihidden \sunhideused \styrsid1341921 Unresolved Mention;}}{\*\listtable{\list\listtemplateid-1{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}
\f2\fs20\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li2160
\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative
\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext
\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0
\fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid975601316}{\list\listtemplateid-1{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0
\fi-360\li1080\jclisttab\tx1080\lin1080 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fs20\fbias0 \fi-360\li1800\jclisttab\tx1800\lin1800 }
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li2520\jclisttab\tx2520\lin2520 }{\listlevel\levelnfc23\levelnfcn23\leveljc0
\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li3240\jclisttab\tx3240\lin3240 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li3960\jclisttab\tx3960\lin3960 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0
{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li4680\jclisttab\tx4680\lin4680 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}
\f2\fs20\fbias0 \fi-360\li5400\jclisttab\tx5400\lin5400 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li6120
\jclisttab\tx6120\lin6120 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li6840\jclisttab\tx6840\lin6840 }{\listname
;}\listid1966303994}}{\*\listoverridetable{\listoverride\listid975601316\listoverridecount0\ls1}{\listoverride\listid1966303994\listoverridecount0\ls2}}{\*\pgptbl {\pgp\ipgp0\itap0\li0\ri0\sb0\sa0}}{\*\rsidtbl \rsid527649\rsid610856\rsid1068840
\rsid1193474\rsid1341921\rsid1592073\rsid2053566\rsid2247458\rsid2299657\rsid2827723\rsid2886078\rsid3500732\rsid3955874\rsid4215438\rsid4264747\rsid4333579\rsid4391466\rsid4654620\rsid4739023\rsid4788022\rsid5509084\rsid5570663\rsid7020182\rsid7483015
\rsid8015605\rsid8080083\rsid8153627\rsid9140596\rsid9455773\rsid10160764\rsid10487149\rsid10762515\rsid11141304\rsid11171846\rsid11281381\rsid11482326\rsid11550169\rsid11556053\rsid11759083\rsid12597103\rsid12660782\rsid12725604\rsid12849194\rsid13064890
\rsid13400244\rsid13570917\rsid13637496\rsid14252017\rsid14431944\rsid14635889\rsid14690799\rsid14704508\rsid14973440\rsid15536999}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0
\mnaryLim1}{\info{\author Kirk Fertitta}{\operator Mark Beene}{\creatim\yr2015\mo2\dy19\hr11\min47}{\revtim\yr2023\mo2\dy27\hr22\min42}{\version48}{\edmins123}{\nofpages1}{\nofwords328}{\nofchars1874}{\nofcharsws2198}{\vern61}}{\*\userprops {\propname MSI
P_Label_fe0a1f92-ac18-422f-8e1c-3f51ca75c21a_Enabled}\proptype30{\staticval true}{\propname MSIP_Label_fe0a1f92-ac18-422f-8e1c-3f51ca75c21a_SetDate}\proptype30{\staticval 2023-02-28T03:42:13Z}{\propname MSIP_Label_fe0a1f92-ac18-422f-8e1c-3f51ca75c21a_Meth
od}\proptype30{\staticval Standard}{\propname MSIP_Label_fe0a1f92-ac18-422f-8e1c-3f51ca75c21a_Name}\proptype30{\staticval General}{\propname MSIP_Label_fe0a1f92-ac18-422f-8e1c-3f51ca75c21a_SiteId}\proptype30{\staticval d17c7130-59db-4f4c-9fa4-8b76b84d575
5}{\propname MSIP_Label_fe0a1f92-ac18-422f-8e1c-3f51ca75c21a_ActionId}\proptype30{\staticval 3b2a0bab-af0a-481d-8319-efb160836b45}{\propname MSIP_Label_fe0a1f92-ac18-422f-8e1c-3f51ca75c21a_ContentBits}\proptype30{\staticval 0}}{\*\xmlnstbl {\xmlns1 http:/
/schemas.microsoft.com/office/word/2003/wordml}}\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect
\widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont1\relyonvml0\donotembedlingdata0\grfdocevents0\validatexml1\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors1\noxlattoyen
\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\formshade\horzdoc\dgmargin\dghspace180\dgvspace180\dghorigin1440\dgvorigin1440\dghshow1\dgvshow1
\jexpand\viewkind1\viewscale130\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct
\asianbrkrule\rsidroot11281381\newtblstyruls\nogrowautofit\usenormstyforlist\noindnmbrts\felnbrelev\nocxsptable\indrlsweleven\noafcnsttbl\afelev\utinl\hwelev\spltpgpar\notcvasp\notbrkcnstfrctbl\notvatxbx\krnprsnet\cachedcolbal \nouicompat \fet0
{\*\wgrffmtfilter 2450}\nofeaturethrottle1\ilfomacatclnup0{\*\ftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8153627 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0
\f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11482326 \chftnsep
\par }}{\*\ftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8153627 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11482326 \chftnsepc
\par }}{\*\aftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8153627 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11482326 \chftnsep
\par }}{\*\aftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8153627 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11482326 \chftnsepc
\par }}\ltrpar \sectd \ltrsect\linex0\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang
{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7
\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar
\ql \li540\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin540\itap0\pararsid10487149 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0
\b\f1\fs20\cf1\insrsid10487149\charrsid11281381 Driver Documentation}{\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\cf1\insrsid10487149
\par
\par }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 The }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 driver files are installed }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0
\f0\fs20\cf1\insrsid10487149\charrsid11281381 in the }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 following directory:
\par }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 <}{\rtlch\fcs1 \ai\af0\afs20 \ltrch\fcs0 \i\f0\fs20\cf1\insrsid10487149\charrsid11281381 Program Files}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 >\\
IVI }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 Foundation\\IVI}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 \\Microsoft.NET\\Framework32\\v4.}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0
\f0\fs20\cf1\insrsid2053566 6}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 \\}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid14704508 Raytheon.GuidedElectronicsUnit 1.}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0
\f0\fs20\cf1\insrsid5509084 2}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid14704508 .}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid8153627 4}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 .}{
\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149
\par }{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149
\par }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 This directory will be referred to as the }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \i\f0\fs20\cf1\insrsid10487149\charrsid13637496 <DriverInstallDir>}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0
\f0\fs20\cf1\insrsid10487149 throughout the remainder of this document.
\par }{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\cf1\insrsid10487149\charrsid11281381 Driver Documentation}{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\cf1\insrsid10487149\charrsid11281381 \~}{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 The readme.txt file can be found in the }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \i\f0\fs20\cf1\insrsid10487149\charrsid13637496 <DriverInstallDir>}{\rtlch\fcs1 \af0\afs20
\ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 directory:
\par
\par }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 It contains notes about installation, known issues, and the driver\rquote s revision history.
\par \~
\par The }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid14704508 Raytheon_GuidedElectronicsUnit_Fx472}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 .chm file can be found in the }{\rtlch\fcs1
\af0\afs20 \ltrch\fcs0 \i\f0\fs20\cf1\insrsid10487149\charrsid13637496 <DriverInstallDir}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \i\f0\fs20\cf1\insrsid10487149\charrsid14704508 >}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0
\f0\fs20\cf1\insrsid10487149\charrsid14704508 \\Help}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \i\f0\fs20\cf1\insrsid10487149 .}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0
\f0\fs20\cf1\insrsid10487149\charrsid11281381 It contains
\par \~
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f2\fs20\cf1\insrsid10487149\charrsid11281381 \hich\af2\dbch\af0\loch\f2 o\tab}}\pard \ltrpar\ql \fi-360\li1080\ri0\widctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\facenter\ls1\adjustright\rin0\lin1080\itap0\pararsid10487149 {\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 General information about using the driver}{\rtlch\fcs1 \af0
\ltrch\fcs0 \f37\cf1\insrsid10487149\charrsid11281381
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f2\fs20\cf1\insrsid10487149\charrsid11281381 \hich\af2\dbch\af0\loch\f2 o\tab}}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 Reference i
nformation for all methods and properties in the }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 IVI.NET}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 driver}{\rtlch\fcs1 \af0 \ltrch\fcs0
\f37\cf1\insrsid10487149\charrsid11281381
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f2\fs20\cf1\insrsid10487149\charrsid11281381 \hich\af2\dbch\af0\loch\f2 o\tab}}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 IVI compliance information}{
\rtlch\fcs1 \af0 \ltrch\fcs0 \f37\cf1\insrsid10487149\charrsid11281381
\par }\pard \ltrpar\ql \li1620\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin1620\itap0\pararsid10487149 {\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 \~
\par }\pard \ltrpar\ql \li540\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin540\itap0\pararsid10487149 {\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 \~
\par }{\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\cf1\insrsid10487149\charrsid11281381 Driver Source Code and Examples}{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\cf1\insrsid10487149\charrsid11281381 \~}{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 The }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 IVI.NET}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381
driver source code can be found in the }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \i\f0\fs20\cf1\insrsid10487149\charrsid13637496 <DriverInstallDir>}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid13637496 /Source}{\rtlch\fcs1
\af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 directory. For instructions on rebuilding the driver, refer to the \'93Driver Source Code}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 \'94
section of the Readme.txt file.}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381
\par \~
\par }{\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\cf1\insrsid10487149\charrsid11281381 Connecting to the Instrument}{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\cf1\insrsid10487149\charrsid11281381 \~}{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 The IVI resources page (}{\field\fldedit{\*\fldinst {\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381
HYPERLINK "http://ivifoundation.org/resources/default.aspxhere" }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 {\*\datafield
00d0c9ea79f9bace118c8200aa004ba90b0200000003000000e0c9ea79f9bace118c8200aa004ba90b8000000068007400740070003a002f002f0069007600690066006f0075006e0064006100740069006f006e002e006f00720067002f007200650073006f00750072006300650073002f00640065006600610075006c00
74002e00610073007000780068006500720065000000795881f43b1d7f48af2c825dc485276300000000a5ab0000000000000000002233370022d70000003e00002e}}}{\fldrslt {\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\ul\cf2\insrsid10487149\charrsid11281381
http://ivifoundation.org/resources/default.aspxhere}}}\sectd \ltrsect\linex0\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381
) has documents and videos that explain how to get started with an }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 IVI }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381
driver in different development environments}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 .}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381
\par \~}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid12660782
\par }{\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\cf1\insrsid10487149\charrsid11281381 Configuring Instrument Settings}{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\cf1\insrsid10487149\charrsid11281381 \~}{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 The }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid14704508 GuidedElectronicsUnit}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0
\f0\fs20\cf1\insrsid10487149\charrsid11281381 instrument driver application programming interface (API) includes methods an
d properties for setting instrument state variables, as well as methods for controlling the instrument and reading results from the instrument. These are documented in the }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0
\f0\fs20\cf1\insrsid10487149\charrsid14704508 GuidedElectronicsUnit}{\rtlch\fcs1 \ai\af0\afs20 \ltrch\fcs0 \i\f0\fs20\cf1\insrsid10487149\charrsid11281381 > Reference}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381
help topic.
\par \~\~
\par }{\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\cf1\insrsid10487149\charrsid11281381 Configuring Driver Settings}{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \f37\cf1\insrsid10487149\charrsid11281381 \~
\par }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 {\*\bkmkstart _Hlk27715211}
IVI instrument drivers implement inherent capabilities including properties that control driver behavior, utility methods, and identifying information.
\par {\*\bkmkend _Hlk27715211}\~
\par Properties that c}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149 ontrol driver behavior such as }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381
simulation, range checking, and instrument status checking can be enabled/disabled when initializing the driver or by using configuration information in the IVI Configuration Store. For more information, refer to the }{\rtlch\fcs1 \ai\af0\afs20
\ltrch\fcs0 \i\f0\fs20\cf1\insrsid10487149\charrsid11281381 Getting Started > Configuring the Driver}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 help topic.
\par }{\rtlch\fcs1 \ab\af0\afs20 \ltrch\fcs0 \b\f0\fs20\cf1\insrsid10487149\charrsid11281381 \~}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\cf1\insrsid10487149\charrsid11281381 Known Issues}{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\cf1\insrsid10487149\charrsid11281381
\par }{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381 The readme.txt file contains information about known issues.
\par }{\rtlch\fcs1 \ab\af0\afs20 \ltrch\fcs0 \b\f0\fs20\cf1\insrsid10487149\charrsid11281381 \~}{\rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \f0\fs20\cf1\insrsid10487149\charrsid11281381
\par }\pard \ltrpar\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10487149 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid9455773\charrsid10487149
\par }{\*\themedata 504b030414000600080000002100e9de0fbfff0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb4ec3301045f748fc83e52d4a
9cb2400825e982c78ec7a27cc0c8992416c9d8b2a755fbf74cd25442a820166c2cd933f79e3be372bd1f07b5c3989ca74aaff2422b24eb1b475da5df374fd9ad
5689811a183c61a50f98f4babebc2837878049899a52a57be670674cb23d8e90721f90a4d2fa3802cb35762680fd800ecd7551dc18eb899138e3c943d7e503b6
b01d583deee5f99824e290b4ba3f364eac4a430883b3c092d4eca8f946c916422ecab927f52ea42b89a1cd59c254f919b0e85e6535d135a8de20f20b8c12c3b0
0c895fcf6720192de6bf3b9e89ecdbd6596cbcdd8eb28e7c365ecc4ec1ff1460f53fe813d3cc7f5b7f020000ffff0300504b030414000600080000002100a5d6
a7e7c0000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4f
c7060abb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b6309512
0f88d94fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462
a1a82fe353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f746865
6d652f7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b
4b0d592c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b
4757e8d3f729e245eb2b260a0238fd010000ffff0300504b030414000600080000002100aa5225dfc60600008b1a0000160000007468656d652f7468656d652f
7468656d65312e786d6cec595d8bdb46147d2ff43f08bd3bfe92fcb1c41b6cd9ceb6d94d42eca4e4716c8fadc98e344633de8d0981923c160aa569e943037deb
43691b48a02fe9afd936a54d217fa17746b63c638fbb9b2585a5640d8b343af7ce997bafce1d4997afdc8fa87384134e58dc708b970aae83e3211b9178d2706f
f7bbb99aeb7081e211a22cc60d778eb97b65f7c30f2ea31d11e2083b601ff31dd4704321a63bf93c1fc230e297d814c7706dcc920809384d26f951828ec16f44
f3a542a1928f10895d274611b8bd311e932176fad2a5bbbb74dea1701a0b2e078634e949d7d8b050d8d1615122f89c0734718e106db830cf881df7f17de13a14
7101171a6e41fdb9f9ddcb79b4b330a2628bad66d7557f0bbb85c1e8b0a4e64c26836c52cff3bd4a33f3af00546ce23ad54ea553c9fc29001a0e61a52917dda7
dfaab7dafe02ab81d2438bef76b55d2e1a78cd7f798373d3973f03af40a97f6f03dfed06104503af4029dedfc07b5eb51478065e81527c65035f2d34db5ed5c0
2b5048497cb8812ef89572b05c6d061933ba6785d77daf5b2d2d9caf50500d5975c929c62c16db6a2d42f758d2058004522448ec88f9148fd110aa3840940c12
e2ec93490885374531e3305c2815ba8532fc973f4f1da988a01d8c346bc90b98f08d21c9c7e1c3844c45c3fd18bcba1ae4cdcb1fdfbc7cee9c3c7a71f2e89793
c78f4f1efd9c3a32acf6503cd1ad5e7fffc5df4f3f75fe7afeddeb275fd9f15cc7fffed367bffdfaa51d082b5d85e0d5d7cffe78f1ecd5379ffff9c3130bbc99
a0810eef930873e73a3e766eb10816a6426032c783e4ed2cfa2122ba45339e701423398bc57f478406fafa1c5164c1b5b019c13b09488c0d787576cf20dc0b93
9920168fd7c2c8001e30465b2cb146e19a9c4b0b737f164fec9327331d770ba123dbdc018a8dfc766653d05662731984d8a07993a258a0098eb170e4357688b1
6575770931e27a408609e36c2c9cbbc46921620d499f0c8c6a5a19ed9108f232b711847c1bb139b8e3b418b5adba8d8f4c24dc15885ac8f73135c27815cd048a
6c2efb28a27ac0f791086d247bf364a8e33a5c40a6279832a733c29cdb6c6e24b05e2de9d7405eec693fa0f3c84426821cda7cee23c674649b1d06218aa6366c
8fc4a18efd881f428922e7261336f80133ef10790e7940f1d674df21d848f7e96a701b9455a7b42a107965965872791533a37e7b733a4658490d08bfa1e71189
4f15f73559f7ff5b5907217df5ed53cbaa2eaaa0371362bda3f6d6647c1b6e5dbc03968cc8c5d7ee369ac53731dc2e9b0decbd74bf976ef77f2fdddbeee7772f
d82b8d06f9965bc574abae36eed1d67dfb9850da13738af7b9daba73e84ca32e0c4a3bf5cc8ab3e7b8690887f24e86090cdc2441cac64998f88488b017a229ec
ef8bae7432e10bd713ee4c19876dbf1ab6fa96783a8b0ed8287d5c2d16e5a3692a1e1c89d578c1cfc6e15143a4e84a75f50896b9576c27ea51794940dabe0d09
6d329344d942a2ba1c9441520fe610340b09b5b277c2a26e615193ee97a9da6001d4b2acc0d6c9810d57c3f53d30012378a242148f649ed2542fb3ab92f92e33
bd2d984605c03e625901ab4cd725d7adcb93ab4b4bed0c99364868e566925091513d8c87688417d52947cf42e36d735d5fa5d4a02743a1e683d25ad1a8d6fe8d
c579730d76ebda40635d2968ec1c37dc4ad9879219a269c31dc3633f1c4653a81d2eb7bc884ee0ddd95024e90d7f1e6599265cb4110fd3802bd149d520220227
0e2551c395cbcfd24063a5218a5bb104827061c9d541562e1a3948ba99643c1ee3a1d0d3ae8dc848a7a7a0f0a95658af2af3f383a5259b41ba7be1e8d819d059
720b4189f9d5a20ce0887078fb534ca33922f03a3313b255fdad35a685eceaef13550da5e3884e43b4e828ba98a77025e5191d7596c5403b5bac1902aa8564d1
080713d960f5a01add34eb1a2987ad5df7742319394d34573dd35015d935ed2a66ccb06c036bb13c5f93d7582d430c9aa677f854bad725b7bed4bab57d42d625
20e059fc2c5df70c0d41a3b69acca026196fcab0d4ecc5a8d93b960b3c85da599a84a6fa95a5dbb5b8653dc23a1d0c9eabf383dd7ad5c2d078b9af549156df3d
f44f136c700fc4a30d2f81675470954af8f09020d810f5d49e24950db845ee8bc5ad0147ce2c210df741c16f7a41c90f72859adfc97965af90abf9cd72aee9fb
e562c72f16daadd243682c228c8a7efacda50bafa2e87cf1e5458d6f7c7d89966fdb2e0d599467eaeb4a5e11575f5f8aa5ed5f5f1c02a2f3a052ead6cbf55625
572f37bb39afddaae5ea41a5956b57826abbdb0efc5abdfbd0758e14d86b9603afd2a9e52ac520c8799582a45fabe7aa5ea9d4f4aacd5ac76b3e5c6c6360e5a9
7c2c6201e155bc76ff010000ffff0300504b0304140006000800000021000dd1909fb60000001b010000270000007468656d652f7468656d652f5f72656c732f
7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f78277086f6fd3ba109126dd88d0add40384e4350d363f2451eced0dae2c082e8761be
9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89d93b64b060828e6f37ed1567914b284d262452282e3198720e274a939cd08a54f980
ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd5001996509affb3fd381a89672f1f165dfe514173d9850528a2c6cce0239baa4c04ca5b
babac4df000000ffff0300504b01022d0014000600080000002100e9de0fbfff0000001c0200001300000000000000000000000000000000005b436f6e74656e
745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6a7e7c0000000360100000b00000000000000000000000000300100005f72656c732f
2e72656c73504b01022d00140006000800000021006b799616830000008a0000001c00000000000000000000000000190200007468656d652f7468656d652f74
68656d654d616e616765722e786d6c504b01022d0014000600080000002100aa5225dfc60600008b1a00001600000000000000000000000000d6020000746865
6d652f7468656d652f7468656d65312e786d6c504b01022d00140006000800000021000dd1909fb60000001b0100002700000000000000000000000000d00900007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d010000cb0a00000000}
{\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d
617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169
6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363
656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e}
{\*\latentstyles\lsdstimax376\lsdlockeddef0\lsdsemihiddendef0\lsdunhideuseddef0\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 1;
\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 2;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 3;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 4;
\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 5;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 6;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7;
\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 1;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 5;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 6;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 9;
\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 1;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 2;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 3;
\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 4;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 5;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 6;
\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 7;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 8;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 9;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal Indent;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footnote text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 header;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footer;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index heading;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority35 \lsdlocked0 caption;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 table of figures;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 envelope address;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 envelope return;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footnote reference;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation reference;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 line number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 page number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 endnote reference;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 endnote text;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 table of authorities;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 macro;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 toa heading;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 3;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 3;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 3;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 5;\lsdqformat1 \lsdpriority10 \lsdlocked0 Title;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Closing;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Signature;\lsdsemihidden1 \lsdunhideused1 \lsdpriority1 \lsdlocked0 Default Paragraph Font;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 4;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Message Header;\lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Salutation;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Date;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text First Indent;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text First Indent 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Note Heading;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent 3;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Block Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Hyperlink;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 FollowedHyperlink;\lsdqformat1 \lsdpriority22 \lsdlocked0 Strong;
\lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Document Map;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Plain Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 E-mail Signature;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Top of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Bottom of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal (Web);\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Acronym;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Address;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Cite;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Code;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Definition;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Keyboard;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Preformatted;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Sample;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Typewriter;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Variable;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation subject;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 No List;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 1;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Balloon Text;\lsdpriority39 \lsdlocked0 Table Grid;
\lsdsemihidden1 \lsdlocked0 Placeholder Text;\lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdpriority60 \lsdlocked0 Light Shading;\lsdpriority61 \lsdlocked0 Light List;\lsdpriority62 \lsdlocked0 Light Grid;
\lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdpriority64 \lsdlocked0 Medium Shading 2;\lsdpriority65 \lsdlocked0 Medium List 1;\lsdpriority66 \lsdlocked0 Medium List 2;\lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdpriority68 \lsdlocked0 Medium Grid 2;
\lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdpriority70 \lsdlocked0 Dark List;\lsdpriority71 \lsdlocked0 Colorful Shading;\lsdpriority72 \lsdlocked0 Colorful List;\lsdpriority73 \lsdlocked0 Colorful Grid;\lsdpriority60 \lsdlocked0 Light Shading Accent 1;
\lsdpriority61 \lsdlocked0 Light List Accent 1;\lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;
\lsdsemihidden1 \lsdlocked0 Revision;\lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;
\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;
\lsdpriority72 \lsdlocked0 Colorful List Accent 1;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdpriority62 \lsdlocked0 Light Grid Accent 2;
\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;
\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;
\lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;\lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdpriority62 \lsdlocked0 Light Grid Accent 3;
\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;
\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;\lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;
\lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdpriority60 \lsdlocked0 Light Shading Accent 4;\lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdpriority62 \lsdlocked0 Light Grid Accent 4;
\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;
\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdpriority70 \lsdlocked0 Dark List Accent 4;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;
\lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdpriority61 \lsdlocked0 Light List Accent 5;\lsdpriority62 \lsdlocked0 Light Grid Accent 5;
\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;
\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;\lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;
\lsdpriority72 \lsdlocked0 Colorful List Accent 5;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdpriority61 \lsdlocked0 Light List Accent 6;\lsdpriority62 \lsdlocked0 Light Grid Accent 6;
\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;
\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdpriority70 \lsdlocked0 Dark List Accent 6;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 6;
\lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;\lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis;\lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis;
\lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference;\lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;\lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdsemihidden1 \lsdunhideused1 \lsdpriority37 \lsdlocked0 Bibliography;
\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;\lsdpriority41 \lsdlocked0 Plain Table 1;\lsdpriority42 \lsdlocked0 Plain Table 2;\lsdpriority43 \lsdlocked0 Plain Table 3;\lsdpriority44 \lsdlocked0 Plain Table 4;
\lsdpriority45 \lsdlocked0 Plain Table 5;\lsdpriority40 \lsdlocked0 Grid Table Light;\lsdpriority46 \lsdlocked0 Grid Table 1 Light;\lsdpriority47 \lsdlocked0 Grid Table 2;\lsdpriority48 \lsdlocked0 Grid Table 3;\lsdpriority49 \lsdlocked0 Grid Table 4;
\lsdpriority50 \lsdlocked0 Grid Table 5 Dark;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 1;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 1;
\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 1;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 1;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 1;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 1;
\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 1;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 2;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 2;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 2;
\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 2;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 2;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 2;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 2;
\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 3;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 3;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 3;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 3;
\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 3;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 3;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 3;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 4;
\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 4;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 4;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 4;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 4;
\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 4;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 4;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 5;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 5;
\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 5;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 5;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 5;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 5;
\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 5;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 6;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 6;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 6;
\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 6;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 6;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 6;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 6;
\lsdpriority46 \lsdlocked0 List Table 1 Light;\lsdpriority47 \lsdlocked0 List Table 2;\lsdpriority48 \lsdlocked0 List Table 3;\lsdpriority49 \lsdlocked0 List Table 4;\lsdpriority50 \lsdlocked0 List Table 5 Dark;
\lsdpriority51 \lsdlocked0 List Table 6 Colorful;\lsdpriority52 \lsdlocked0 List Table 7 Colorful;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 1;\lsdpriority47 \lsdlocked0 List Table 2 Accent 1;\lsdpriority48 \lsdlocked0 List Table 3 Accent 1;
\lsdpriority49 \lsdlocked0 List Table 4 Accent 1;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 1;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 1;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 1;
\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 2;\lsdpriority47 \lsdlocked0 List Table 2 Accent 2;\lsdpriority48 \lsdlocked0 List Table 3 Accent 2;\lsdpriority49 \lsdlocked0 List Table 4 Accent 2;
\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 2;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 2;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 2;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 3;
\lsdpriority47 \lsdlocked0 List Table 2 Accent 3;\lsdpriority48 \lsdlocked0 List Table 3 Accent 3;\lsdpriority49 \lsdlocked0 List Table 4 Accent 3;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 3;
\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 3;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 3;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 4;\lsdpriority47 \lsdlocked0 List Table 2 Accent 4;
\lsdpriority48 \lsdlocked0 List Table 3 Accent 4;\lsdpriority49 \lsdlocked0 List Table 4 Accent 4;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 4;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 4;
\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 4;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 5;\lsdpriority47 \lsdlocked0 List Table 2 Accent 5;\lsdpriority48 \lsdlocked0 List Table 3 Accent 5;
\lsdpriority49 \lsdlocked0 List Table 4 Accent 5;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 5;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 5;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 5;
\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 6;\lsdpriority47 \lsdlocked0 List Table 2 Accent 6;\lsdpriority48 \lsdlocked0 List Table 3 Accent 6;\lsdpriority49 \lsdlocked0 List Table 4 Accent 6;
\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 6;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 6;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 6;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Mention;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Smart Hyperlink;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Hashtag;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Unresolved Mention;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Smart Link;}}{\*\datastore 01050000
02000000180000004d73786d6c322e534158584d4c5265616465722e362e3000000000000000000000060000
d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff090006000000000000000000000001000000010000000000000000100000feffffff00000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e500000000000000000000000070a9
46ad264bd901feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000105000000000000}}

View File

@@ -0,0 +1,10 @@
Running this will install the fw and sw at the location below:
C:\Program Files (x86)\IVI Foundation\IVI\Microsoft.NET\Framework32\v4.6\Raytheon.GuidedElectronicsUnit 1.2.5
The sw/source that gets installed has been relocated to ComposableTestSoftware\Source\Common\COTS\Teradyne_SDLC
- Modifications to this source should be made through the ComposableTestSoftware ADS repo
Nimbus SDK:
Then in VS under Tools/Options expand NuGet Package Manager and select Package Sources.
Click the add button and enter that same path in the source box (or just browse to the file).
You should be able to open the project after that.

View File

@@ -0,0 +1,28 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct AuroraStatus
{
public bool SoftError { get; internal set; }
public bool HardError { get; internal set; }
public bool LinkUp { get; internal set; }
public bool ChannelUp { get; internal set; }
public int LaneUp { get; internal set; }
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8" ?>
<enum_translation_config source="Raytheon.GuidedElectronicsUnit" version="1.0">
<map enum_id="ControlState">
<entry name="Disabled" value="0" />
<entry name="Enabled" value="1" />
</map>
<map enum_id="SdlcControlBits">
<entry name="TxInhibit" value="0x1" />
<entry name="TxAbort" value="2" />
<entry name="TxEndFrame" value="4" />
<entry name="RxInhibit" value="8" />
<entry name="RxAbort" value="16" />
<entry name="InternalLoopback" value="32" />
<entry name="EchoLoopback" value="64" />
<entry name="StationAddress" value="-16777216" />
</map>
<map enum_id="SdlcStatusBits">
<entry name="TxActive" value="0x1" />
<entry name="TxFifoFull" value="0x2" />
<entry name="TxFifoEmpty" value="0x4" />
<entry name="TxFifoOverflowed" value="0x8" />
<entry name="RxActive" value="0x10" />
<entry name="RxFifoEmpty" value="0x40" />
<entry name="RxFifoFull" value="0x20" />
<entry name="RxFifoOverflowed" value="0x80" />
<entry name="RxMessageDone" value="0x200" />
<entry name="RxMessageFcsError" value="0x400" />
<entry name="RxMessageAborted" value="0x800" />
<entry name="InternalLoopback" value="0x1000" />
<entry name="EchoLoopback" value="0x2000" />
<entry name="TxInhibited" value="0x4000" />
<entry name="RxInhibited" value="0x8000" />
<entry name="DrOverrunError" value="0x10000" />
<entry name="RxBadAddressError" value="256" />
</map>
<map enum_id="ImuConfigure">
<entry name="TxEnable" value="1" />
<entry name="RxEnable" value="2" />
<entry name="TxRxEnable" value="3" />
<entry name="KwTestMode" value="4" />
<entry name="TxEnableKwTestMode" value="5" />
</map>
<map enum_id="EdaConfigure">
<entry name="EdaCVReady" value="8" />
<entry name="EdaCVReadyValid" value="4" />
<entry name="EdaPbitPass" value="2" />
<entry name="EdaPbitValid" value="1" />
<entry name="EdaCVClearPassFailValid" value="16" />
<entry name="EdaCVClearPassFail" value="32" />
<entry name="EdaNumCVClear" value="960" />
<entry name="KwdlRFTemp" value="16711680" />
<entry name="KwdlMbitPass" value="16777216" />
<entry name="KwdlMbitComplete" value="33554432" />
<entry name="KwdlPbitPass" value="67108864" />
<entry name="KwdlState" value="939524096" />
<entry name="KwdlLinkUp" value="1073741824" />
</map>
<map enum_id="ImuMessageWord">
<entry name="VelocityDeltaX" value="0" />
<entry name="VelocityDeltaY" value="1" />
<entry name="VelocityDeltaZ" value="2" />
<entry name="AngleDeltaX" value="3" />
<entry name="AngleDeltaY" value="4" />
<entry name="AngleDeltaZ" value="5" />
<entry name="StatusSummaryWord" value="6" />
<entry name="ModeMuxId" value="7" />
<entry name="MuxDataWord" value="8" />
<entry name="RawGyroCountX" value="9" />
<entry name="RawGyroCountY" value="10" />
<entry name="RawGyroCountZ" value="11" />
</map>
<map enum_id="PllState">
<entry name="Unlocked" value="0" />
<entry name="Locked" value="1" />
</map>
<map enum_id="ResetState">
<entry name="Inactive" value="0" />
<entry name="Active" value="1" />
</map>
<map enum_id="EdaDataBusMode">
<entry name="MTD" value="1" />
<entry name="KWDL" value="2" />
<entry name="Invalid0" value="0" />
<entry name="Invalid3" value="3" />
</map>
<map enum_id="EdaPowerMode">
<entry name="Enabled" value="1" />
<entry name="Disabled" value="2" />
<entry name="Invalid3" value="3" />
<entry name="Invalid0" value="0" />
</map>
<map enum_id="KwdlLocation">
<entry name="KW" value="0" />
<entry name="GS" value="1" />
</map>
<map enum_id="EdaBus">
<entry name="CS" value="1" />
<entry name="PT" value="0" />
</map>
<map enum_id="EdaChannel">
<entry name="A" value="0" />
<entry name="B" value="1" />
</map>
<map enum_id="KwdlState">
<entry name="Standby" value="0" />
<entry name="Tactical" value="1" />
<entry name="Maintenance" value="2" />
<entry name="Reprogram" value="3" />
<entry name="KA" value="4" />
<entry name="Invalid" value="7" />
</map>
<map enum_id="SignalState">
<entry name="Low" value="0" />
<entry name="High" value="1" />
</map>
<map enum_id="RegisterHalf">
<entry name="Lower" value="0"/>
<entry name="Upper" value="1"/>
</map>
</enum_translation_config>

View File

@@ -0,0 +1,256 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using FunctionCalls = Teradyne.Instruments.Logging.Adapters.FunctionCalls;
using Messaging = Teradyne.Instruments.Logging.Adapters.Messaging;
using Teradyne.Instruments.Logging.Client;
namespace Raytheon.GuidedElectronicsUnit
{
public class CallLoggingHelper : IDisposable
{
private static string s_source = " Raytheon.GuidedElectronicsUnit";
private static CallLoggingHelper s_helper = null;
private FunctionCalls.ProducerAdapter _callAdapter;
private Messaging.ProducerAdapter _messageAdapter;
static CallLoggingHelper()
{
if (s_helper != null)
return;
s_helper = new CallLoggingHelper();
}
private CallLoggingHelper()
{
_callAdapter = new FunctionCalls.ProducerAdapter();
_messageAdapter = new Messaging.ProducerAdapter();
}
public static bool IsLoggingEnabled()
{
return
s_helper._callAdapter.IsFunctionCallLoggingEnabled(s_source) ||
s_helper._callAdapter.IsFunctionReturnLoggingEnabled(s_source) ||
s_helper._messageAdapter.IsMessageLoggingEnabled(s_source);
}
private bool _enumHandlerRegistered = false;
private static void RegisterEnumHandler()
{
if (s_helper._enumHandlerRegistered)
return;
var assembly = typeof(CallLoggingHelper).Assembly;
//var resourceNames = assembly.GetManifestResourceNames();
var stream = assembly.GetManifestResourceStream("Raytheon.GuidedElectronicsUnit.CallLoggingEnumMap.xml");
var doc = new System.Xml.XmlDocument();
try
{
if (stream != null)
doc.Load(stream);
}
catch
{
}
var xml = doc.OuterXml;
LoggingTimestamp ts = new LoggingTimestamp();
FunctionCalls.LoggingDataEnumTranslationConfiguration enumConfig =
new FunctionCalls.LoggingDataEnumTranslationConfiguration(ts, xml);
s_helper._callAdapter.ConfigureEnumTranslationForConsumers(enumConfig, s_source);
s_helper._enumHandlerRegistered = true;
}
private static Tuple<FunctionCalls.LoggingDataParameterType, byte[], string, int> ConvertToLoggingData(object value)
{
FunctionCalls.LoggingDataParameterType loggingType = FunctionCalls.LoggingDataParameterType.None;
byte[] loggingData;
string enumName = string.Empty;
int arrayLength = 0;
if (value == null)
{
loggingData = null;
}
else
{
Type t = value.GetType();
if (t.IsArray)
{
var arrayValue = value as Array;
//if (t.GetElementType() == typeof(Channel))
//{
// Channel[] channels = arrayValue as Channel[];
// int[] channelIndexes = new int[channels.Length];
// for (int c = 0; c < channels.Length; c++)
// channelIndexes[c] = channels[c].IndexOnInstrument;
// loggingType = FunctionCalls.LoggingDataParameterType.ViInt32;
// loggingData = new byte[arrayValue.Length * sizeof(int)];
// Buffer.BlockCopy(channelIndexes, 0, loggingData, 0, loggingData.Length);
//}
//else
{
int sizeOfElement = sizeof(int);
var elementType = t.GetElementType().UnderlyingSystemType;
loggingType = FunctionCalls.LoggingDataParameterType.ViInt32;
if (elementType == typeof(bool))
{
sizeOfElement = sizeof(short);
loggingType = FunctionCalls.LoggingDataParameterType.ViBoolean;
}
else if (elementType == typeof(double))
{
sizeOfElement = sizeof(double);
loggingType = FunctionCalls.LoggingDataParameterType.ViReal64;
}
loggingData = new byte[arrayValue.Length * sizeOfElement];
Buffer.BlockCopy(arrayValue, 0, loggingData, 0, loggingData.Length);
arrayLength = arrayValue.Length;
}
}
else
{
//if (t == typeof(Channel))
//{
// loggingType = FunctionCalls.LoggingDataParameterType.ViInt32;
// loggingData = BitConverter.GetBytes(((Channel)value).IndexOnInstrument);
//}
/*else*/ if (t.IsEnum)
{
loggingType = FunctionCalls.LoggingDataParameterType.ViInt32;
loggingData = BitConverter.GetBytes((int)value);
enumName = t.Name;
}
else if (t.UnderlyingSystemType == typeof(int))
{
loggingType = FunctionCalls.LoggingDataParameterType.ViInt32;
loggingData = BitConverter.GetBytes((int)value);
}
else if (t.UnderlyingSystemType == typeof(bool))
{
loggingType = FunctionCalls.LoggingDataParameterType.ViBoolean;
short booleanValue = (short)(((bool)value) ? 1 : 0);
loggingData = BitConverter.GetBytes(booleanValue);
}
else if (t.UnderlyingSystemType == typeof(double))
{
loggingType = FunctionCalls.LoggingDataParameterType.ViReal64;
loggingData = BitConverter.GetBytes((double)value);
}
else if (t.UnderlyingSystemType == typeof(string))
{
loggingType = FunctionCalls.LoggingDataParameterType.ViString;
loggingData = Encoding.ASCII.GetBytes(value.ToString());
}
else
{
loggingType = FunctionCalls.LoggingDataParameterType.ViString;
loggingData = Encoding.ASCII.GetBytes(value.ToString());
}
}
}
return new Tuple<FunctionCalls.LoggingDataParameterType, byte[], string, int>(loggingType, loggingData, enumName, arrayLength);
}
private static List<FunctionCalls.LoggingDataParameter> CreateParameteList(object[] args)
{
RegisterEnumHandler();
List<FunctionCalls.LoggingDataParameter> parameters = new List<FunctionCalls.LoggingDataParameter>();
for (int i = 0; i < args.Length; i += 2)
{
string name = args[i].ToString();
object value = args[i + 1];
var loggingData = ConvertToLoggingData(value);
if (value.GetType().IsArray)
{
var parameter = new FunctionCalls.LoggingDataArrayParameter(name,
loggingData.Item1, loggingData.Item4, loggingData.Item2, loggingData.Item3);
parameters.Add(parameter);
}
else
{
var parameter = new FunctionCalls.LoggingDataParameter(name,
loggingData.Item1, loggingData.Item2, loggingData.Item3);
parameters.Add(parameter);
}
}
return parameters;
}
public static void FunctionStart(Type t, string functionName, params object[] args)
{
if (!s_helper._callAdapter.IsFunctionCallLoggingEnabled(s_source))
return;
LoggingTimestamp ts = new LoggingTimestamp();
List<FunctionCalls.LoggingDataParameter> parameters = CreateParameteList(args);
FunctionCalls.LoggingDataFunctionCall functionCall = new FunctionCalls.LoggingDataFunctionCall($"{t.FullName}.{functionName}", ts, parameters);
s_helper._callAdapter.NotifyConsumers(functionCall, s_source);
}
public static void FunctionEnd(Type t, string functionName, object returnValue, params object[] outOrRefArgs)
{
if (!s_helper._callAdapter.IsFunctionReturnLoggingEnabled(s_source))
return;
LoggingTimestamp ts = new LoggingTimestamp();
List<FunctionCalls.LoggingDataParameter> parameters = CreateParameteList(outOrRefArgs);
var loggingReturnData = ConvertToLoggingData(returnValue);
FunctionCalls.LoggingDataFunctionReturn functionReturn = new FunctionCalls.LoggingDataFunctionReturn($"{t.FullName}.{functionName}", ts,
loggingReturnData.Item1, loggingReturnData.Item2, parameters, loggingReturnData.Item3);
s_helper._callAdapter.NotifyConsumers(functionReturn, s_source);
}
public static void Message(string message)
{
if (!s_helper._messageAdapter.IsMessageLoggingEnabled(s_source))
return;
s_helper._messageAdapter.NotifyConsumers(message, s_source);
}
private bool _disposedValue;
protected virtual void Dispose(bool disposing)
{
if (!_disposedValue)
{
if (disposing)
{
_callAdapter?.Shutdown();
}
s_helper = null;
_disposedValue = true;
}
}
~CallLoggingHelper()
{
// Do not change this code. Put cleanup code in 'Dispose(bool disposing)' method
Dispose(disposing: false);
}
public void Dispose()
{
// Do not change this code. Put cleanup code in 'Dispose(bool disposing)' method
Dispose(disposing: true);
GC.SuppressFinalize(this);
}
}
}

View File

@@ -0,0 +1,48 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
// This file is used to customize how the driver installer registers the IVI.NET driver in the IVI Configuration Store.
// Several attributes can be used to specify additional entires that should be placed in the end user's IVI Configuration Store
// at driver installation time.
// Use the LogicalName attribute to have your driver installer create a LogicalName entry in the IVI Configuration Store.
// This attribute can be applied multiple times to install multiple logical names.
//
// [assembly: LogicalName("TODO:LogicalName", "TODO:DriverSessionName")]
//
// Use the DriverSession attribute to have your driver installer create a DriverSession entry in the IVI Configuration Store.
// This attribute can be applied multiple times to install multiple driver sessions.
//
// [assembly: DriverSession("TODO:DriverSessionName",
// Cache = false,
// DriverSetup = "TODO",
// HardwareAsset = "TODO:HardwareAssetName",
// InterchangeCheck = false,
// QueryInstrumentStatus = true,
// RangeCheck = false,
// RecordCoercions = false,
// Simulate = false)]
//
// Use the HardwareAsset attribute to have your driver installer create a HardwareAsset entry in the IVI Configuration Store.
// This attribute can be applied multiple times to install multiple hardware assets.
//
// [assembly: HardwareAsset("TODO:HardwareAssetName", "TODO:ResourceDescriptor")]
//
// Use the ConfigurableInitialSetting attribute to have your driver installer create a ConfigurableInitialSetting entry in the IVI Configuration Store.
// This attribute can be applied multiple times to install multiple ConfigurableInitialSetting entries.
//
// [assembly: ConfigurableInitialSetting("TODO:KeyName", 0 /*TODO:Value*/, UsedInSession.Required, "TODO:Description")]
//

View File

@@ -0,0 +1,68 @@
<IviConfigStore xmlns:dt="urn:schemas-microsoft-com:datatypes">
<Name>IVI Configuration Server</Name>
<Description>The IVI Configuration Server allows access to and modification of an IVI configuration store</Description>
<Vendor>IVI Foundation, Inc</Vendor>
<Revision>1.3.1.0</Revision>
<SpecificationMajorVersion>1</SpecificationMajorVersion>
<SpecificationMinorVersion>0</SpecificationMinorVersion>
<MasterLocation></MasterLocation>
<ProcessDefaultLocation/>
<ActualLocation></ActualLocation>
<PublishedAPIs>
<IviPublishedAPI id="p4">
<Name>IviDriver</Name>
<MajorVersion>1</MajorVersion>
<MinorVersion>0</MinorVersion>
<Type>IVI.NET</Type>
</IviPublishedAPI>
</PublishedAPIs>
<SoftwareModules>
<IviSoftwareModule id="p1">
<Name>Raytheon.GuidedElectronicsUnit v1.2.5 Fx46</Name>
<Description>IVI.NET Driver for GuidedElectronicsUnit</Description>
<DataComponents>
<IviStructure id="p2">
<Name>Configurable Initial Settings</Name>
<Description/>
<ReadOnly>1</ReadOnly>
<UsedInSession>Required</UsedInSession>
<Type>Structure</Type>
<HelpContextID>0</HelpContextID>
<HelpFilePath/>
<SoftwareModuleKey/>
<DataComponents>
<IviString id="p3">
<Name>Model</Name>
<Description>Default model used during simulation</Description>
<ReadOnly>1</ReadOnly>
<UsedInSession>Required</UsedInSession>
<Type>String</Type>
<HelpContextID>0</HelpContextID>
<HelpFilePath/>
<SoftwareModuleKey/>
<Value>HSSub6020a, HSSub9010</Value>
</IviString>
</DataComponents>
</IviStructure>
</DataComponents>
<ModulePath></ModulePath>
<Prefix></Prefix>
<ProgID></ProgID>
<SupportedInstrumentModels>HSSub6020a, HSSub9010</SupportedInstrumentModels>
<PhysicalNames>
</PhysicalNames>
<PublishedAPIs>
<IviPublishedAPI idref="p4"/>
</PublishedAPIs>
<AssemblyQualifiedClassName>Raytheon.GuidedElectronicsUnit.GuidedElectronicsUnit, Raytheon.GuidedElectronicsUnit.Fx46, Version=1.2.5.0, Culture=neutral, PublicKeyToken=65cff6f5578f3c89</AssemblyQualifiedClassName>
<ModulePath64></ModulePath64>
</IviSoftwareModule>
</SoftwareModules>
<HardwareAssets>
</HardwareAssets>
<DriverSessions>
</DriverSessions>
<Sessions/>
<LogicalNames>
</LogicalNames>
</IviConfigStore>

View File

@@ -0,0 +1,55 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct CvcwData
{
public CvcwData(uint regValue)
{
Size = (int)(regValue & (uint)BitMask.Size) >> (int)Bit.Size;
Data3 = Convert.ToByte((regValue & (uint)BitMask.Data3) >> (int)Bit.Data3);
Data2 = Convert.ToByte((regValue & (uint)BitMask.Data2) >> (int)Bit.Data2);
Data1 = Convert.ToByte((regValue & (uint)BitMask.Data1) >> (int)Bit.Data1);
}
#region Private Members
private enum Bit
{
Size = 24,
Data3 = 16,
Data2 = 8,
Data1 = 0
}
private enum BitMask
{
Size = 0x0F00_0000,
Data3 = 0x00FF_0000,
Data2 = 0x0000_FF00,
Data1 = 0x0000_00FF
}
#endregion
public int Size { get; internal set; }
public byte Data1 { get; internal set; }
public byte Data2 { get; internal set; }
public byte Data3 { get; internal set; }
}
}

View File

@@ -0,0 +1,82 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct EdaConfig
{
public EdaConfig(uint status)
{
KwdlLinkUp = Convert.ToBoolean(status & (uint)EdaConfigure.KwdlLinkUp);
KwdlState = (KwdlState)((status & (uint)EdaConfigure.KwdlState) >> (int)Bit.KwdlState);
KwdlPbitPass = Convert.ToBoolean(status & (uint)EdaConfigure.KwdlPbitPass);
KwdlMbitComplete = Convert.ToBoolean(status & (uint)EdaConfigure.KwdlMbitComplete);
KwdlMbitPass = Convert.ToBoolean(status & (uint)EdaConfigure.KwdlMbitPass);
KwdlRFTemp = Convert.ToInt32((status & (uint)EdaConfigure.KwdlRFTemp) >> (int)Bit.KwdlRFTemp);
EdaNumCVClear = Convert.ToInt32((status & (uint)EdaConfigure.EdaNumCVClear) >> (int)Bit.EdaNumCVClear);
EdaCVClearPassFail = Convert.ToBoolean(status & (uint)EdaConfigure.EdaCVClearPassFail);
EdaCVClearPassFailValid = Convert.ToBoolean(status & (uint)EdaConfigure.EdaCVClearPassFailValid);
EdaCVReady = Convert.ToBoolean(status & (uint)EdaConfigure.EdaCVReady);
EdaCVReadyValid = Convert.ToBoolean(status & (uint)EdaConfigure.EdaCVReadyValid);
EdaPbitPass = Convert.ToBoolean(status & (uint)EdaConfigure.EdaPbitPass);
EdaPbitValid = Convert.ToBoolean(status & (uint)EdaConfigure.EdaPbitValid);
}
#region Internal Members
internal enum Bit
{
EdaPbitValid = 0,
EdaPbitPass = 1,
EdaCVReadyValid = 2,
EdaCVReady = 3,
EdaCVClearPassFailValid = 4,
EdaCVClearPassFail = 5,
EdaNumCVClear = 6,
KwdlRFTemp = 16,
KwdlMbitPass = 24,
KwdlMbitComplete = 25,
KwdlPbitPass = 26,
KwdlState = 27,
KwdlLinkUp = 30
}
#endregion
public int KwdlRFTemp { get; set; }
public bool EdaPbitValid { get; set; }
public bool EdaCVReadyValid { get; set; }
public bool EdaPbitPass { get; set; }
public bool EdaCVReady { get; set; }
public bool EdaCVClearPassFailValid { get; set; }
public bool EdaCVClearPassFail { get; set; }
public int EdaNumCVClear { get; set; }
public bool KwdlMbitPass { get; set; }
public bool KwdlMbitComplete { get; set; }
public bool KwdlPbitPass { get; set; }
public Raytheon.GuidedElectronicsUnit.KwdlState KwdlState { get; set; }
public bool KwdlLinkUp { get; set; }
}
}

View File

@@ -0,0 +1,58 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct EdaStatus
{
public EdaStatus(uint status)
{
CryptoGoValue = Convert.ToBoolean(status & (uint)BitMask.CryptoGoValue);
XcvrPowerMode = (EdaPowerMode)((status & (uint)BitMask.XcvrPowerMode) >> (int)Bit.XcvrPowerMode);
DataBusMode = (EdaDataBusMode)((status & (uint)BitMask.DataBusMode) >> (int)Bit.DataBusMode);
LowPowerMode = (EdaPowerMode)((status & (uint)BitMask.LowPowerMode) >> (int)Bit.LowPowerMode);
TerminalId = (int)((status & (uint)BitMask.TerminalId) >> (int)Bit.TerminalId);
}
#region Private Members
private enum BitMask
{
CryptoGoValue = 0x0000_0800,
XcvrPowerMode = 0x0000_0300,
DataBusMode = 0x0000_0030,
LowPowerMode = 0x0000_0003,
TerminalId = 0x0000_F000
}
private enum Bit
{
LowPowerMode = 0,
DataBusMode = 4,
XcvrPowerMode = 8,
TerminalId = 12
}
#endregion
public bool CryptoGoValue { get; internal set; }
public EdaPowerMode XcvrPowerMode { get; internal set; }
public EdaDataBusMode DataBusMode { get; internal set; }
public EdaPowerMode LowPowerMode { get; internal set; }
public int TerminalId { get; internal set; }
}
}

View File

@@ -0,0 +1,44 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct EmStatus
{
public EmStatus(uint regValue)
{
GeuClock = (SignalState)((regValue & (uint)BitMask.GeuClock) >> (int)BitIdx.GeuClock);
EmReset = (SignalState)((regValue & (uint)BitMask.EmReset) >> (int)BitIdx.EmReset);
}
#region Private Members
private enum BitIdx
{
GeuClock = 0x1,
EmReset = 0x0
}
private enum BitMask
{
GeuClock = 0x2,
EmReset = 0x1
}
#endregion
public Raytheon.GuidedElectronicsUnit.SignalState GeuClock { get; internal set; }
public Raytheon.GuidedElectronicsUnit.SignalState EmReset { get; internal set; }
}
}

View File

@@ -0,0 +1,161 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Raytheon.GuidedElectronicsUnit;
namespace Raytheon.GuidedElectronicsUnit
{
public enum ControlState
{
Disabled = 0,
Enabled = 1
}
public enum SdlcControlBits
{
TxInhibit = 0x1,
TxAbort = 2,
TxEndFrame = 4,
RxInhibit = 8,
RxAbort = 16,
InternalLoopback = 32,
EchoLoopback = 64,
StationAddress = -16777216
}
public enum SdlcStatusBits
{
TxActive = 0x1,
TxFifoFull = 0x2,
TxFifoEmpty = 0x4,
TxFifoOverflowed = 0x8,
RxActive = 0x10,
RxFifoEmpty = 0x40,
RxFifoFull = 0x20,
RxFifoOverflowed = 0x80,
RxMessageDone = 0x200,
RxMessageFcsError = 0x400,
RxMessageAborted = 0x800,
InternalLoopback = 0x1000,
EchoLoopback = 0x2000,
TxInhibited = 0x4000,
RxInhibited = 0x8000,
DrOverrunError = 0x10000,
RxBadAddressError = 256
}
public enum ImuConfigure
{
TxEnable = 1,
RxEnable = 2,
KwTestMode = 4
}
public enum EdaConfigure
{
EdaCVReady = 8,
EdaCVReadyValid = 4,
EdaPbitPass = 2,
EdaPbitValid = 1,
EdaCVClearPassFailValid = 16,
EdaCVClearPassFail = 32,
EdaNumCVClear = 960,
KwdlRFTemp = 16711680,
KwdlMbitPass = 16777216,
KwdlMbitComplete = 33554432,
KwdlPbitPass = 67108864,
KwdlState = 939524096,
KwdlLinkUp = 1073741824
}
public enum ImuMessageWord
{
VelocityDeltaX = 0,
VelocityDeltaY = 1,
VelocityDeltaZ = 2,
AngleDeltaX = 3,
AngleDeltaY = 4,
AngleDeltaZ = 5,
StatusSummaryWord = 6,
ModeMuxId = 7,
MuxDataWord = 8,
RawGyroCountX = 9,
RawGyroCountY = 10,
RawGyroCountZ = 11
}
public enum PllState
{
Unlocked = 0,
Locked = 1
}
public enum ResetState
{
Inactive = 0,
Active = 1
}
public enum EdaDataBusMode
{
MTD = 1,
KWDL = 2,
Invalid0 = 0,
Invalid3 = 3
}
public enum EdaPowerMode
{
Enabled = 1,
Disabled = 2,
Invalid3 = 3,
Invalid0 = 0
}
public enum KwdlLocation
{
KW = 0,
GS = 1
}
public enum EdaBus
{
CS = 1,
PT = 0
}
public enum EdaChannel
{
A = 0,
B = 1
}
public enum KwdlState
{
Standby = 0,
Tactical = 1,
Maintenance = 2,
Reprogram = 3,
KA = 4,
Invalid = 7
}
public enum SignalState
{
Low = 0,
High = 1
}
public enum AutoForwardBufferCapacity
{
HalfFull = 1,
Full = 2,
Empty = 0
}
}

View File

@@ -0,0 +1,25 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct FirmwareInformation
{
public ushort ApplicationId { get; internal set; }
public ushort CustomerId { get; internal set; }
public uint RevisionId { get; internal set; }
public ushort Constant { get; internal set; }
}
}

View File

@@ -0,0 +1,70 @@
<Project>
<PropertyGroup Label="Globals">
<SccProjectName>SAK</SccProjectName>
<SccProvider>SAK</SccProvider>
<SccAuxPath>SAK</SccAuxPath>
<SccLocalPath>SAK</SccLocalPath>
<Platforms>x86</Platforms>
</PropertyGroup>
<PropertyGroup>
<NimbusVersion>5.1.5</NimbusVersion>
<NimbusBuildToolsMinimumVersion>5.1.0</NimbusBuildToolsMinimumVersion>
<NimbusProjectType>IviNetDriverProject</NimbusProjectType>
<DriverName>GuidedElectronicsUnit</DriverName>
<DriverVersion>1.2.5.0</DriverVersion>
<Company>Raytheon</Company>
<Description>IVI.NET Driver for GuidedElectronicsUnit</Description>
<Copyright>Copyright 2021, Raytheon</Copyright>
<IoProvider>None</IoProvider>
<RootNamespace>Raytheon.GuidedElectronicsUnit</RootNamespace>
<TargetFramework>net46</TargetFramework>
<SignAssembly>true</SignAssembly>
<Version>1.2.5.0</Version>
<AssemblyVersion>1.2.5.0</AssemblyVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x86'">
<DriverVersion>1.2.5.0</DriverVersion>
<Copyright>Copyright 2021, Raytheon</Copyright>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x86'">
<DriverVersion>1.2.5.0</DriverVersion>
</PropertyGroup>
<Import Project="Sdk.props" Sdk="MindWorks.Nimbus.BuildTools" />
<ItemGroup>
<None Remove="CallLoggingEnumMap.xml" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="CallLoggingEnumMap.xml" />
</ItemGroup>
<ItemGroup>
<None Include="..\GuidedElectronicsUnit.design" Link="GuidedElectronicsUnit.design" />
</ItemGroup>
<ItemGroup>
<Reference Include="FunctionCallsLoggingAdapter.Common">
<HintPath>..\..\..\..\..\..\..\..\..\Program Files (x86)\Teradyne\Shared\Assemblies\Logging\FunctionCallsLoggingAdapter.Common.dll</HintPath>
</Reference>
<Reference Include="FunctionCallsLoggingAdapter.Producer">
<HintPath>..\..\..\..\..\..\..\..\..\Program Files (x86)\Teradyne\Shared\Assemblies\Logging\FunctionCallsLoggingAdapter.Producer.dll</HintPath>
</Reference>
<Reference Include="Ivi.Driver">
<HintPath>..\..\..\..\..\..\..\..\..\..\Program Files (x86)\IVI Foundation\IVI\Microsoft.NET\Framework32\v2.0.50727\IviFoundationSharedComponents 1.4.1\Ivi.Driver.dll</HintPath>
</Reference>
<Reference Include="MessagingLoggingAdapter.Common">
<HintPath>..\..\..\..\..\..\..\..\..\Program Files (x86)\Teradyne\Shared\Assemblies\Logging\MessagingLoggingAdapter.Common.dll</HintPath>
</Reference>
<Reference Include="MessagingLoggingAdapter.Producer">
<HintPath>..\..\..\..\..\..\..\..\..\Program Files (x86)\Teradyne\Shared\Assemblies\Logging\MessagingLoggingAdapter.Producer.dll</HintPath>
</Reference>
<Reference Include="Teradyne.Instruments.HighSpeed.SubsystemDriver">
<HintPath>..\..\..\..\..\..\..\..\..\Program Files (x86)\IVI Foundation\IVI\Drivers\terHsi\References\Teradyne.Instruments.HighSpeed.SubsystemDriver.dll</HintPath>
</Reference>
<Reference Include="Teradyne.Instruments.Logging.Client.Common">
<HintPath>..\..\..\..\..\..\..\..\..\Program Files (x86)\Teradyne\Shared\Assemblies\Logging\Teradyne.Instruments.Logging.Client.Common.dll</HintPath>
</Reference>
<Reference Include="Teradyne.Instruments.Logging.Client.Producer">
<HintPath>..\..\..\..\..\..\..\..\..\Program Files (x86)\Teradyne\Shared\Assemblies\Logging\Teradyne.Instruments.Logging.Client.Producer.dll</HintPath>
</Reference>
</ItemGroup>
<Import Project="Sdk.targets" Sdk="MindWorks.Nimbus.BuildTools" />
</Project>

View File

@@ -0,0 +1,685 @@
using Microsoft.Win32;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using Teradyne.Instruments.HighSpeed.SubsystemDriver;
using Teradyne.Instruments.Logging.Client;
namespace Raytheon.GuidedElectronicsUnit
{
public abstract class HardwareSession
{
protected readonly object componentLock = new();
protected const int auroraBusClkLockedBitIndex = 18;
protected const int localBusPllLockedBitIndex = 17;
protected const int pxiePllLockedBitIndex = 16;
protected const int pxiePllEnableBitIndex = 0;
internal terHsi TerHsiSession { get; set; }
internal bool IsSimulated { get; set; }
internal void InitSession()
{
CallLoggingHelper.FunctionStart(GetType(), "InitSession");
try
{
uint registerValue = 0;
bool needToReset = false;
// Check that the FPGA is the right type.
try
{
registerValue = ReadRegister16(RegisterConstant, RegisterHalf.Upper);
}
catch
{
// Assume that if there's any error, we'll need to reset the instrument.
needToReset = true;
}
if ((registerValue == 0) || (registerValue == 0xFACE))
{
// If the value of the register is one of these values (depending
// on whether it's a core instrument or IOXI), then that means
// we've got an unloaded TDF. We'll need a reset to get the FW
// loaded.
needToReset = true;
}
else if (registerValue != ApplicationConstant)
{
throw new InvalidOperationException("Invalid Target device.");
}
else
{
var customerAppId = ReadRegister(RegisterApplicationCustomerId);
var revisionId = ReadRegister(RegisterRevisionId);
needToReset = (
((customerAppId & 0xFFFF) != ExpectedCustomerId) ||
(((customerAppId >> 16) & 0xFFFF) != ExpectedApplicationId) ||
(revisionId != ExpectedRevisionId));
}
if (needToReset)
{
LoadFirmware();
GetInitialDefaults();
SetDefaults();
}
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "InitSession", null);
}
}
#region Protected Properties
protected string SerialNumber => TerHsiSession.AssemblySerial;
protected int Slot => TerHsiSession.InstrumentInfo.SlotNumber;
protected int Chassis => TerHsiSession.InstrumentInfo.ChassisNumber;
protected string Descriptor => TerHsiSession.ResourceDescriptor;
protected ushort ApplicationConstant { get; set; }
protected string ApplicationPrefix { get; set; }
protected uint ExpectedApplicationId { get; set; }
protected uint ExpectedCustomerId { get; set; }
protected uint ExpectedRevisionId { get; set; }
protected uint RegisterConstant { get; set; }
protected uint RegisterApplicationCustomerId { get; set; }
protected uint RegisterRevisionId { get; set; }
protected uint RegisterPllStatus { get; set; }
protected uint RegisterVccIntDieTemp { get; set; }
protected uint RegisterVccAux { get; set; }
protected bool WordSwap { get; set; }
protected string ChipId { get; set; }
protected int AdcBitCount { get; set; }
protected double DieTemp
{
get
{
CallLoggingHelper.FunctionStart(GetType(), "DieTemp");
double temp = 0;
uint regData = 0;
var mask = 0x03FF0000;
try
{
if (TerHsiSession.IsFioxi)
{
mask = 0x0FFF0000;
}
lock (componentLock)
{
regData = ReadRegister(RegisterVccIntDieTemp);
}
var data = (regData & mask) >> 16;
temp = (data * 503.975 / Math.Pow(2, AdcBitCount)) - 269.15;
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "DieTemp", temp);
}
return temp; // accounting for +-4 degrees accuracy.
}
}
protected double VccInt
{
get
{
CallLoggingHelper.FunctionStart(GetType(), "VccInt");
var mask = 0x03FF;
double vccInt = 0;
try
{
if (TerHsiSession.IsFioxi)
{
mask = 0x0FFF;
}
var regData = ReadRegister(RegisterVccIntDieTemp);
var data = regData & mask;
vccInt = data / Math.Pow(2, AdcBitCount) * 3;
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "VccInt", vccInt);
}
return vccInt;
}
}
protected double VccAux
{
get
{
CallLoggingHelper.FunctionStart(GetType(), "VccAux");
var mask = 0x03FF0000;
double vccAux = 0;
try
{
if (TerHsiSession.IsFioxi)
{
mask = 0x0FFF0000;
}
var regData = ReadRegister(RegisterVccAux);
var data = (regData & mask) >> 16;
vccAux = data * 3 / Math.Pow(2, AdcBitCount);
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "VccAus", vccAux);
}
return vccAux;
}
}
protected const int gsTxFifoSize = 4096;
protected const int imuTxFifoSize = 4096;
protected const int edaAcsTxFifoSize = 4096;
protected const int edaAptTxFifoSize = 4096;
protected enum SdlcInterface
{
GSKW = 0,
IMU = 1,
EDACS = 2,
EDAPT = 3
}
protected uint TerScratch0 { get; set; }
protected uint TerScratch1 { get; set; }
protected uint TerScratch2 { get; set; }
protected uint TerSoftRstVal { get; set; }
protected uint CLversion { get; set; }
protected uint Scratch { get; set; }
protected uint SoftRstVal { get; set; }
protected uint IIemVersion { get; set; }
#endregion
#region Protected Methods
protected virtual void Reset()
{
SetDefaults();
}
protected virtual void GetInitialDefaults()
{
}
protected virtual void SetDefaults()
{
}
protected void LoadFirmware()
{
CallLoggingHelper.FunctionStart(GetType(), "LoadFirmware");
try
{
string firmwareDirectory = string.Empty;
string firmwareFile =
$"{ChipId}_C{ExpectedCustomerId:X4}_A{ExpectedApplicationId:X4}_R{ExpectedRevisionId:X8}.tdf";
string firmwarePath = Path.Combine(@"SOFTWARE\Raytheon\SM3", ApplicationPrefix, "IVI.NET");
object pathValue = string.Empty;
RegistryKey hklm = null;
try
{
hklm = Registry.LocalMachine;
RegistryKey subKey = hklm.OpenSubKey(firmwarePath);
pathValue = subKey.GetValue("DriverPath");
}
catch (NullReferenceException e)
{
throw new NullReferenceException(
string.Format("{0} Registry Key {1}\\{2} missing.", e.Message, hklm.ToString(), firmwarePath));
}
if (pathValue != null)
{
firmwareDirectory = Path.Combine(pathValue.ToString(), "Firmware");
}
firmwarePath = Path.Combine(firmwareDirectory, firmwareFile);
try
{
TerHsiSession.Firmware_Load(firmwarePath);
}
catch (terHsiException e)
{
throw new Exception(
string.Format("Error: 0x{0:X8} - {1} Error trying to load TDF file {2}.", e.Status, e.Message, firmwarePath));
}
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "LoadFirmware", null);
}
}
protected FirmwareInformation GetFirmwareInfo()
{
CallLoggingHelper.FunctionStart(GetType(), "GetPllStatus");
var fwInfo = new FirmwareInformation();
try
{
var registerValue = ReadRegister(RegisterApplicationCustomerId);
fwInfo.CustomerId = (ushort)registerValue;
fwInfo.ApplicationId = (ushort)(registerValue >> 16);
fwInfo.RevisionId = ReadRegister(RegisterRevisionId);
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "GetPllStatus", fwInfo);
}
return fwInfo;
}
protected TdfPllStatus GetPllStatus()
{
CallLoggingHelper.FunctionStart(GetType(), "GetPllStatus");
var pllStatus = new TdfPllStatus();
try
{
var registerValue = ReadRegister(RegisterPllStatus);
pllStatus.AuroraBusClkLocked = (PllState)GetBitValue(registerValue, auroraBusClkLockedBitIndex);
pllStatus.LocalBusPllLocked = (PllState)GetBitValue(registerValue, localBusPllLockedBitIndex);
pllStatus.PxiePllEnable = (ControlState)GetBitValue(registerValue, pxiePllEnableBitIndex);
pllStatus.PxiePllLocked = (PllState)GetBitValue(registerValue, pxiePllLockedBitIndex);
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "GetPllStatus", pllStatus);
}
return pllStatus;
}
internal bool IsBitSet(uint val, int bitIdx)
{
int mask = 0x1 << bitIdx;
if ((val & mask) == 0)
return false;
return true;
}
internal int GetBitValue(uint val, int bitIdx)
{
int mask = 0x1 << bitIdx;
if ((val & mask) == 0)
return 0;
return 1;
}
internal SignalState GetSignalState(uint val, int bitIdx)
{
SignalState state = Raytheon.GuidedElectronicsUnit.SignalState.Low;
int mask = 0x1 << bitIdx;
if ((val & mask) != 0)
state = Raytheon.GuidedElectronicsUnit.SignalState.High;
return state;
}
#region SDLC Methods
protected void SendMessage(SdlcInterface sdlc, uint[] data)
{
CallLoggingHelper.FunctionStart(GetType(), "SendMessage",
nameof(sdlc), sdlc,
nameof(data), data);
uint countRegister = 0;
uint controlRegister = 0;
uint txInfoRegister = 0;
int txFifoSize = 0;
try
{
switch (sdlc)
{
case SdlcInterface.GSKW:
countRegister = RegisterMapHSSub9100.GS_KW__FIFO_WR_CNT;
controlRegister = RegisterMapHSSub9100.GS_KW__CONTROL;
txInfoRegister = RegisterMapHSSub9100.GS_KW__TX_INFO;
txFifoSize = gsTxFifoSize;
break;
case SdlcInterface.IMU:
countRegister = RegisterMapHSSub9100.IMU__FIFO_WR_CNT;
controlRegister = RegisterMapHSSub9100.IMU__CONTROL;
txInfoRegister = RegisterMapHSSub9100.IMU__TX_INFO;
txFifoSize = imuTxFifoSize;
break;
case SdlcInterface.EDACS:
countRegister = RegisterMapHSSub9100.EDA_ACS__FIFO_WR_CNT;
controlRegister = RegisterMapHSSub9100.EDA_ACS__CONTROL;
txInfoRegister = RegisterMapHSSub9100.EDA_ACS__TX_INFO;
txFifoSize = edaAcsTxFifoSize;
break;
case SdlcInterface.EDAPT:
countRegister = RegisterMapHSSub9100.EDA_APT__FIFO_WR_CNT;
controlRegister = RegisterMapHSSub9100.EDA_APT__CONTROL;
txInfoRegister = RegisterMapHSSub9100.EDA_APT__TX_INFO;
txFifoSize = edaAptTxFifoSize;
break;
}
var frequency = Stopwatch.Frequency;
var stopwatch = Stopwatch.StartNew();
//1) Read *__FIFO_WR_CNT register and verify TX FIFO can hold entire message
var wrCnt = ReadRegister(countRegister) & 0x0000FFFF;
if (data.Length > (txFifoSize - wrCnt))
throw new InvalidOperationException("TX Message size too large for TxFIFO");
// Disable TX engine until all data has been loaded
if (data.Length > 1)
ReadModifyWrite(controlRegister, 0x1, 0x1);
//2) Write entire message to the *__TX_INFO register
foreach (uint word in data)
WriteRegister(txInfoRegister, word);
//3) Insert message End Frame(optional but recommended)
// a.Set bit 2 of *__CONTROL_TX_END_SDLC_FRAME register
ReadModifyWrite(controlRegister, 0x4, 0x4);
// b.Write one data word to *__TX_INFO register(data does not matter)
WriteRegister(txInfoRegister, 0x0);
// c.Clear bit 2 of *__CONTROL_TX_END_SDLC_FRAME register, Clear TX Inhibit (0)
ReadModifyWrite(controlRegister, 0x0, 0x5);
double delta = (double)stopwatch.ElapsedTicks / (double)frequency;
// TODO Log(string.Format("Time to Load/Start message: {0:f}mS", delta * 1000));
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "SendMessage", null);
}
}
protected RxSdlcMessage[] ReadAllMessages(SdlcInterface sdlc)
{
CallLoggingHelper.FunctionStart(GetType(), "ReadAllMessages",
nameof(sdlc), sdlc);
Queue<RxSdlcMessage> messages = new Queue<RxSdlcMessage>();
try
{
bool messageFound;
do
{
var message = ReadMessage(sdlc);
messageFound = (message.MessageData != null) ? true : false;
if (messageFound)
{
messages.Enqueue(message);
}
} while (messageFound);
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "ReadAllMessages", null);
}
return messages.ToArray();
}
protected RxSdlcMessage ReadMessage(SdlcInterface sdlc)
{
CallLoggingHelper.FunctionStart(GetType(), "ReadMessage",
nameof(sdlc), sdlc);
uint rxMsgCntRegister = 0;
uint statusRegister = 0;
uint rxDataRegister = 0;
uint rxMessageCount = 0;
RxSdlcMessage sdlcMessage = new RxSdlcMessage();
try
{
switch (sdlc)
{
case SdlcInterface.GSKW:
rxMsgCntRegister = RegisterMapHSSub9100.GS_KW__MSG_CNT;
statusRegister = RegisterMapHSSub9100.GS_KW__STATUS;
rxDataRegister = RegisterMapHSSub9100.GS_KW__RX_DATA;
break;
case SdlcInterface.IMU:
rxMsgCntRegister = RegisterMapHSSub9100.IMU__MSG_CNT;
statusRegister = RegisterMapHSSub9100.IMU__STATUS;
rxDataRegister = RegisterMapHSSub9100.IMU__RX_DATA;
break;
case SdlcInterface.EDACS:
rxMsgCntRegister = RegisterMapHSSub9100.EDA_ACS__MSG_CNT;
statusRegister = RegisterMapHSSub9100.EDA_ACS__STATUS;
rxDataRegister = RegisterMapHSSub9100.EDA_ACS__RX_DATA;
break;
case SdlcInterface.EDAPT:
rxMsgCntRegister = RegisterMapHSSub9100.EDA_APT__MSG_CNT;
statusRegister = RegisterMapHSSub9100.EDA_APT__STATUS;
rxDataRegister = RegisterMapHSSub9100.EDA_APT__RX_DATA;
break;
}
rxMessageCount = ReadRegister(rxMsgCntRegister);
if (rxMessageCount != 0)
{
var message = new List<RxSdlcData>();
uint status;
// Read the message
do
{
// Read *__STATUS register.
status = ReadRegister(statusRegister);
// Read and store the *__RX_DATA register
var data = ReadRegister(rxDataRegister);
var sdlcData = new RxSdlcData
{
Data = data,
Status = status
};
message.Add(sdlcData);
// Repeat until status register bit 9 indicates the end of the message.
} while (!IsBitSet(status, 9));
sdlcMessage.MessageData = message.ToArray();
}
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "ReadMessage", null);
}
return sdlcMessage;
}
protected void WaitForMsg(SdlcInterface sdlc, ushort count, double timeout)
{
CallLoggingHelper.FunctionStart(GetType(), "WaitForMsg",
nameof(sdlc), sdlc,
nameof(count), count,
nameof(timeout), timeout);
uint rxMsgCntRegister = 0;
try
{
switch (sdlc)
{
case SdlcInterface.IMU:
rxMsgCntRegister = RegisterMapHSSub9100.IMU__MSG_CNT;
break;
case SdlcInterface.EDACS:
rxMsgCntRegister = RegisterMapHSSub9100.EDA_ACS__MSG_CNT;
break;
case SdlcInterface.EDAPT:
rxMsgCntRegister = RegisterMapHSSub9100.EDA_APT__MSG_CNT;
break;
}
rxMsgCntRegister += 2;
lock (componentLock)
{
TerHsiSession.LB_BusyBitWait16(rxMsgCntRegister, count, count, timeout);
}
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "WaitForMsg", null);
}
}
#endregion
#endregion
#region Protected Register Access
protected uint ReadRegister(uint registerAddress)
{
uint registerValue = 0;
lock (componentLock)
{
registerValue = TerHsiSession.LB_Read32(registerAddress);
}
return registerValue;
}
protected void WriteRegister(uint registerAddress, uint data)
{
lock (componentLock)
{
TerHsiSession.LB_Write32(registerAddress, data);
}
}
protected void ReadModifyWrite(uint registerAddress, uint data, uint mask)
{
CallLoggingHelper.FunctionStart(GetType(), "ReadModifyWrite",
nameof(registerAddress), registerAddress,
nameof(data), data,
nameof(mask), mask);
try
{
lock (componentLock)
{
var oldVal = ReadRegister(registerAddress);
// <new register value> = (data & mask) | (<old register value> & !mask)
var newVal = (data & mask) | (oldVal & ~mask);
CallLoggingHelper.Message(string.Format("{0}.{1}", GetType(), "ReadModifyWrite"));
CallLoggingHelper.Message(string.Format("New Value to write: 0x{0:X}", newVal));
WriteRegister(registerAddress, newVal);
}
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "ReadModifyWrite", null);
}
}
internal enum RegisterHalf
{
Upper = 1,
Lower = 0
}
internal ushort ReadRegister16(uint registerAddress, RegisterHalf location)
{
CallLoggingHelper.FunctionStart(GetType(), "ReadModifyWrite",
nameof(registerAddress), registerAddress,
nameof(location), location);
ushort registerValue = 0;
try
{
if (location == RegisterHalf.Lower)
{
registerAddress += 2;
}
CallLoggingHelper.Message(string.Format("{0}.{1}", GetType(), "ReadRegister16"));
CallLoggingHelper.Message(string.Format("Actual Register Offset: 0x{0:X}", registerAddress));
lock (componentLock)
{
registerValue = TerHsiSession.LB_Read16(registerAddress);
}
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "ReadRegister16", registerValue);
}
return registerValue;
}
internal void BusyBitWait16(uint registerAddress, RegisterHalf location, ushort data, ushort mask, double timeout)
{
CallLoggingHelper.FunctionStart(GetType(), "ReadModifyWrite",
nameof(registerAddress), registerAddress,
nameof(location), location);
try
{
if (location == RegisterHalf.Lower)
{
registerAddress += 2;
}
CallLoggingHelper.Message(string.Format("{0}.{1}", GetType(), "BusyBitWait16"));
CallLoggingHelper.Message(string.Format("Actual Register Offset: 0x{0:X}", registerAddress));
lock (componentLock)
{
TerHsiSession.LB_BusyBitWait16(registerAddress, data, mask, timeout);
}
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "ReadRegister16", null);
}
}
#endregion
}
}

View File

@@ -0,0 +1,162 @@
using System;
using System.Threading;
namespace Raytheon.GuidedElectronicsUnit
{
internal class HardwareSession6020a : HardwareSession
, IGuidedElectronicsUnitLowLevelHSSub6020a
, IGuidedElectronicsUnitIntegratedDewarAssemblyInterfaceEmulator
{
public HardwareSession6020a()
{
ApplicationConstant = 0x4C01;
ApplicationPrefix = "GEU";
ChipId = "L1";
AdcBitCount = 10;
WordSwap = false;
ExpectedApplicationId = RegisterMapHSSub6020a.ExpectedAppID;
ExpectedCustomerId = RegisterMapHSSub6020a.ExpectedCustID;
ExpectedRevisionId = RegisterMapHSSub6020a.ExpectedRevID;
RegisterConstant = RegisterMapHSSub6020a.TER_LB__FPGA_CONST;
RegisterApplicationCustomerId = RegisterMapHSSub6020a.TER_LB__APP_CUST_ID;
RegisterRevisionId = RegisterMapHSSub6020a.TER_LB__REV_ID;
RegisterPllStatus = RegisterMapHSSub6020a.TER_LB__PLL;
RegisterVccIntDieTemp = RegisterMapHSSub6020a.TER_LB__VCCINT_DT;
RegisterVccAux = RegisterMapHSSub6020a.TER_LB__VCCAUX;
}
public IGuidedElectronicsUnitIntegratedDewarAssemblyInterfaceEmulator IdaEmulator => this;
public IGuidedElectronicsUnitLowLevelHSSub6020a LowLevel => this;
#region Protected Methods
protected override void GetInitialDefaults()
{
base.GetInitialDefaults();
}
protected override void SetDefaults()
{
base.SetDefaults();
IdaEmulator.Control = ControlState.Disabled;
}
#endregion
#region IdaEmulator
ControlState IGuidedElectronicsUnitIntegratedDewarAssemblyInterfaceEmulator.Control
{
get
{
return IsBitSet(ReadRegister(RegisterMapHSSub6020a.EM_CONTROL), 0) ? ControlState.Enabled : ControlState.Disabled;
}
set
{
ReadModifyWrite(RegisterMapHSSub6020a.EM_CONTROL, Convert.ToUInt32(value), 0x1);
}
}
IdaStatus IGuidedElectronicsUnitIntegratedDewarAssemblyInterfaceEmulator.Status
{
get
{
return new(ReadRegister(RegisterMapHSSub6020a.EM_STATUS));
}
}
uint IGuidedElectronicsUnitIntegratedDewarAssemblyInterfaceEmulator.Version
{
get
{
return ReadRegister(RegisterMapHSSub6020a.II_EM_VERSION);
}
}
#endregion
#region LowLevel
bool IGuidedElectronicsUnitLowLevelHSSub6020a.IsSimulated => IsSimulated;
int IGuidedElectronicsUnitLowLevelHSSub6020a.Chassis => Chassis;
string IGuidedElectronicsUnitLowLevelHSSub6020a.Descriptor => Descriptor;
string IGuidedElectronicsUnitLowLevelHSSub6020a.SerialNumber => SerialNumber;
int IGuidedElectronicsUnitLowLevelHSSub6020a.Slot => Slot;
void IGuidedElectronicsUnitLowLevelHSSub6020a.Reset() => Reset();
FirmwareInformation IGuidedElectronicsUnitLowLevelHSSub6020a.GetFirmwareInfo() => GetFirmwareInfo();
TdfPllStatus IGuidedElectronicsUnitLowLevelHSSub6020a.GetPllStatus() => GetPllStatus();
uint IGuidedElectronicsUnitLowLevelHSSub6020a.ReadRegister(uint address) =>
ReadRegister(address);
void IGuidedElectronicsUnitLowLevelHSSub6020a.ReadModifyWrite(uint address, uint data, uint mask) =>
ReadModifyWrite(address, data, mask);
void IGuidedElectronicsUnitLowLevelHSSub6020a.WriteRegister(uint address, uint data) =>
WriteRegister(address, data);
double IGuidedElectronicsUnitLowLevelHSSub6020a.DieTemp => DieTemp;
double IGuidedElectronicsUnitLowLevelHSSub6020a.VccInt => VccInt;
double IGuidedElectronicsUnitLowLevelHSSub6020a.VccAux => VccAux;
ControlState IGuidedElectronicsUnitLowLevelHSSub6020a.EnableIO
{
get
{
CallLoggingHelper.FunctionStart(GetType(), "getEnableIO");
ControlState state = ControlState.Disabled;
try
{
state = IsBitSet(ReadRegister(RegisterMapHSSub6020a.FP_IO_CTRL), 0) ? ControlState.Enabled : ControlState.Disabled;
return state;
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "getEnableIO", state);
}
}
set
{
CallLoggingHelper.FunctionStart(GetType(), "setEnableIO", value);
try
{
WriteRegister(RegisterMapHSSub6020a.FP_IO_CTRL, (uint)(Convert.ToBoolean(value) ? 0 : 1));
}
finally
{
CallLoggingHelper.FunctionEnd(GetType(), "setEnableIO", null);
}
}
}
EmStatus IGuidedElectronicsUnitLowLevelHSSub6020a.EmStatus
{
get => new(ReadRegister(RegisterMapHSSub6020a.EM_STATUS));
}
void IGuidedElectronicsUnitLowLevelHSSub6020a.ResetEmStatus()
{
WriteRegister(RegisterMapHSSub6020a.EM_STATUS, 0x0);
Thread.Sleep(1000);
}
#endregion
}
}

View File

@@ -0,0 +1,130 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Teradyne.Instruments.HighSpeed.SubsystemDriver;
namespace Raytheon.GuidedElectronicsUnit
{
internal static class HardwareSessionFactory
{
//private static readonly Dictionary<MindWorks.Nimbus.Driver, HardwareSession> _driverSessionToHardwareSession =
// new();
private static readonly Dictionary<string, HardwareSession> _resourceNameToHardwareSession = new();
private static readonly Dictionary<HardwareSession, List<MindWorks.Nimbus.Driver>> _hardwareSessionToDriverSession = new();
private static readonly object _componentLock = new();
public static T NewHardwareSession<T>(
MindWorks.Nimbus.Driver driverSession,
string resourceName,
bool simulated,
bool reset) where T : HardwareSession, new()
{
lock (_componentLock)
{
HardwareSession foundHardwareSession = null;
terHsi terHsiSession = null;
//if (_driverSessionToHardwareSession.ContainsKey(driverSession))
// return _driverSessionToHardwareSession[driverSession] as T;
if (_resourceNameToHardwareSession.ContainsKey(resourceName))
return _resourceNameToHardwareSession[resourceName] as T;
if (simulated)
{
terHsiSession = terHsi.CreateSession(resourceName, reset, "simulate=true");
}
else
{
// Call the driver's init function to get a session handle.
terHsiSession = terHsi.CreateSession(resourceName, reset);
driverSession.Session.InstrumentFirmwareRevision = terHsiSession.FirmwareRevision;
driverSession.Session.InstrumentManufacturer = terHsiSession.Manufacturer;
}
// If the returned session handle is new, then create a wrapper for it.
foreach (var entry in _hardwareSessionToDriverSession)
{
HardwareSession hardwareSession = entry.Key;
if (hardwareSession.TerHsiSession == terHsiSession)
{
entry.Value.Add(driverSession);
foundHardwareSession = hardwareSession;
break;
}
}
if (foundHardwareSession == null)
{
var driverSessionList = new List<MindWorks.Nimbus.Driver>();
// Create a hardware session and associate the driver session with it.
foundHardwareSession = new T
{
TerHsiSession = terHsiSession,
IsSimulated = simulated
};
driverSessionList.Add(driverSession);
_hardwareSessionToDriverSession.Add(foundHardwareSession, driverSessionList);
foundHardwareSession.InitSession();
}
// Record the hardware session associated with the driver session and
// return the hardware session.
//_driverSessionToHardwareSession.Add(driverSession, foundHardwareSession);
_resourceNameToHardwareSession.Add(resourceName, foundHardwareSession);
return foundHardwareSession as T;
}
}
public static void EndHardwareSession(MindWorks.Nimbus.Driver driverSession, string resourceName)
{
lock (_componentLock)
{
// Locate the hardware session associated with the driver session.
//if (!_driverSessionToHardwareSession.TryGetValue(driverSession, out HardwareSession hardwareSession))
if (!_resourceNameToHardwareSession.TryGetValue(resourceName, out HardwareSession hardwareSession))
{
// Not found, nothing to do
return;
}
if (!_hardwareSessionToDriverSession.TryGetValue(hardwareSession, out List<MindWorks.Nimbus.Driver> driverSessionList))
{
// Not found, nothing to do
return;
}
// Remove the driver session from the list of driver sessions supported by the hardware session.
if (!driverSessionList.Remove(driverSession))
{
// Nothing found, nothing to do
return;
}
// If there are no more sessions for this wrapper, then shutdown the wrapper
// and delete it from our list.
if (driverSessionList.Count == 0)
{
_hardwareSessionToDriverSession.Remove(hardwareSession);
// Close the hardware session too
terHsi terHsiSession = hardwareSession.TerHsiSession;
terHsiSession?.Reset();
terHsiSession?.Dispose();
hardwareSession = null;
}
// Remove the driver session entry in our list of driver sessions.
//_driverSessionToHardwareSession.Remove(driverSession);
_resourceNameToHardwareSession.Remove(resourceName);
}
}
}
}

View File

@@ -0,0 +1,37 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct IdaStatus
{
public IdaStatus(uint status)
{
GeuToII40MhzClockLocked = (PllState)(status & (uint)BitMask.GeuToII40MhzClockLocked);
IIEmulatorReset = (ResetState)(status & (uint)BitMask.IIEmulatorReset);
}
#region Private Members
private enum BitMask
{
GeuToII40MhzClockLocked = 0x0000_0002,
IIEmulatorReset = 0x0000_0001
}
#endregion
public Raytheon.GuidedElectronicsUnit.PllState GeuToII40MhzClockLocked { get; internal set; }
public Raytheon.GuidedElectronicsUnit.ResetState IIEmulatorReset { get; internal set; }
}
}

View File

@@ -0,0 +1,30 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct ImuConfig
{
public ImuConfig(uint status)
{
KwTestMode = Convert.ToBoolean(status & (uint)ImuConfigure.KwTestMode);
RxEnable = Convert.ToBoolean(status & (uint)ImuConfigure.RxEnable);
TxEnable = Convert.ToBoolean(status & (uint)ImuConfigure.TxEnable);
}
public bool KwTestMode { get; }
public bool RxEnable { get; }
public bool TxEnable { get; }
}
}

View File

@@ -0,0 +1,74 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct ImuDiscreteInput
{
public ImuDiscreteInput(uint status)
{
ExternalSync = Convert.ToBoolean(status & (uint)BitMask.ExternalSync) ? SignalState.High : SignalState.Low;
PowerOnreset = Convert.ToBoolean(status & (uint)BitMask.PowerOnreset) ? SignalState.High : SignalState.Low;
FastRestart = Convert.ToBoolean(status & (uint)BitMask.FastRestart) ? SignalState.High : SignalState.Low;
NotCommandBit = Convert.ToBoolean(status & (uint)BitMask.NotCommandBit) ? SignalState.High : SignalState.Low;
NotInhibitBit = Convert.ToBoolean(status & (uint)BitMask.NotInhibitBit) ? SignalState.High : SignalState.Low;
InhibitPowerOnReset = Convert.ToBoolean(status & (uint)BitMask.InhibitPowerOnReset) ? SignalState.High : SignalState.Low;
SimExternalSync = Convert.ToBoolean(status & (uint)BitMask.SimExternalSync) ? SignalState.High : SignalState.Low;
SimPowerOnreset = Convert.ToBoolean(status & (uint)BitMask.SimPowerOnreset) ? SignalState.High : SignalState.Low;
SimFastRestart = Convert.ToBoolean(status & (uint)BitMask.SimFastRestart) ? SignalState.High : SignalState.Low;
SimNotCommandBit = Convert.ToBoolean(status & (uint)BitMask.SimNotCommandBit) ? SignalState.High : SignalState.Low;
SimNotInhibitBit = Convert.ToBoolean(status & (uint)BitMask.SimNotInhibitBit) ? SignalState.High : SignalState.Low;
}
#region Internal Members
internal enum BitMask
{
ExternalSync = 0x1,
PowerOnreset = 0x2,
FastRestart = 0x4,
NotCommandBit = 0x8,
NotInhibitBit = 0x10,
InhibitPowerOnReset = 0x20,
SimExternalSync = 0x100,
SimPowerOnreset = 0x200,
SimFastRestart = 0x400,
SimNotCommandBit = 0x800,
SimNotInhibitBit = 0x1000
}
#endregion
public Raytheon.GuidedElectronicsUnit.SignalState SimNotInhibitBit { get; internal set; }
public Raytheon.GuidedElectronicsUnit.SignalState SimNotCommandBit { get; internal set; }
public Raytheon.GuidedElectronicsUnit.SignalState SimFastRestart { get; internal set; }
public Raytheon.GuidedElectronicsUnit.SignalState SimExternalSync { get; internal set; }
public Raytheon.GuidedElectronicsUnit.SignalState SimPowerOnreset { get; internal set; }
public Raytheon.GuidedElectronicsUnit.SignalState ExternalSync { get; internal set; }
public Raytheon.GuidedElectronicsUnit.SignalState FastRestart { get; internal set; }
public Raytheon.GuidedElectronicsUnit.SignalState NotCommandBit { get; internal set; }
public Raytheon.GuidedElectronicsUnit.SignalState NotInhibitBit { get; internal set; }
public Raytheon.GuidedElectronicsUnit.SignalState PowerOnreset { get; internal set; }
public Raytheon.GuidedElectronicsUnit.SignalState InhibitPowerOnReset { get; internal set; }
}
}

View File

@@ -0,0 +1,44 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct ImuMessage
{
public uint VelocityDeltaX { get; internal set; }
public uint VelocityDeltaY { get; internal set; }
public uint VelocityDeltaZ { get; internal set; }
public uint AngleDeltaX { get; internal set; }
public uint AngleDeltaY { get; internal set; }
public uint AngleDeltaZ { get; internal set; }
public uint StatusSummaryWord { get; internal set; }
public uint ModeMuxId { get; internal set; }
public uint MuxDataWord { get; internal set; }
public uint RawGyroCountX { get; internal set; }
public uint RawGyroCountY { get; internal set; }
public uint RawGyroCountZ { get; internal set; }
public uint Checksum { get; internal set; }
}
}

View File

@@ -0,0 +1,175 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public interface IGuidedElectronicsUnit
{
IGuidedElectronicsUnitDiscrete Discrete { get; }
IGuidedElectronicsUnitInertialMeasurementUnitEmulator InertialMeasurementUnitEmulator { get; }
IGuidedElectronicsUnitEncryptorDecryptorAssemblyEmulator EncryptorDecryptorAssemblyEmulator { get; }
IGuidedElectronicsUnitLowLevel LowLevel { get; }
IGuidedElectronicsUnitIntegratedDewarAssemblyInterfaceEmulator IntegratedDewarAssemblyInterfaceEmulator { get; }
IGuidedElectronicsUnitGsKwSyncronousDataLinkControl GsKwSyncronousDataLinkControl { get; }
IGuidedElectronicsUnitTestControl TestControl { get; }
}
public interface IGuidedElectronicsUnitDiscrete
{
Raytheon.GuidedElectronicsUnit.SignalState NcDacsKwOrdEn { get; }
}
public interface IGuidedElectronicsUnitInertialMeasurementUnitEmulator
{
SdlcStatus FetchStatus();
void SetDataWord(Raytheon.GuidedElectronicsUnit.ImuMessageWord word, uint data);
ImuMessage FetchMessageData();
void Configure(Raytheon.GuidedElectronicsUnit.ImuConfigure control, Raytheon.GuidedElectronicsUnit.ControlState state);
ImuConfig FetchConfiguration();
double EODSampleWidth { get; set; }
ImuDiscreteInput FetchDiscreteInput();
void SdlcControl(Raytheon.GuidedElectronicsUnit.SdlcControlBits control, Raytheon.GuidedElectronicsUnit.ControlState state);
SdlcFifoWrCount FifoWrCount { get; }
RxSdlcMessage ReadMessage();
RxSdlcMessage[] ReadAllMessages();
void SendMessage(uint[] data);
Raytheon.GuidedElectronicsUnit.ControlState FrameEnable { get; set; }
double FramePeriod { get; set; }
}
public interface IGuidedElectronicsUnitEncryptorDecryptorAssemblyEmulator
{
IGuidedElectronicsUnitEncryptorDecryptorAssemblyEmulatorChannelA ChannelA { get; }
}
public interface IGuidedElectronicsUnitLowLevel
{
IGuidedElectronicsUnitLowLevelHSSub6020a HSSub6020a { get; }
IGuidedElectronicsUnitLowLevelHSSub9100 HSSub9100 { get; }
}
public interface IGuidedElectronicsUnitLowLevelHSSub6020a
{
FirmwareInformation GetFirmwareInfo();
TdfPllStatus GetPllStatus();
uint ReadRegister(uint address);
void WriteRegister(uint address, uint data);
void Reset();
void ReadModifyWrite(uint address, uint data, uint mask);
int Chassis { get; }
string Descriptor { get; }
string SerialNumber { get; }
int Slot { get; }
double DieTemp { get; }
double VccInt { get; }
double VccAux { get; }
bool IsSimulated { get; }
Raytheon.GuidedElectronicsUnit.ControlState EnableIO { get; set; }
void ResetEmStatus();
EmStatus EmStatus { get; }
}
public interface IGuidedElectronicsUnitIntegratedDewarAssemblyInterfaceEmulator
{
Raytheon.GuidedElectronicsUnit.ControlState Control { get; set; }
IdaStatus Status { get; }
uint Version { get; }
}
public interface IGuidedElectronicsUnitLowLevelHSSub9100
{
FirmwareInformation GetFirmwareInfo();
TdfPllStatus GetPllStatus();
uint ReadRegister(uint address);
void WriteRegister(uint address, uint data);
void Reset();
void ReadModifyWrite(uint address, uint data, uint mask);
int Chassis { get; }
string Descriptor { get; }
string SerialNumber { get; }
int Slot { get; }
double DieTemp { get; }
double VccInt { get; }
double VccAux { get; }
bool IsSimulated { get; }
Raytheon.GuidedElectronicsUnit.ControlState EnableIO { get; set; }
AuroraStatus GetAuroraStatus();
}
public interface IGuidedElectronicsUnitGsKwSyncronousDataLinkControl
{
void SdlcControl(SdlcControlBits control, ControlState state);
SdlcStatus FetchStatus();
void SendMessage(uint[] data);
event EventHandler<SdlcEventArgs> AutoForwardBufferCapacityWarning;
SdlcFifoWrCount FifoWrCount { get; }
bool Sync { get; set; }
byte[] FetchMessageData();
RxSdlcMessage ReadMessage();
RxSdlcMessage[] ReadAllMessages();
event EventHandler<SdlcEventArgs> AutoForwardProcessExited;
RxSdlcAutoForwardBuffer SdlcAutoForwardBuffer { get; }
}
public interface IGuidedElectronicsUnitTestControl
{
void WaitForMsg(ushort count);
}
public interface IGuidedElectronicsUnitEncryptorDecryptorAssemblyEmulatorChannelA
{
IGuidedElectronicsUnitEncryptorDecryptorAssemblyEmulatorChannelAPT PT { get; }
IGuidedElectronicsUnitEncryptorDecryptorAssemblyEmulatorChannelACS CS { get; }
Scoreboard FetchScoreboard();
KwdlStatus FetchKwdlStatus();
byte[] FetchCVData();
CvcwData FetchCVCWData();
void Configure(EdaConfig configuration);
EdaStatus FetchEdaStatus();
EdaConfig FetchConfiguration();
bool EdaPbitValid { get; set; }
bool EdaPbitPass { get; set; }
bool EdaCVReadyValid { get; set; }
bool EdaCVReady { get; set; }
bool EdaCVClearPassFailValid { get; set; }
bool EdaCVClearPassFail { get; set; }
short EdaNumCVClear { get; set; }
short KwdlRFTemp { get; set; }
bool KwdlMbitPass { get; set; }
bool KwdlMbitComplete { get; set; }
bool KwdlPbitPass { get; set; }
Raytheon.GuidedElectronicsUnit.KwdlState KwdlState { get; set; }
bool KwdlLinkUp { get; set; }
}
public interface IGuidedElectronicsUnitEncryptorDecryptorAssemblyEmulatorChannelAPT
{
void SdlcControl(SdlcControlBits control, ControlState state);
SdlcStatus FetchSdlcStatus();
RxSdlcMessage[] ReadAllMessages();
RxSdlcMessage ReadMessage();
void SendMessage(uint[] data);
SdlcFifoWrCount FifoWrCount { get; }
}
public interface IGuidedElectronicsUnitEncryptorDecryptorAssemblyEmulatorChannelACS
{
SdlcStatus FetchSdlcStatus();
void SdlcControl(SdlcControlBits control, ControlState state);
RxSdlcMessage[] ReadAllMessages();
RxSdlcMessage ReadMessage();
void SendMessage(uint[] data);
SdlcFifoWrCount FifoWrCount { get; }
}
}

View File

@@ -0,0 +1,65 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct KwdlStatus
{
public KwdlStatus(uint status)
{
AntennaPort = (int)((status & (uint)BitMask.AntennaPort) >> (int)Bit.AntennaPort);
Channel = (int)((status & (uint)BitMask.Channel) >> (int)Bit.Channel);
DestinationId = (int)((status & (uint)BitMask.DestinationId) >> (int)Bit.DestinationId);
Location = (KwdlLocation)((status & (uint)BitMask.Location) >> (int)Bit.Location);
RFPower = (int)((status & (uint)BitMask.RFPower) >> (int)Bit.RFPower);
SourceId = (int)((status & (uint)BitMask.SourceId) >> (int)Bit.SourceId);
}
#region Private Members
private enum BitMask
{
DestinationId = 0x0000_000F,
SourceId = 0x0000_00F0,
Channel = 0x0000_3F00,
Location = 0x0001_0000,
AntennaPort = 0x0030_0000,
RFPower = 0x0300_0000
}
private enum Bit
{
DestinationId = 0,
SourceId = 4,
Channel = 8,
Location = 16,
AntennaPort = 20,
RFPower = 24
}
#endregion
public int RFPower { get; internal set; }
public int AntennaPort { get; internal set; }
public KwdlLocation Location { get; internal set; }
public int Channel { get; internal set; }
public int SourceId { get; internal set; }
public int DestinationId { get; internal set; }
}
}

View File

@@ -0,0 +1,31 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
namespace Raytheon.GuidedElectronicsUnit
{
[InstrumentFamilies]
internal static class Families
{
internal const string DefaultFamily = "DefaultFamily";
internal static readonly string[] DefaultFamilyMembers = new[] { Models.HSSub6020a__HSSub9010 };
}
[InstrumentModels(Models.HSSub6020a__HSSub9010)]
internal static class Models
{
internal const string Any = "";
internal const string HSSub6020a__HSSub9010 = "HSSub6020a, HSSub9010";
}
}

View File

@@ -0,0 +1,46 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Runtime.Serialization;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
[Serializable]
public class ReadMessageIncomplete : Exception
{
public ReadMessageIncomplete()
{
// Add any type-specific logic, and supply the default message.
//
}
public ReadMessageIncomplete(string message)
: base(message)
{
// Add any type-specific logic.
//
}
public ReadMessageIncomplete(string message, Exception innerException)
: base(message, innerException)
{
// Add any type-specific logic for inner exceptions.
//
}
protected ReadMessageIncomplete(SerializationInfo info, StreamingContext context)
: base(info, context)
{
// Implement type-specific serialization constructor logic.
//
}
}
}

View File

@@ -0,0 +1,46 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Runtime.Serialization;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
[Serializable]
public class ReadMessageTimeout : Exception
{
public ReadMessageTimeout()
{
// Add any type-specific logic, and supply the default message.
//
}
public ReadMessageTimeout(string message)
: base(message)
{
// Add any type-specific logic.
//
}
public ReadMessageTimeout(string message, Exception innerException)
: base(message, innerException)
{
// Add any type-specific logic for inner exceptions.
//
}
protected ReadMessageTimeout(SerializationInfo info, StreamingContext context)
: base(info, context)
{
// Implement type-specific serialization constructor logic.
//
}
}
}

View File

@@ -0,0 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Raytheon.GuidedElectronicsUnit
{
class RegisterDefaults
{
}
}

View File

@@ -0,0 +1,46 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Runtime.Serialization;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
[Serializable]
public class RxDataError : Exception
{
public RxDataError()
{
// Add any type-specific logic, and supply the default message.
//
}
public RxDataError(string message)
: base(message)
{
// Add any type-specific logic.
//
}
public RxDataError(string message, Exception innerException)
: base(message, innerException)
{
// Add any type-specific logic for inner exceptions.
//
}
protected RxDataError(SerializationInfo info, StreamingContext context)
: base(info, context)
{
// Implement type-specific serialization constructor logic.
//
}
}
}

View File

@@ -0,0 +1,24 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct RxSdlcAutoForwardBuffer
{
public int InitialCapacity { get; internal set; }
public int CurrentCapacity { get; internal set; }
public int HighwaterLevel { get; internal set; }
}
}

View File

@@ -0,0 +1,27 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct RxSdlcData
{
public RxSdlcData(uint data, uint status)
{
Data = data;
Status = status;
}
public uint Data { get; internal set; }
public uint Status { get; internal set; }
}
}

View File

@@ -0,0 +1,61 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct RxSdlcMessage
{
public RxSdlcMessage(List<RxSdlcData> data) { MessageData = data.ToArray(); }
public RxSdlcData[] MessageData { get; internal set; }
public uint[] ToDataArray
{
get
{
List<uint> data = new List<uint>();
foreach (RxSdlcData val in MessageData)
{
data.Add(val.Data);
}
return data.ToArray();
}
}
public MessageEnumerator GetEnumerator()
{
return new MessageEnumerator(this);
}
// Declare the enumerator class:
public class MessageEnumerator
{
int nIndex;
RxSdlcMessage message;
public MessageEnumerator(RxSdlcMessage coll)
{
message = coll;
nIndex = -1;
}
public bool MoveNext()
{
nIndex++;
return (nIndex < message.MessageData.Length);
}
public RxSdlcData Current => message.MessageData[nIndex];
}
}
}

View File

@@ -0,0 +1,81 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct Scoreboard
{
public Scoreboard(uint status)
{
EdaCVClearControlMessage = Convert.ToBoolean(status & (uint)BitMask.EdaCVClearControlMessage);
MtdCarrierEnableMessage = Convert.ToBoolean(status & (uint)BitMask.MtdCarrierEnableMessage);
KwEchoMessage = Convert.ToBoolean(status & (uint)BitMask.KwEchoMessage);
KwdlAntennaSelectMessage = Convert.ToBoolean(status & (uint)BitMask.KwdlAntennaSelectMessage);
KwdlStateControlStatusRequestMessage = Convert.ToBoolean(status & (uint)BitMask.KwdlStateControlStatusRequestMessage);
KwdlInitializeMessage = Convert.ToBoolean(status & (uint)BitMask.KwdlInitializeMessage);
EdaCryptoGoControlMessage = Convert.ToBoolean(status & (uint)BitMask.EdaCryptoGoControlMessage);
EdaTerminalIDControlMessage = Convert.ToBoolean(status & (uint)BitMask.EdaTerminalIDControlMessage);
EdaGeneralStatusRequestMessage = Convert.ToBoolean(status & (uint)BitMask.EdaGeneralStatusRequestMessage);
EdaCVControlMessage = Convert.ToBoolean(status & (uint)BitMask.EdaCVControlMessage);
EdaCVCWControlMessage = Convert.ToBoolean(status & (uint)BitMask.EdaCVCWControlMessage);
EdaTransceiverPowerControlMessage = Convert.ToBoolean(status & (uint)BitMask.EdaTransceiverPowerControlMessage);
EdaDataBusModeControlMessage = Convert.ToBoolean(status & (uint)BitMask.EdaDataBusModeControlMessage);
EdaLowPowerModeControlMessage = Convert.ToBoolean(status & (uint)BitMask.EdaLowPowerModeControlMessage);
}
public bool EdaCVClearControlMessage { get; internal set; }
public bool EdaCVControlMessage { get; internal set; }
public bool EdaGeneralStatusRequestMessage { get; internal set; }
public bool EdaTerminalIDControlMessage { get; internal set; }
public bool EdaCryptoGoControlMessage { get; internal set; }
public bool KwdlInitializeMessage { get; internal set; }
public bool KwdlStateControlStatusRequestMessage { get; internal set; }
public bool KwdlAntennaSelectMessage { get; internal set; }
public bool KwEchoMessage { get; internal set; }
public bool MtdCarrierEnableMessage { get; internal set; }
public bool EdaCVCWControlMessage { get; internal set; }
public bool EdaTransceiverPowerControlMessage { get; internal set; }
public bool EdaDataBusModeControlMessage { get; internal set; }
public bool EdaLowPowerModeControlMessage { get; internal set; }
internal enum BitMask
{
EdaCVClearControlMessage = 0x0000_2000,
MtdCarrierEnableMessage = 0x0000_1000,
KwEchoMessage = 0x0000_0800,
KwdlAntennaSelectMessage = 0x0000_0400,
KwdlStateControlStatusRequestMessage = 0x0000_0200,
KwdlInitializeMessage = 0x0000_0100,
EdaCryptoGoControlMessage = 0x0000_0080,
EdaTerminalIDControlMessage = 0x0000_0040,
EdaGeneralStatusRequestMessage = 0x0000_0020,
EdaCVControlMessage = 0x0000_0010,
EdaCVCWControlMessage = 0x0000_0008,
EdaTransceiverPowerControlMessage = 0x0000_0004,
EdaDataBusModeControlMessage = 0x0000_0002,
EdaLowPowerModeControlMessage = 0x0000_0001
}
}
}

View File

@@ -0,0 +1,45 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public sealed class SdlcEventArgs : EventArgs
{
/// <summary>
/// Creates a new instance of the MessageEventArgs class. For the <paramref name="node"/> parameter, pass in the "this" reference of the driver class
/// that instantiated the MessageEventArgs class.
/// </summary>
/// <param name="node">The driver class that instantiated the MessageEventArgs class.</param>
internal SdlcEventArgs()
{
Message = string.Empty;
PrecentageFull = AutoForwardBufferCapacity.Empty;
}
internal SdlcEventArgs(AutoForwardBufferCapacity level)
{
Message = level switch
{
AutoForwardBufferCapacity.HalfFull => "Buffer is at 50% capacity.",
AutoForwardBufferCapacity.Full => "Buffer is full and no longer capturing data.",
_ => "Buffer is less than half full or empty"
};
PrecentageFull = level;
}
public string Message { get; set; }
public AutoForwardBufferCapacity PrecentageFull { get; set; }
}
}

View File

@@ -0,0 +1,27 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct SdlcFifoWrCount
{
public SdlcFifoWrCount(uint count)
{
RxWrCount = (int)((count & 0xffff0000) >> 16);
TxWrCount = (int)(count & 0xffff);
}
public int RxWrCount { get; internal set; }
public int TxWrCount { get; internal set; }
}
}

View File

@@ -0,0 +1,99 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
//public struct SdlcStatus
public struct SdlcStatus
{
public SdlcStatus(uint status)
{
DrOverrunError = Convert.ToBoolean(status & (uint)BitMask.DrError);
RxInhibited = Convert.ToBoolean(status & (uint)BitMask.RxInhibit);
TxInhibited = Convert.ToBoolean(status & (uint)BitMask.TxInhibit);
EchoLoopback = Convert.ToBoolean(status & (uint)BitMask.Echo);
InternalLoopback = Convert.ToBoolean(status & (uint)BitMask.InterruptLB);
RxMessageAborted = Convert.ToBoolean(status & (uint)BitMask.RxAbort);
RxMessageFcsError = Convert.ToBoolean(status & (uint)BitMask.RxFcs);
RxMessageDone = Convert.ToBoolean(status & (uint)BitMask.RxDone);
RxBadAddrError = Convert.ToBoolean(status & (uint)BitMask.Rba);
RxFifoOverflowed = Convert.ToBoolean(status & (uint)BitMask.RxFifoOverflow);
RxFifoEmpty = Convert.ToBoolean(status & (uint)BitMask.RxFifoEmpty);
RxFifoFull = Convert.ToBoolean(status & (uint)BitMask.RxFifoFull);
RxActive = Convert.ToBoolean(status & (uint)BitMask.RxActive);
TxFifoOverflowed = Convert.ToBoolean(status & (uint)BitMask.TxFifoOverflow);
TxFifoEmpty = Convert.ToBoolean(status & (uint)BitMask.TxFifoEmpty);
TxFifoFull = Convert.ToBoolean(status & (uint)BitMask.TxFifoFull);
TxActive = Convert.ToBoolean(status & (uint)BitMask.TxActive);
}
#region Private Members
private enum BitMask
{
DrError = 0x00010000,
RxInhibit = 0x00008000,
TxInhibit = 0x00004000,
Echo = 0x00002000,
InterruptLB = 0x00001000,
RxAbort = 0x00000800,
RxFcs = 0x00000400,
RxDone = 0x00000200,
Rba = 0x00000100,
RxFifoOverflow = 0x00000080,
RxFifoEmpty = 0x00000040,
RxFifoFull = 0x00000020,
RxActive = 0x00000010,
TxFifoOverflow = 0x00000008,
TxFifoEmpty = 0x00000004,
TxFifoFull = 0x00000002,
TxActive = 0x0000001
}
#endregion
public bool DrOverrunError { get; internal set; }
public bool RxInhibited { get; internal set; }
public bool EchoLoopback { get; internal set; }
public bool InternalLoopback { get; internal set; }
public bool RxMessageAborted { get; internal set; }
public bool RxMessageFcsError { get; internal set; }
public bool RxMessageDone { get; internal set; }
public bool RxBadAddrError { get; internal set; }
public bool RxFifoOverflowed { get; internal set; }
public bool RxFifoEmpty { get; internal set; }
public bool TxInhibited { get; internal set; }
public bool RxFifoFull { get; internal set; }
public bool RxActive { get; internal set; }
public bool TxActive { get; internal set; }
public bool TxFifoOverflowed { get; internal set; }
public bool TxFifoEmpty { get; internal set; }
public bool TxFifoFull { get; internal set; }
}
}

View File

@@ -0,0 +1,25 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Resources;
using System.Text;
using MindWorks.Nimbus;
using Ivi.Driver;
namespace Raytheon.GuidedElectronicsUnit
{
public struct TdfPllStatus
{
public Raytheon.GuidedElectronicsUnit.PllState AuroraBusClkLocked { get; internal set; }
public Raytheon.GuidedElectronicsUnit.PllState LocalBusPllLocked { get; internal set; }
public Raytheon.GuidedElectronicsUnit.ControlState PxiePllEnable { get; internal set; }
public Raytheon.GuidedElectronicsUnit.PllState PxiePllLocked { get; internal set; }
}
}

View File

@@ -0,0 +1,5 @@
{
"msbuild-sdks": {
"MindWorks.Nimbus.BuildTools": "5.2.0"
}
}

Some files were not shown because too many files have changed in this diff Show More