<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Focal.Model907.Diagnostics</name>
    </assembly>
    <members>
        <member name="T:Focal.Utilities.CRC">
            <summary>
            Provides a number of helper methods to calculate CRC values.
            </summary>
        </member>
        <member name="M:Focal.Utilities.CRC.UpdateCRC16(System.UInt16,System.Byte)">
            <summary>
            Calculates a new CRC-16 value based on the previous CRC value and 
            the next byte in the data buffer.
            </summary>
            <param name="crc"></param>
            <param name="c"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.CRC.CalcCRC16(System.Byte[],System.Int32)">
            <summary>
            Calculates the CRC-16 value for the supplied data buffer,        
            </summary>
            <param name="buf"></param>
            <param name="numBytes"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.CRC.VerifyCRC16(System.Byte[],System.Int32)">
            <summary>
            Verifies that the last 2 bytes in the supplied data buffer are the 
            CRC-16 value for the preceding bytes.
            </summary>
            <param name="buf"></param>
            <param name="numBytes"></param>
            <returns></returns>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.I2CDeviceConfig">
            <summary>
            Represents an I2C Device.
            </summary>
            <remarks>
            <para><b>TODO:</b> It might be nice to add a list of ArraySegments that
            can be used to throttle the refresh rate of different portions of the 
            overall RawData array.</para>
            <para>For example, maybe we could specify a few ArraySegments along the
            lines of 'RefreshOnce', 'RefreshAlways', 'RefreshHalfRate', etc, along
            with an internal counter or something that gets incremented each time 
            the standard RefreshData method is called.</para>
            <para>This would provide a means to prevent refreshing data that never 
            changes (serial numbers, vendor id's, etc).</para>
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.ReadI2CDataDelegate">
            <summary>
            The method that will be used to refresh data from the I2C device.
            </summary>
            <remarks>
            Typically this should point at <see cref="M:Focal.Model907.Diagnostics.Model907.ReadI2CData(System.Byte,System.Byte,System.UInt16,System.Byte[]@)"/>
            </remarks>       
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.ReadI2CDataDeviceNumDelegate">
            <summary>
            The method that will be used to refresh data from the I2C device and specifying I2C device number.
            </summary>
            <remarks>
            Typically this should point at <see cref="M:Focal.Model907.Diagnostics.Model907.ReadI2CDataDeviceNum(System.Byte,System.Byte,System.UInt16,System.Byte,System.Byte[]@)"/>
            </remarks>       
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.ExtendedNoIntAddressWriteReadI2CDataDelegate">
            <summary>
            The method that will be used to refresh data from the I2C device and specifying internal mux information.
            </summary>
            <remarks>
            Typically this should point at <see cref="M:Focal.Model907.Diagnostics.Model907.ExtendedNoIntAddressWriteReadI2CData(System.Byte,System.UInt16,System.Byte[],System.Byte[],System.Byte[]@)"/>
            </remarks>       
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.GenericReadI2CDataDelegate">
            <summary>
            The method that will be used to refresh data from any I2C device and specifying internal mux information.
            </summary>
            <remarks>
            Typically this should point at <see cref="M:Focal.Model907.Diagnostics.Model907.GenericReadI2CData(System.UInt16,System.Byte,System.Byte,System.UInt16,System.Byte[],System.Byte[],System.Byte[]@)"/>
            </remarks>       
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.WriteI2CDataDelegate">
            <summary>
            A method that can be used to write data back to the I2C device.
            </summary>
            <remarks>
            Typically this should point at <see cref="M:Focal.Model907.Diagnostics.Model907.WriteI2CData(System.Byte,System.Byte,System.Byte[])"/>
            </remarks> 
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.#ctor(System.Byte,System.Byte,System.UInt16)">
            <summary>
            Constructs a new I2C device without the delegates used to refresh or write back data.
            </summary>
            <param name="address">The address of the I2C Device.</param>
            <param name="startByte">The byte offset from which to start data retrieval.</param>
            <param name="numBytes">The number of bytes to retrieve from the I2C Device during a read.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.#ctor(System.Byte,System.Byte,System.UInt16,Focal.Utilities.MiscUtils.Func{System.Byte,System.Byte,System.UInt16,System.Byte[],System.Boolean})">
            <summary>
            Constructs a new I2C device with a delegate used to refresh data.
            </summary>
            <param name="address">The address of the I2C Device.</param>
            <param name="startByte">The byte offset from which to start data retrieval.</param>
            <param name="numBytes">The number of bytes to retrieve from the I2C Device during a read.</param>
            <param name="readI2CDataDelegate">The method that will be used to refresh data from the I2C device.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.#ctor(System.Byte,System.Byte,System.UInt16,System.Byte,Focal.Utilities.MiscUtils.Func{System.Byte,System.Byte,System.UInt16,System.Byte,System.Byte[],System.Boolean})">
            <summary>
            Constructs a new I2C device with a delegate used to refresh data.
            </summary>        
            <param name="address">The address of the I2C Device.</param>
            <param name="startByte">The byte offset from which to start data retrieval.</param>
            <param name="numBytes">The number of bytes to retrieve from the I2C Device during a read.</param>
            <param name="deviceNum">The value that needs to be written to the MUX on the Flex card in order to select the proper I2C line. E.g. byte mainMuxSfp1 = 0x09 = mainMuxI2CDevice = SFP1</param>
            <param name="readI2CDataDeviceNumDelegate">The method that will be used to refresh data from the I2C device.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.#ctor(System.Byte,System.Byte,System.UInt16,Focal.Utilities.MiscUtils.Func{System.Byte,System.Byte,System.UInt16,System.Byte[],System.Boolean},System.Func{System.Byte,System.Byte,System.Byte[],System.Boolean})">
            <summary>
            Constructs a new I2C device with delegates used to refresh and write back data to the device.
            </summary>
            <param name="address">The address of the I2C Device.</param>
            <param name="startByte">The byte offset from which to start data retrieval.</param>
            <param name="numBytes">The number of bytes to retrieve from the I2C Device during a read.</param>
            <param name="readI2CDataDelegate">The method that will be used to refresh data from the I2C device.</param>
            <param name="writeI2CDataDelegate">The method that will be used to write data back to the I2C device.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.#ctor(System.Byte,System.UInt16,System.Byte[],System.Byte[],Focal.Utilities.MiscUtils.Func{System.Byte,System.UInt16,System.Byte[],System.Byte[],System.Byte[],System.Boolean})">
            <summary>
            Constructs a new I2C device with delegates used to refresh data from the device. The data written is typically used to set the start index.
            Using the extended read/write commands without internal I2C address
            </summary>
            <param name="addressRead">The address of the I2C Device.</param>        
            <param name="numBytesRead">The number of bytes to retrieve from the I2C Device during a read.</param>
            <param name="muxNumAddressCtrl">The I2C address and control of mux#N. E.g. Mux#1_I2CAddres, Mux#1_ControlRegister, Mux#2_I2CAddres, Mux#2_ControlRegister -> 0x73, 0x01, 0x70, 0x09 </param>
            <param name="dataToWriteRead">The data to write. E.g. 0x00</param>
            <param name="extendedNoIntAddressWriteReadI2CDataDelegate">The method that will be used to refresh data from the I2C device.</param>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.#ctor(System.Byte,System.UInt16,System.Byte[],System.Byte[],Focal.Utilities.MiscUtils.Func{System.Byte,System.UInt16,System.Byte[],System.Byte[],System.Byte[],System.Boolean},System.Byte,System.Byte,System.UInt16,System.Func{System.Byte,System.Byte,System.Byte[],System.Boolean})">
            <summary>
            Constructs a new I2C device with delegates used to refresh and write back data to the device.
            Using the extended read/write commands without internal I2C address
            </summary>
            <param name="addressRead">The address of the I2C Device.</param>        
            <param name="numBytesRead">The number of bytes to retrieve from the I2C Device during a read.</param>
            <param name="muxNumAddressCtrl">The I2C address and control of mux#N. E.g. Mux#1_I2CAddres, Mux#1_ControlRegister, Mux#2_I2CAddres, Mux#2_ControlRegister -> 0x73, 0x01, 0x70, 0x09 </param>
            <param name="dataToWriteRead">The data to write (start index). E.g. 0x00</param>
            <param name="extendedNoIntAddressWriteReadI2CDataDelegate">The method that will be used to refresh data from the I2C device.</param>        
            <param name="addressWrite">The address of the I2C Device to write to.</param>
            <param name="startByteWrite">The byte offset from which to start writing data.</param>         
            <param name="numBytesWrite">The number of bytes to write to the I2C Device.</param>
            <param name="writeI2CDataDelegate">The method that will be used to write data back to the I2C device.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.#ctor(System.UInt16,System.Byte,System.Byte,System.UInt16,System.Byte[],System.Byte[],Focal.Utilities.MiscUtils.Func{System.UInt16,System.Byte,System.Byte,System.UInt16,System.Byte[],System.Byte[],System.Byte[],System.Boolean},System.Byte,System.Byte,System.UInt16,System.Func{System.Byte,System.Byte,System.Byte[],System.Boolean})">
            <summary>
            Constructs a new I2C device with delegates used to refresh/read and write back data to any device.
            Using the extended read/write commands without internal I2C address
            </summary>
            <param name="diagCommandOption">The command option to be used to perform the read command. E.g. 1=ReadI2CDataDelegate; 2=ExtendedNoIntAddressWriteReadI2CData</param>        
            <param name="addressRead">The I2C address from which to retrieve data. E.g. 0x28</param>        
            <param name="startByteRead">The byte offset from which to start data retrieval.</param>
            <param name="numBytesRead">The number of bytes to retrieve. E.g. 128</param>        
            <param name="muxNumAddressCtrl">The I2C address and control of mux#N. E.g. Mux#1_I2CAddres, Mux#1_ControlRegister, Mux#2_I2CAddres, Mux#2_ControlRegister -> 0x73, 0x01, 0x70, 0x09 </param>
            <param name="dataToWriteRead">The data to write before reading (typically this is an index selector, similar to startByteRead). E.g. 0x00</param>
            <param name="genericReadI2CDataDelegate">The method that will be used to refresh data from any I2C device.</param>
            <param name="addressWrite">The address of the I2C Device to write to.</param>
            <param name="startByteWrite">The byte offset from which to start writing data.</param>         
            <param name="numBytesWrite">The number of bytes to write to the I2C Device.</param>
            <param name="writeI2CDataDelegate">The method that will be used to write data back to the I2C device.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.RefreshData">
            <summary>
            Refreshes data from the i2c device.
            </summary>
            <exception cref="T:System.ArgumentNullException">Thrown if the <see cref="F:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.ReadI2CDataDelegate"/> 
            has not been assigned.</exception>
            <returns>True if the data was successfully refreshed, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.WriteData(System.Byte,System.Byte[])">
            <summary>
            Writes data back to the i2c device.
            </summary>
            <exception cref="T:System.ArgumentNullException">Thrown if the <see cref="F:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.WriteI2CDataDelegate"/> 
            has not been assigned.</exception>
            <param name="startByteIndex">The byte index on the device from which to start the write.</param>
            <param name="dataToWrite">The data to write.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.WriteDataAtAddress(System.Byte,System.Byte,System.Byte[])">
            <summary>
            Writes data back to the specified i2c device
            </summary>
            <exception cref="T:System.ArgumentNullException">Thrown if the <see cref="F:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.WriteI2CDataDelegate"/> 
            has not been assigned.</exception>
            <param name="addressWrite">The address of the I2C Device to write to.</param>
            <param name="startByteIndex">The byte index on the device from which to start the write.</param>
            <param name="dataToWrite">The data to write.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.ReadDataAtAddress(System.Byte,System.Byte,System.Byte,System.Byte[]@,Focal.Utilities.MiscUtils.Func{System.Byte,System.Byte,System.UInt16,System.Byte[],System.Boolean})">
            <summary>
            Reads data from to the specified i2c device
            </summary>
            <exception cref="T:System.ArgumentNullException">Thrown if the <see cref="F:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.WriteI2CDataDelegate"/> 
            has not been assigned.</exception>
            <param name="addressRead">The address of the I2C Device to read from.</param>        
            <param name="startByteIndex">The byte index on the device from which to start the write.</param>
            <param name="numBytes">The number of bytes to retrieve from the I2C Device during a read.</param>        
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.DeviceNum">
            <summary>
            Gets the I2C device number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.MuxNumAddressCtrl">
            <summary>
            Gets I2C address and control register value of muxes.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.DataToWriteRead">
            <summary>
            Gets data to write to the I2C device (typically the start index).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.Address">
            <summary>
            Gets the address of the I2C Device.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.AddressRead">
            <summary>
            Gets the address of the I2C Device to read.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.AddressWrite">
            <summary>
            Gets the address of the I2C Device to write.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.StartByte">
            <summary>
            Gets the byte offset from which to start data retrieval.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.StartByteRead">
            <summary>
            Gets the byte offset from which to start data retrieval.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.StartByteWrite">
            <summary>
            Gets the byte offset from which to start writing data.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.NumBytes">
            <summary>
            Gets the number of bytes to retrieve from the I2C Device during a read.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.NumBytesRead">
            <summary>
            Gets the number of bytes to retrieve from the I2C Device during a read.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.NumBytesWrite">
            <summary>
            Gets the number of bytes to write to the I2C Device.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.DiagCommandOption">
            <summary>
            Gets the I2C diagnostic command option
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.I2CDeviceConfig.RawData">
            <summary>
            Gets or Sets the raw data array. 
            Typically this property should be mapped to a FormattedData.RawData property.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl">
            <summary>
            Represents a Focal Technologies Model 907-SER PSSL FPGA.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.FormattedData">
            <summary>
            Defines commmonality between formatted data response types.
            </summary>
            <remarks>
            <para>Typically, we are interested in creating a formatted data object
            from the byte array returned by a uC in response to a command.</para>
            <para>With the exception of the 'RawData' property, the intent is that 
            most or all properties in any instantiation of this class should be 
            constructed from the values in the RawData byte array(s).</para>
            <para>Some instantiations of this class (eg. an FPGA) may have a single
            RawData array, while others (eg. an SFP) may have multiple RawData
            arrays from which formatted data can be extracted.</para>
            <para>To facilitate data binding, we raise a PropertyChanged event for 
            every property in the class whenever the RawData is updated.</para>
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.FormattedData.#ctor(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Int32}})">
            <summary>
            Constructs a new FormattedData object with a preset number of raw 
            data arrays as specified by the rawDataConfigs parameter.
            </summary>
            <param name="rawDataConfigs">A list of KeyValuePairs, where 
            each Key represents a description for a RawData array and each 
            Value indicates the length of that array.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.FormattedData.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.FormattedData.PropertyChanged"/> for each object property 
            whenever the RawData byte array changes as a way to send changed 
            events for all dependent read-only properties.
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.FormattedData.RawDataNames">
            <summary>
            Gets the list of raw data array names.  
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.FormattedData.Item(System.String)">
            <summary>
            Gets or sets the byte array of raw data for the specified raw data array.
            </summary>
            <param name="rawDataArrayName">The name of the raw data array for
            which to get or set the data.</param>
            <returns>The byte array of raw data for the specified raw data table.</returns>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Models.FormattedData.PropertyChanged">
            <summary>
            Raised for each object property whenever the RawData byte array(s)
            changes as a way to send change notifications for all dependent 
            read-only properties.
            </summary>
            <remarks>
            With the exception of the 'RawData' property, the intent is that for
            any instantiation of this class ALL properties are read-only and are
            constructed from values in the RawData byte array(s).  
            To facilitate data binding, we raise a PropertyChanged event for 
            every property in the class whenever the RawData is updated.
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.IFpga">
            <summary>
            An interface representing commonality between the various 907 FPGA implementations.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.IFpga.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.#ctor">
            <summary>
            Constructs a new 907 Serial FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.DecodeSerialMode(System.Boolean,System.Boolean)">
            <summary>
            Decodes the serial communications mode based on the supplied bit values.
            </summary>       
            <param name="switchSetting">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit from SW3 or SW4).</param>
            <param name="is422mode"> The bool value that indicates whether the card is hardware configured for 422 or not.
            True indicates that 422 mode is enabled. False indicates that 422 mode is disabled.</param>
            <returns>The serial communications mode corresponding to the bit values.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.DecodeSW2">
            <summary>
            Decodes the backplane configuration settings, as defined by external pull-up/pull-down lines on the card.
            The original 907-SER card uses SW2. The 907-SER (ICE) uses two (2) external wires. The max number of cards that can be decoded are 4 - at the present time 09/06/2012 only 3 cards are planned to for use.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.BoardMode">
            <summary>
            Gets the board mode setting as defined by SW1 (Remote or Console).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.BackplaneMode">
            <summary>
            Gets the backplane mode setting, as defined by SW2 on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.ActiveIOChannels">
            <summary>
            Gets the active IO channels, as defined by SW2 on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.BackplaneChannels">
            <summary>
            Gets the backplane channels in use, as defined by SW2 on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.MaxBaudRate">
            <summary>
            Gets the maximum baud rate, as defined by SW2 on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.SampleRate">
            <summary>
            Gets the sample rate, as defined by SW2 on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907SerialPssl.OnboardSerialDataChannels">
            <summary>
            Gets the list of onboard serial data channel statuses.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite">
            <summary>
            
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.ISfpMsaAndNonMsa">
            <summary>
            An interface representing commonality between the various SFPMsaAndNonMsa implementations.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.ISfpMsaAndNonMsa.WriteData">
            <summary>
            A means to write data back to the SFPMsaAndNonMsa.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            This is here as a place holder. Writing data back to the SFP when a motherboard is used requires writing a sequence to the FPGA
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.#ctor">
            <summary>
            Constructs a new SfpDualTxVideoComposite.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.Id">
            <summary>
            Gets the SFP unique ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            NOTE: THIS IS A PLACE HOLER AND IT IS NOT IMPLEMENTED YET
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.Identifier">
            <summary>
             Gets the SFP Identifier. Table A0, Byte[0].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.SfpConnectorCode">
            <summary>
             Gets the SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.SfpConnectorDescription">
            <summary>
             Gets the SFP Connector Description from SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.SfpDescription">
            <summary>
             Gets the SFP Description.
             For now, it will be based on the Sfp Identifier but it could be based in more parameters.
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.VideoActiveCh1">
            <summary>
             Gets the SFP Deserializer Lock for Video Channel 1
             0=Unlocked
             1=Locked
             Ch1 = Table A2, Byte[190][0]        
             </summary>                 
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.VideoActiveCh2">
            <summary>
             Gets the SFP Deserializer Lock for Video Channel 2.
             0=Unlocked
             1=Locked
             Ch2 = Table B2, Byte[190][0] 
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.Wavelength">
            <summary>
             Gets (nm) nominal laser wavelength. Table A0h, Bytes[60-61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxVideoComposite.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="T:Focal.Utilities.MiscUtils">
            <summary>
            A collection of some useful utility methods.
            </summary>
        </member>
        <member name="T:Focal.Utilities.MiscUtils.Func`2">
            <summary>
            Encapsulates a method has a single 'out' parameter of type TOutParam
            and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="TOutParam">The type of the 'out' parameter of the 
            method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method
            that this delegate encapsulates.</typeparam>
            <param name="output"></param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Focal.Utilities.MiscUtils.Func`3">
            <summary>
            Encapsulates a method has one parameter of type T, a single 'out' parameter
            of type TOutParam and returns a value of the type specified by the TResult 
            parameter.
            </summary>
            <typeparam name="T">The type of the parameter of the method that this 
            delegate encapsulates.</typeparam>
            <typeparam name="TOutParam">The type of the 'out' parameter of the 
            method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method
            that this delegate encapsulates.</typeparam>
            <param name="input"></param>
            <param name="output"></param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Focal.Utilities.MiscUtils.Func`4">
            <summary>
            Encapsulates a method has two parameters of type T1, T2, a 
            single 'out' parameter of type TOutParam and returns a value of the
            type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="TOutParam">The type of the 'out' parameter of the 
            method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method
            that this delegate encapsulates.</typeparam>
            <param name="arg1"></param>
            <param name="arg2"></param>
            <param name="output"></param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Focal.Utilities.MiscUtils.Func`5">
            <summary>
            Encapsulates a method has three parameters of type T1, T2, T3, a 
            single 'out' parameter of type TOutParam and returns a value of the
            type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="TOutParam">The type of the 'out' parameter of the 
            method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method
            that this delegate encapsulates.</typeparam>
            <param name="arg1"></param>
            <param name="arg2"></param>
            <param name="arg3"></param>
            <param name="output"></param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Focal.Utilities.MiscUtils.Func`6">
            <summary>
            Encapsulates a method has four parameters of type T1, T2, T3, T4 a 
            single 'out' parameter of type TOutParam and returns a value of the
            type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="TOutParam">The type of the 'out' parameter of the 
            method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method
            that this delegate encapsulates.</typeparam>
            <param name="arg1"></param>
            <param name="arg2"></param>
            <param name="arg3"></param>
            <param name="arg4"></param>
            <param name="output"></param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Focal.Utilities.MiscUtils.Func`7">
            <summary>
            Encapsulates a method has four parameters of type T1, T2, T3, T4, T5 a 
            single 'out' parameter of type TOutParam and returns a value of the
            type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the 5th parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="TOutParam">The type of the 'out' parameter of the 
            method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method
            that this delegate encapsulates.</typeparam>
            <param name="arg1"></param>
            <param name="arg2"></param>
            <param name="arg3"></param>
            <param name="arg4"></param>
            <param name="arg5"></param>
            <param name="output"></param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Focal.Utilities.MiscUtils.Func`8">
            <summary>
            Encapsulates a method has four parameters of type T1, T2, T3, T4, T5, T6 a 
            single 'out' parameter of type TOutParam and returns a value of the
            type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the 5th parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the 6th parameter of the method 
            that this delegate encapsulates.</typeparam>
            <typeparam name="TOutParam">The type of the 'out' parameter of the 
            method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method
            that this delegate encapsulates.</typeparam>
            <param name="arg1"></param>
            <param name="arg2"></param>
            <param name="arg3"></param>
            <param name="arg4"></param>
            <param name="arg5"></param>
            <param name="arg6"></param>
            <param name="output"></param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.MediaConverterTypeAttribute">
            <summary>
            Specifies the type of MediaConverter of the target element.
            </summary>
            <remarks>
            Typically we apply this attribute to each element in the enumeration
            of supported MediaConverter Id's so that we know which type of MediaConverter object to
            instantiate after the Id has been retrieved.
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.#ctor">
            <summary>
            Constructs a new SfpDualRxVideoComposite.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.Id">
            <summary>
            Gets the SFP unique ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            NOTE: THIS IS A PLACE HOLER AND IT IS NOT IMPLEMENTED YET
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.Identifier">
            <summary>
             Gets the SFP Identifier. Table A0, Byte[0].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.SfpConnectorCode">
            <summary>
             Gets the SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.SfpConnectorDescription">
            <summary>
             Gets the SFP Connector Description from SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.SfpDescription">
            <summary>
             Gets the SFP Description.
             For now, it will be based on the Sfp Identifier but it could be based in more parameters.
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.VideoActiveCh1">
            <summary>
             Gets the Active Video status for Video Channel 1
             1 = Active video detected at VIN
             0 = No active video detected on VIN
             Ch1 = Table A2, Byte[128][6]        
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.VideoActiveCh2">
            <summary>
             Gets the Active Video status for Video Channel 2
             1 = Active video detected at VIN
             0 = No active video detected on VIN
             Ch2 = Table B2, Byte[128][6] 
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.Wavelength">
            <summary>
             Gets (nm) nominal laser wavelength. Table A0h, Bytes[60-61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoComposite.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.#ctor">
            <summary>
            Constructs a new SfpTxvrSdiVideo.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.Id">
            <summary>
            Gets the SFP unique ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            NOTE: THIS IS A PLACE HOLER AND IT IS NOT IMPLEMENTED YET
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.Identifier">
            <summary>
             Gets the SFP Identifier. Table A0, Byte[0].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.SfpDescription">
            <summary>
             Gets the SFP Description.
             For now, it will be based on the Sfp Identifier but it could be based in more parameters.
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.SfpConnectorCode">
            <summary>
             Gets the SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.SfpConnectorDescription">
            <summary>
             Gets the SFP Connector Description from SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.VideoActiveRx">
            <summary>
             Gets the Active Video status for Video RX
             Table A2, Byte[110]
             [110][1] = LOS (Loss of Signal) is an active high open-drain output that returns the loss of a valid SDI input by the receiver equalizer.
             1 = No input Detected (note inverted logic below)
             0 = Input Detected (note inverted logic below) 
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.VideoActiveTx">
            <summary>
             Gets the Active Video status for Video TX (using TX_DIS validation)        
             1 = Video TX
             0 = No Video TX
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.VideoTxDisPinState">
            <summary>
             Gets the Tx Disable Pin State
             Table A2, Byte[110]
             [110][7] = TX_DIS input pin state can be read via this bit 
             TX_DIS is an active high input that is used to shut down the transmitter
             electrical output. It is internally pulled up with a 4.7kΩ to 10kΩ resistor. (The
             output may be disabled by registry even if TX_DIS=’0’)
             1 = High/Open = Transmitter Disabled (note inverted logic below)
             0 = Low = Transmitter Enabled (note inverted logic below)
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.VideoSoftTxDisSelectState">
            <summary>
             Gets the Soft Tx_Disable Select State
             Table A2, Byte[110]
             [110][6] = Soft_Tx_Dis 
             1=Force Disable TX
             0=Use TX_DIS pin (default)
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.ReclockerBypassRx">
            <summary>
             Gets the Reclocker Bypass Rx
             Table A2, Byte[124]
             [124][2] = ReclockerBypass 
             1=Bypass
             0=Auto-Bypass (default)
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.ReclockerBypassStateRx">
            <summary>
             Gets the Reclocker Bypass Rx State
             Table A2, Byte[124]
             [124][2] = ReclockerBypass 
             1=Bypass
             0=Auto-Bypass (default)
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.ReclockerLockRx">
            <summary>
             Gets the Reclocker Lock Rx
             Table A2, Byte[124]
             [124][1] = Reclocker Lock 
             1 = Lock Detect
             0 = Not Lock
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.ReclockerRateTx">
            <summary>
             Gets the SFP Reclocker Rate for Channel TX.
             [120][3] = Reclocker Rate
             1=HD, 0=SD
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.ReclockerBypassTx">
            <summary>
             Gets the Reclocker Bypass Tx
             Table A2, Byte[120]
             [120][2] = ReclockerBypass 
             1=Bypass
             0=Auto-Bypass (default)
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.ReclockerBypassStateTx">
            <summary>
             Gets the Reclocker Bypass Tx State
             Table A2, Byte[120]
             [120][2] = ReclockerBypass 
             1=Bypass
             0=Auto-Bypass (default)
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.ReclockerLockTx">
            <summary>
             Gets the Reclocker Lock Tx
             Table A2, Byte[120]
             [120][1] = Reclocker Lock 
             1 = Lock Detect
             0 = Not Lock
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.Wavelength">
            <summary>
             Gets (nm) nominal laser wavelength. Table A0h, Bytes[60-61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpTxvrSdiVideo.SfpVideoStandardFormat">
            <summary>
            Enumerates video standard formats supported by the SFP.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.HdmSerializer">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.HdmSerializer.#ctor">
            <summary>
            Constructs a new HDM Deserializer.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmSerializer.Format">
            <summary>
            Gets the format of the incoming video data.
            See LMH0030 data sheet for register details.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmSerializer.Specification">
            <summary>
            Gets the specification of the incoming video data.
            See LMH0030 data sheet for register details.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmSerializer.FrameRate">
            <summary>
            Gets the frame rate of the incoming video data.
            See LMH0030 data sheet for register details.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmSerializer.Lines">
            <summary>
            Gets the lines of the incoming video data.
            See LMH0030 data sheet for register details.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmSerializer.ActiveLines">
            <summary>
            Gets the active lines of the incoming video data.
            See LMH0030 data sheet for register details.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.HdmVideoChannel">
            <summary>
            Encapsulates the status for a single hdm video channel.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.HdmVideoChannel.#ctor(System.String)">
            <summary>
            Constructs a new VideoChannel.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.HdmVideoChannel.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.HdmVideoChannel.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmVideoChannel.ChannelName">
            <summary>
            Gets the name of this video channel.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmVideoChannel.VideoActive">
            <summary>
            Gets or Sets the flag indicating that video is active.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmVideoChannel.VideoFormat">
            <summary>
            Gets or sets the HDM Video Format.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.HdmVideoChannel.HdmVideoFormat">
            <summary>
            Enumerates video channel formats for the HDM2 fpga.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpMsaAndNonMsaFactory">
            <summary>
            Provides a means to create an SfpMsaAndNonMsa object from a raw data array.
            </summary>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.SfpMsaAndNonMsaFactory.SfpIDRegNum">
            <summary>
            The byte index in the raw data array at which the SFPMsaAndNonMsa ID can be found.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpMsaAndNonMsaFactory.CreateSfpNonMsa(System.Byte[],System.Byte[],System.Byte[])">
            <summary>
            Constructs a new SFPMsaAndNonMsa object using the supplied RawData array.
            </summary>
            <remarks>
            The RawData array should be populated with real data so that the
            ID of the SFPMsaAndNonMsa can be determined and the correct type of SFPMsaAndNonMsa object
            instantiated.
            </remarks>
            <param name="rawDataA0">The raw data array for the sfp's A0 page.</param>
            <param name="rawDataA2">The raw data array for the sfp's A2 page.</param>
            <param name="rawDataB2">The raw data array for the sfp's B2 page.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpMsaAndNonMsaFactory.CreateSfpMsa(System.Byte[],System.Byte[])">
            <summary>
            Constructs a new SFPMsa object using the supplied RawData array.
            </summary>
            <remarks>
            The RawData array should be populated with real data so that the
            ID of the SFPMsa can be determined and the correct type of SFPMsa object
            instantiated.
            </remarks>
            <param name="rawDataA0">The raw data array for the sfp's A0 page.</param>
            <param name="rawDataA2">The raw data array for the sfp's A2 page.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpMsaAndNonMsaFactory.CreateSfpMsaAndNonMsa(System.Byte[],System.Byte[],System.Byte[],Focal.Model907.Diagnostics.Models.I2CDeviceConfig)">
            <summary>
            Constructs a new SFPMsaAndNonMsa object using the supplied RawData array.  
            The i2cDeviceConfig reference provides a means for custom methods
            in the sfpMsaAndNonMsa object to write data back to the sfpMsaAndNonMsa.
            </summary>
            <remarks>
            The RawData array should be populated with real data so that the
            ID of the SFPMsaAndNonMsa can be determined and the correct type of SFPMsaAndNonMsa object
            instantiated.
            </remarks>
            <param name="rawDataA0">The raw data array for the sfp's A0 page.</param>
            <param name="rawDataA2">The raw data array for the sfp's A2 page.</param>
            <param name="rawDataB2">The raw data array for the sfp's B2 page.</param>
            <param name="i2cDeviceConfig">The parent i2c device instance, used to provide
            a path to a method for writing data back to the SFPMsaAndNonMsa.</param>
            <returns></returns>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpFactory">
            <summary>
            Provides a means to create an SFP object from a raw data array.  
            </summary>    
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpFactory.CreateSfp(System.Byte[],System.Byte[])">
            <summary>
            Creates a new strongly typed SFP from the supplied RawData arrays.
            </summary>
            <param name="rawDataA0">The raw data array for the sfp's A0 page.</param>
            <param name="rawDataA2">The raw data array for the sfp's A2 page.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpFactory.CreateSfp2(System.Byte[],System.Byte[])">
            <summary>
            Creates a new strongly typed SFP2 from the supplied RawData arrays.
            </summary>
            <param name="rawDataB0">The raw data array for the sfp's B0 page.</param>
            <param name="rawDataB2">The raw data array for the sfp's B2 page.</param>
            <returns></returns>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.VideoChannel">
            <summary>
            Encapsulates the status for a single video channel.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.VideoChannel.#ctor(System.String)">
            <summary>
            Constructs a new VideoChannel.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.VideoChannel.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.VideoChannel.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.VideoChannel.ChannelName">
            <summary>
            Gets the name of this video channel.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.VideoChannel.VideoActive">
            <summary>
            Gets or Sets the flag indicating that video is active.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.VideoChannel.OutOfRange">
            <summary>
            Gets or Sets the flag indicating that the video signal is out of range.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.VideoChannel.VideoMode">
            <summary>
            Gets or Sets the analog video mode of the channel.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.VideoChannel.VideoModeVisible">
            <summary>
            Gets or Sets the flag indicating whether the video mode for this channel is visible.
            </summary>        
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet">
            <summary>
            Represents a Focal Technologies Model 907 Quad Gigabit Ethernet FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.#ctor">
            <summary>
            Constructs a new 907 Quad GbE FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.ActiveSwitchSettings">
            <summary>
            Gets the currently active switch 2 setting used by hardware.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.SfpStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.SfpStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.SfpStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.DipSwitch2Status">
            <summary>
            Gets the DIP Switch 2 Status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907QuadGigabitEthernet.PortStatus">
            <summary>
            Gets the list of copper port statuses.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.DiagExpansionCard">
            <summary>
            Represents an expansion card in a Model 907 system.
            </summary>
            <remarks>
            <para>Up to 6 expansion cards may exist in each stack.</para>
            <para>An expansion card does not support optics, and therefore has 
            1 FPGA and no SFP's on board.</para>
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.ICard">
            <summary>
            Represents commonality between cards in the stack.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagExpansionCard.#ctor(System.String,Focal.Model907.Diagnostics.Models.LinkSide,Focal.Model907.Diagnostics.Models.I2CDeviceConfig)">
            <summary>
            Constructs a new Diagnostic Expansion Card.
            </summary>
            <remarks>
            A Diagnostic Expansion Card in a 907 system always has one FPGA and no SFPs.
            </remarks>
            <param name="description">The description of the card.</param>
            <param name="linkSide">The side of the optical link on which the card resides.</param>
            <param name="i2cDeviceConfig">The i2c device configuration for the fpga.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagExpansionCard.CreateFpga">
            <summary>
            Creates the proper type of Fpga object using the raw data from the
            i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data in the i2c
            device configuration has been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagExpansionCard.InitDevicesAfterNextRefresh">
            <summary>
            Inidcates that the appropriate factory method to (re)initialize the card
            device types (i.e. the fpga) should be called after the next 
            refresh of data is received.
            </summary>
            <remarks>
            This method is typically called when the stack configuration
            needs to be determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagExpansionCard.RefreshData(System.Boolean)">
            <summary>
            Refreshes data from all on-card devices.
            </summary>
            <returns>
            True if all data was successfully refreshed, False otherwise.
            </returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagExpansionCard.FpgaI2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device 
            is updated, meaning that we have the 'go-ahead' to determine
            the type of FPGA that answered (eg. 907+, 907V, etc) (if we don't already
            know), or to update the fpga's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagExpansionCard.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.DiagExpansionCard.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagExpansionCard.Description">
            <summary>
            The description of the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagExpansionCard.LinkSide">
            <summary>
            The side of the optical link on which the card resides.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagExpansionCard.Fpga">
            <summary>
            The Fpga on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagExpansionCard.DetectedCardDescription">
            <summary>
            Gets the description of the detected card type.  
            This property is basically just a wrapper for Fpga.Id. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagExpansionCard.FpgaDetected">
            <summary>
            Get whether a supported FPGA has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagExpansionCard.SfpDetected">
            <summary>
            Get whether an SFP has been detected. (Added for future use and to avoid 12x data binding errors) 
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagExpansionCard.I2CDeviceAddresses">
            <summary>
            Gets a dictionary of the card's I2C device addresses where the key is the
            device address and the value is the device description.        
            </summary> 
            <remarks>
            We expose this property to provide an easy means to enumerate the 
            i2c devices in a 907 system, particularly for custom LED configuration
            on the diagnostic card.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagExpansionCard.SfpOrEepromDetected">
            <summary>
            Get whether an SFP or EEPROM has been detected. 
            THIS PROPERTY IS NOT IMPLEMENTED
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            Also, this property is used to 'hide' or 'show' and media converter card with SFPs or just with Serial EEPROM but no SFP.
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.DiagCardAdcConfig">
            <summary>
            Represents the analog voltage readings for a diagnostics card.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardAdcConfig.#ctor">
            <summary>
            Constructs a new Network configuration.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardAdcConfig.ScaleAnalogValue(System.Double,System.Double,System.Int32)">
            <summary>
            Scales an onboard a/d value from the diagnostics card.
            </summary>
            <param name="adCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardAdcConfig.Clone(System.Boolean)">
            <summary>
            Performs either a shallow or a deep copy of the current AdcConfig object.
            </summary>
            <param name="doDeepCopy">Perform a 'deep copy' of the object. 
            (separate copies of each reference field).</param>
            <returns>The cloned object.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardAdcConfig.Clone">
            <summary>
            Performs a deep copy of the AdcConfig object.
            </summary>
            <returns>A deep copy of the AdcConfig object.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardAdcConfig.Voltage12">
            <summary>
            Gets the voltage reading from the 1.2VDC rail on the diagnostics card (V). Bytes[0-1].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardAdcConfig.Voltage33">
            <summary>
            Gets the voltage reading from the 3.3VDC rail on the diagnostics card (V). Bytes[2-3].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardAdcConfig.Voltage33Backplane">
            <summary>
            Gets the voltage reading from the Backplane 3.3VDC rail on the diagnostics card (V). Bytes[4-5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardAdcConfig.Voltage25">
            <summary>
            Gets the voltage reading from the 2.5VDC rail on the diagnostics card (V). Bytes[4-5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardAdcConfig.Voltage5">
            <summary>
            Gets the voltage reading from the 5VDC rail on the diagnostics card (V). Bytes[6-7].
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.MediaConverter907Flex">
            <summary>
            Represents a Focal Technologies Model 907-FLEX
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.IMediaConverter">
            <summary>
            An interface representing commonality between the various 907 Media Converter implementations.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.IMediaConverter.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.ADCWarningLevel">
            <summary> 
            Gets the voltages readings of the 907-Es on-board 8-bit ADC (AD7999)
            The information is read in the followin order:
            From ADC to FPGA then From FPGA to Diagnostic Software
             +---------------------------------------------------------------------------------------------------+
             |FPGA memory map                                                   | Valid Voltage                  |
             |                                                                  |  8-bit values                  |
             |------------------------------------------------------------------+--------------------------------|
             |5V   | assign local_registers_in_array[24]  = adc_data[  7:  0]; | [11:4]  (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[25]  = adc_data[ 15:  8]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |3.3V | assign local_registers_in_array[26]  = adc_data[ 23: 16]; | [27:20] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[27]  = adc_data[ 31: 24]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |12V  | assign local_registers_in_array[28]  = adc_data[ 39: 32]; | [43:36] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[29]  = adc_data[ 47: 40]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |1.2V | assign local_registers_in_array[30]  = adc_data[ 55: 48]; | [59:52] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[31]  = adc_data[ 63: 56]; |                                |
             +---------------------------------------------------------------------------------------------------+        
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.#ctor">
            <summary>
            Constructs a new 907Flex Media Converter.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.ScaleAnalogValue(System.Double,System.Double,System.Int32)">
            <summary>
            Scales an onboard a/d value from the diagnostics card.
            </summary>
            <param name="adCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.DecodeSerialTriMode(System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            Decodes the serial communications mode based on the supplied bit values.
            </summary>       
            <param name="swBitSetting1">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 1, 3, 5 or 7 from SW2 on the 907E2).</param>
            <param name="swBitSetting2">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 0, 2, 4 or 6  from SW2 on the 907E2).</param>
            <param name="swBitSetting3">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 6  from SW1 on the 907E2).
            this is to indicate whether the configuration is loaded from EEPROM or SW2
            and it is only applicable to RS-485 for user timeout configuration</param>/// 
            <returns>The serial communications mode corresponding to the bit values.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.DecodeSwitchStatus(System.Boolean)">
            <summary>        
            Decodes the dip switch state based on the supplied bit value.
            </summary>       
            <param name="swBitSetting1">The switch setting corresponding to SW#[N] 
            where #=1 or 2 for the 907E and N=1-8 because the two on-board dip switches have 8 pins.</param>
            <returns>The dip switch state (ON or OFF).</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteSwSetting(System.Int32,System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to turn a dip switch ON or OFF
            </summary>
            <remarks>
            assign write_serial_number_eeprom_data[575:568]    = (enable_setting_changes[3])? local_registers_out_array[222] : read_serial_number_eeprom_data[575:568];
            assign write_serial_number_eeprom_data[583:576]    = (enable_setting_changes[4])? local_registers_out_array[223] : read_serial_number_eeprom_data[583:576];
            local_registers_out_array[222] To write to SW1
            local_registers_out_array[223] To write to SW2
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <param name="dipSwNum">The dip switch number (1 or 2) for which the operation will be performed.</param>
            <param name="swPin"> The switch pin (0-7) for which the operation will be performed.</param>
            /// <param name="swState"> The desired state of the switch (On=1 or Off=0).</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteSerChProgrammableDelay(System.Int32,System.Byte)">
             <summary>
             Provides to the FPGA User Definded Serial Data Timeout Values
             </summary>
             <remarks>
             Note: This method will write to FPGA registers: 248,249,250 and 251 for serial data  channels 1, 2, 3 and 4 respectively.
                   It will also perform a write enable on FPGA reg 252.
             assign write_serial_number_eeprom_data[527:520]    = (enable_ser_ch_changes[1])? local_registers_out_array[248] : read_serial_number_eeprom_data[527:520];
             assign write_serial_number_eeprom_data[535:528]    = (enable_ser_ch_changes[2])? local_registers_out_array[249] : read_serial_number_eeprom_data[535:528];
             assign write_serial_number_eeprom_data[543:536]    = (enable_ser_ch_changes[3])? local_registers_out_array[250] : read_serial_number_eeprom_data[543:536];
             assign write_serial_number_eeprom_data[551:544]    = (enable_ser_ch_changes[4])? local_registers_out_array[251] : read_serial_number_eeprom_data[551:544];
             
             assign ser_ch_programmable_delay[1]                = {read_serial_number_eeprom_data[527:520],8'h00};
             assign ser_ch_programmable_delay[2]                = {read_serial_number_eeprom_data[535:528],8'h00};
             assign ser_ch_programmable_delay[3]                = {read_serial_number_eeprom_data[543:536],8'h00};
             assign ser_ch_programmable_delay[4]                = {read_serial_number_eeprom_data[551:544],8'h00};
            
             assign enable_ser_ch_changes                       = local_registers_out_array[252][4:1];
             </remarks>
             <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
             has not been assigned.</exception>
             <param name="serChNum"> The Serial Ch Number to which a new programmable delay will be applied (Valid values are int 1-4).</param>
             <param name="byteData"> A pre-validated byte which represents the actual delay value.</param>
             <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteSerChTerminator(System.Int32,System.Boolean)">
            <summary>
            Indicates the FPGA to Enable/Disable the 120 ohm terminator resistor in the LT serial data transceiver.
            </summary>
            <remarks>
                  
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];     
            
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            
            assign ch_te_n_eeprom_setting                      = read_serial_number_eeprom_data[567:564];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <param name="serChNum"> The Serial Ch Number to which the 120 ohm terminator will be enabled/disabled (Valid values are int 1-4).</param>
            <param name="enableDisable">Enable/Disable Terminator. True = Enable. False = Disable.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SaveAllSerChTerminator">
            <summary>
            Indicates the FPGA to Enable/Disable the 120 ohm terminator resistor in the LT serial data transceiver.
            This method SAVES values in EEPROM
            </summary>
            <remarks>
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteIgnoreVideoClamp(System.Boolean)">
            <summary>
            Indicates the FPGA to Enable/Disable video clamps.
            </summary>
            <remarks>
                  
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];     
            
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            
            assign ignore_video_clamps                         = read_serial_number_eeprom_data[561];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>        
            <param name="enableDisable">Enable/Disable Video Clamp. True = Video Clamp Ignored (for non-video signal). False = Video Clamp is Active (for regular NTSC/PAL video signal).</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SaveIgnoreVideoClampConfig">
            <summary>
            Indicates the FPGA to Enable/Disable video clamps.
            This method SAVES values in EEPROM
            </summary>
            <remarks>
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];     
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            assign ignore_video_clamps                         = read_serial_number_eeprom_data[561];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteSwitchTakeover(System.Boolean)">
            <summary>
            Requests the FPGA to turn use EEPROM Dip Switch Settings or On-Board Dip Switch Settings
            </summary>
            <param name="enableEepromDipSwSettings">0 = Use EEPROM DIP Sw Settings; 1 = Use On-Board DIP Sw Settings</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SaveExtendedSettings">
            <summary>
            Indicates the FPGA to save the Termination, Video and Switch Takeover settings.
            This method SAVES values in EEPROM
            </summary>
            <remarks>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.ClearLinkLossErrorCounter">
            <summary>
            A method used to ClearLinkLossErrorCounter
            </summary>
            <returns>True if the command succeeded, False otherwise.</returns>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.EnetLinkFaultPassThrough(System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable Link Fault Pass Through
            </summary>
            <remarks>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <param name="state">
            1 = Link Fault Pass Through Enabled (Enet link will communicate the far end the status of the local link). 
            0 = Link Fault Pass Through Disabled (Enet link will NOT communicate the far end the status of the local link). .</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.TogglePhySettingsControl(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable Control of PHY Settings
            </summary>
            <remarks>
            Name	                 Description	                                                           Register
            Enable GUI Control    1 – Enable control of PHY status from GUI and write settings to EEPROM  PHY0 =REG[240][5]
            of PHY Settings       0 – Use settings in EEPROM                                              PHY1 =REG[241][5]
                                                                                                          PHY2 =REG[242][5]
                                                                                                          PHY3 =REG[243][5]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyControl">Indicates whether to enable or 
            disable control of Phy settings for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.TogglePhyChangeMasterSlave(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable "Change Master/Slave Status"
            </summary>
            <remarks>
            Name	                 Description	                           Register
            Change Master/Slave    1 – Enable change to master slave status    PHY0 =REG[240][4]
            status                 0 – Leave status as is from EEPROM          PHY1 =REG[241][4]
                                                                               PHY2 =REG[242][4]
                                                                               PHY3 =REG[243][4]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyChangeMasterSlave">Indicates whether to enable or 
            disable change to master/slave status for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.TogglePhyMasterSlave(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable "Master/Slave Status"
            </summary>
            <remarks>
            Name	                 Description	         Register
            Master/Slave          1 – Master                PHY0 =REG[240][3]
            Status                0 – Slave                 PHY1 =REG[241][3]
                                                            PHY2 =REG[242][3]
                                                            PHY3 =REG[243][3]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyMasterSlave">Indicates whether to enable or 
            disable change to master/slave status for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.TogglePhy1000BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 1000 Base-T
            </summary>
            <remarks>
            Name	                 Description	                      Register
            Disable 1000 BASE-T     1 – 1000 BASE-T is disabled           PHY0 =REG[240][2]
                                    0 – 1000 BASE-T is enabled            PHY1 =REG[241][2]
                                                                          PHY2 =REG[242][2]
                                                                          PHY3 =REG[243][2]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy1000BT">Indicates whether to enable or 
            disable 1000 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.TogglePhy100BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 100 Base-T
            </summary>
            <remarks>
            Name	                  Description	                      Register
            Disable 100 BASE-T      1 – 100 BASE-T is disabled           PHY0 =REG[240][1]
                                    0 – 100 BASE-T is enabled            PHY1 =REG[241][1]
                                                                         PHY2 =REG[242][1]
                                                                         PHY3 =REG[243][1]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy100BT">Indicates whether to enable or 
            disable 100 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.TogglePhy10BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 10 Base-T
            </summary>
            <remarks>
            Name	                  Description	                      Register
            Disable 10 BASE-T       1 – 10 BASE-T is disabled           PHY0 =REG[240][0]
                                    0 – 10 BASE-T is enabled            PHY1 =REG[241][0]
                                                                        PHY2 =REG[242][0]
                                                                        PHY3 =REG[243][0]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy10BT">Indicates whether to enable or 
            disable 10 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.ToggleResetStatistics(System.Boolean)">
            <summary>
            Requests the FPGA to reset all statistcs counters
            </summary>
            <remarks>
            Address: FC (Hex) = 252 (dec)
            Bit[0]: reset_statistics
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.CopyAllPortSettings">
            <summary>
            Copies the first 5 bits of register 0x90 (144[4:0]) to registers 0xF0 (240[4:0])
            Used to 'refresh/get' the last saved port settings in EEPROM such as:
            enable 10/100/1000 Mbps, prefer master or slave and change master slave status
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteDataToPhy(System.Byte,System.UInt16)">
            <summary>
            Writes new data to the Ethernet PHY at the specified address.        
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteDataToPhyTrigger(System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Provides a positive edge to the FPGA to trigger write for PHY.
            </summary>
            <remarks>
            Address: 247 (dec)
            Bit[0]: trigger PHY write
            verify: true = verify enabled, false verify disable
            timeout: maximum time in ms to wait before considering a fail write.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.VerifyWriteData(System.Byte,System.Int32,System.Boolean,System.Int64)">
            <summary>
            Verifies if the bit value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms..
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="expectedValue"> The expected value of bitNum in regNum (true or false). </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.FactoryDefaultCardConfiguration(System.Int32)">
            <summary>
            Indicates the FPGA to Use Factory Default Configurations
            </summary>
            <remarks>        
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData"/> 
            has not been assigned.</exception>
            <param name="cardMode"> The desired factory default card mode. 1=907E-625M; 2=907E-1G25; 3=907E-2G50</param>        
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.ToString">
            <summary>
            override string ToString
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteDataToFpgaTrigger(System.Byte,System.Int32,System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Provides a positive or negative edge to the FPGA to trigger a write.
            </summary>
            <remarks>
            Address: 247 (dec)
            Bit[0]: trigger PHY write
            verify: true = verify enabled, false verify disable
            timeout: maximum time in ms to wait before considering a fail write.
            </remarks>
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="OneOrZero"> true=One=Positive Edge to FPGA. false=Zero=Negative Edge to FPGA </param>
            <param name="verify"> true=perform a verification of the written data and wait X timeout before to give up. false=Do not perform verification, just assume that the data was written in time. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.VerifyWriteDataBit(System.Byte,System.Int32,System.Boolean,System.Int64)">
            <summary>
            Verifies if the bit value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms..
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="expectedValue"> The expected value of bitNum in regNum (true or false). </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.VerifyWriteData(System.Byte,System.Byte,System.Int64)">
            <summary>
            Verifies if the byte value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms.
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>        
            <param name="expectedValue"> The expected value of the byte in regNum. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.TransactionDelay(System.Int64)">
            <summary>
            Adds a delay between transactions for up to the time specified. The 'delay' value is expressed in (long) ms.        
            Typically this method is used after the WriteData method is called.
            </summary>        
            <param name="delay"> Required delay in ms. E.g. 1000 = 1sec.</param>
            <remarks>                
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.AssemblyNumberInt">
            <summary>
            Gets the board's Assembly Number Int.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.IsConsole">
            <summary>
            Gets whether the 907E2 is configured as a Console or Remote.  
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.DipSw1">
            <summary>
            Gets the DIP switch 1 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.DipSw2">
            <summary>
            Gets the DIP switch 2 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.OnboardDipSwitch1">
            <summary>
            Gets the list of onboard SW1 switches status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.OnboardDipSwitch2">
            <summary>
            Gets the list of onboard SW2 switches status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.Sw1SettingControl">
            <summary>
            Gets a list where each element indicates whether an switch (from EEPROM) has been selected to be ON or OFF
            Source: FPGA reg 222
            Applicable to Dip SW1
            1 – Switch ON
            0 – Switch OFF
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.Sw2SettingControl">
            <summary>
            Gets a list where each element indicates whether a switch (from EEPROM) has been selected to be ON or OFF
            Source: FPGA reg 223
            Applicable to Dip SW2
            1 – Switch ON
            0 – Switch OFF
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PreSavedEepromDipSw1">
            <summary>
            Gets the pre-saved status of EEPROM dip switch 1
            Source: FPGA reg 222        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PreSavedEepromDipSw2">
            <summary>
            Gets the pre-saved status of EEPROM dip switch 2
            Source: FPGA reg 223        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.EepromDipSw1">
            <summary>
            Gets the EEPROM DIP switch 1 status
            From FPGA code:
            assign local_registers_in_array[ 57]               = read_serial_number_eeprom_data[559:552];  // Switch 1 settings from EEPROM
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.EepromDipSw2">
            <summary>
            Gets the EEPROM DIP switch 2 status
            From FPGA code:
            assign local_registers_in_array[ 58]               = read_serial_number_eeprom_data[567:560];  // Switch 2 settings from EEPROM
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.EepromDipSwitchChanged">
            <summary> 
            Compares EepromDipSw1 and Sw2 vs Sw1SettingControl and Sw2
            To determine if changes made in the GUI have been saved in EEPROM or not.
            Returns false if there are no changes, true if there are changes
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.ActiveDipSw1">
            <summary>
            Gets the Active (EEPROM vs On-board) DIP switch 1 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.ActiveDipSw2">
            <summary>
            Gets the Active (EEPROM vs On-board) DIP switch 2 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.ExtendedSettingsChanged">
            <summary> 
            Compares the EEPROM Extended Configuration (Termination, Video and Sw Takeover) vs Extended Configuration Settings Pre-EEPROM
            The actual registers under comparison are FPGA regNum=221 dec (selected values) vs regNum=59 dec (values read by FPGA from EEPROM)
            To determine if changes made in the GUI have been saved in EEPROM or not.
            Returns false if there are no changes, true if there are changes
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SerChTermination">
            <summary>
            Gets the RS485/422 120 ohm termination state saved in EEPROM (returns a list of bool)
            <remarks>
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SerChTerminationStatus">
            <summary>
            Gets the RS485/422 120 ohm termination state saved in EEPROM (returns a list of strings)
            <remarks>
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SerChTerminationSelected">
            <summary>
            Gets the RS485/422 120 ohm termination state selected (returns a list of bool)
            <remarks>
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.IgnoreVideoClampSelected">
            <summary>
            Gets the Pre-Saved EEPROM ignore video clamp selection status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.IgnoreVideoClampStatus">
            <summary>
            Gets the Saved EEPROM ignore video clamp selection status
            From FPGA code: Acutal value is in bit 1 of FpgaReg 59
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.IgnoreVideoClamp">
            <summary>
            Gets the Saved EEPROM ignore video clamp selection status (returns a bool)
            From FPGA code: Acutal value is in bit 1 of FpgaReg 59
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.HwSwitchTakeover">
            <summary>
            Gets the Hardware Switch Takeover Status
            From Dip SW1 pin 2.
            1 = Use On-board Dip switches configuration based on SW1[2] (SW1 has pins 1 to 8)
            0 = Use switche configuration based on EEPROM. The card config can be loaded from on-board SW1[2] (SW1 has pins 1 to 8) or EEPROM
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SwitchTakeover">
            <summary>
            Gets the EEPROM Switch Takeover Status
            From FPGA code: Acutal value is in bit 0 of FpgaReg 59
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SwitchTakeoverSelected">
            <summary>
            Gets the Selected Switch Takeover Status
            From FPGA code: Acutal value is in bit 0 of FpgaReg 221
            assign switch_takeover                             = read_serial_number_eeprom_data[560];
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.VideoChannels">
            <summary>
            Gets the list of Video Channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.BackplaneDataChannels">
            <summary>
            Gets the list of backplane Tx/Rx data channel statuses.        
            1 = LED on = Tx/Rx Activity Detected
            0 = LED off = Tx/Rx Activity NOT Detected
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.OnboardSerialDataChannels">
            <summary>
            Gets the list of onboard serial data channel statuses.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SerChProgrammableDelayValue">
            <summary>
            Gets the Onboard Serial ata Programmable Delay Values in EEPROM
            <remarks>
            assign local_registers_in_array[145]               = read_serial_number_eeprom_data[527:520];
            assign local_registers_in_array[146]               = read_serial_number_eeprom_data[535:528];
            assign local_registers_in_array[147]               = read_serial_number_eeprom_data[543:536];
            assign local_registers_in_array[148]               = read_serial_number_eeprom_data[551:544];        /// 
            </remarks>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.LinkFault">
            <summary>
            Gets the Link Fault Led indicator.
            Address: 06 (hex)
            Bits[2]
            </summary>        
        </member>
        <!-- Badly formed XML comment ignored for member "P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.OpticalSpeed" -->
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.LinkLossCounter">
            <summary>
            Gets the Link Loss Counts
            Address: 11 (dec)
            Bits[7:0] 
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.CardConfigSummary">
            <summary>        /// 
            Gets a list where each element indicates a card configuration parameter
            Returns a list of strings
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SfpStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SfpStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.SfpStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhyStatus">
            <summary>
            Gets the list of Port statuses.
            </summary>
            <remarks>
            <para>See Micrel datasheet KSZ9021RL/RN October 20009 for PHY register map.</para>
            <para>Note that the 907E2 card provides data for registers all 31 registers 0 to 31
            for the on-board PHY</para>
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.EnetLinkFaultPassThroughSelected">
            <summary>
            Gets the status of Enet Link Fault Pass Through
            1 = Link Fault Pass Through Enabled (Enet link will communicate the far end the status of the local link). 
            0 = Link Fault Pass Through Disabled (Enet link will NOT communicate the far end the status of the local link).        /// 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettingsControlActive">
            <summary>
            Gets a list where each element indicates whether the "Control of PHY Settings"
            of that port is enabled.  Source: FPGA reg 240[5]
            
            1 – Enable control of PHY status from GUI and write settings to EEPROM
            0 – Use settings in EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettingsChangeMasterSlaveActive">
            <summary>
            Gets a list where each element indicates whether the "Change Master / Slave" status
            of that port is enabled.  Source: FPGA reg 240[4]
            
            0 – Enable change to master slave status
            1 – Leave status as is from EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettingsMasterSlaveActive">
            <summary>
            Gets a list where each element indicates whether the "Master" or "Slave" status
            of that port is enabled.  Source: FPGA reg 240[3]
            
            0 – Master
            1 – Slave
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettings1000BTActive">
            <summary>
            Gets a list where each element indicates whether the "1000 BASE-T" 
            of that port is enabled.  Source: FPGA reg 240[2]
            
            0 – 1000 BASE-T is disabled
            1 – 1000 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettings100BTActive">
            <summary>
            Gets a list where each element indicates whether the "100 BASE-T" 
            of that port is enabled.  Source: FPGA reg 240[1]
            
            0 – 100 BASE-T is disabled
            1 – 100 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettings10BTActive">
            <summary>
            Gets a list where each element indicates whether the "10 BASE-T" 
            of that port is enabled. Source: FPGA reg 240[0]
            
            0 – 10 BASE-T is disabled
            1 – 10 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettingsControlActiveE">
            <summary>
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Control of PHY Settings"
            of that port is enabled. (Data read from on-board EEPROM)
            
            0 – Enable control of PHY status from GUI and write settings to EEPROM
            1 – Use settings in EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettingsChangeMasterSlaveActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Change Master / Slave" status
            of that port is enabled.
            
            0 – Enable change to master slave status
            1 – Leave status as is from EEPROM        /// 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettingsMasterSlaveActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Master" or "Slave" status
            of that port is enabled.
            
            0 – Master
            1 – Slave
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettings1000BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "1000 BASE-T" 
            of that port is enabled.
            
            0 – 1000 BASE-T is disabled
            1 – 1000 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettings100BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "100 BASE-T" 
            of that port is enabled.
            
            0 – 100 BASE-T is disabled
            1 – 100 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettings10BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "10 BASE-T" 
            of that port is enabled.
            
            0 – 10 BASE-T is disabled
            1 – 10 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhySettingsChanged">
            <summary> 
            Gets the complete PHY register status 0x90 (144) and 0xF0 (240)
            used to determine if changes made in the GUI have been saved in EEPROM or not.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhyStatisticsPacketLoss">
            <summary> 
            Gets the packet loss count of each port        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.BackplaneEnable">
            <summary> 
            Gets the backplane enable/disable status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.BackplaneRxError">
            <summary> 
            Gets the backplane data receive underflow/overflow erros (Rx error)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.BackplaneTxError">
            <summary> 
            Gets the backplane data transmit underflow/overflow erros (Tx error)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhyPacketDropped">
            <summary> 
            Gets the Packet Dropped LED information
            Address 05 Hex
            Bit [3:0]: packet_dropped_led_n (active low)
            Per copper Ethernet port packet dropped indicator
            Corresponds to LEDs D4,D5,D6,D7
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhyEthernetCuActivityRx">
            <summary> 
            Gets the Ethernet Copper Recive Activity Port information
            Address 04 Hex
            Bit [3:0]: Ethernet Copper Receive Activity Ports [3:0] (active low)        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.PhyEthernetCuActivityTx">
            <summary> 
            Gets the Ethernet Copper Transmit Activity Port information
            Address 04 Hex
            Bit [7:4]: Ethernet Copper Transmit Activity Ports [3:0] (active low)        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.InputVoltage5vOr12vn">
            <summary>
            Gets the card's voltage input configuration
            1 = 5Vin
            0 = 12Vin.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.Voltage12">
            <summary>
            Gets the voltage reading from the 1.2VDC rail on the card. Bytes[0-1].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.Voltage12V">
            <summary>
            Gets the voltage reading from the 12VDC rail on the diagnostics card (V). Bytes[4-5].
            The actual voltage going into the ADC is 12V/5.02 = 2.39V. Vadc=12V/((4.02K+1K)/1K)=2.39V
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.Voltage33">
            <summary>
            Gets the voltage reading from the 3.3VDC rail on card (V). Bytes[2-3].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.MediaConverter907Flex.Voltage5">
            <summary>
            Gets the voltage reading from the 5VDC rail on the card (V). Bytes[6-7].
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.FpgaTypeAttribute">
            <summary>
            Specifies the type of FPGA of the target element.
            </summary>
            <remarks>
            Typically we apply this attribute to each element in the enumeration
            of supported Fpga Id's so that we know which type of Fpga object to
            instantiate after the Id has been retrieved.
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.DiagCardLedConfig">
             <summary>
             Represents the configuration for a single LED on the diagnostics card.
             </summary>
             <remarks>
             <para>907 Diagnostics Cards with firmware revision 22 and above support 
             user-configurable LED functionality.</para>
             
             <para>The led configuration is stored in non-volatile storage in eeprom.
             LED configuration is supported over a TCP link only.</para>
             
             <para>Each led can be turned ON or OFF depending upon the value
             returned from an I2C device register.</para>
             
             <para>An led configuration specifies either a 'word-level' or a 
             'bit-level' comparison, using either 8-bits or 16-bits.</para>
             
             <para>When a 16-bit comparison is specified, 2 consecutive bytes
             are read from the I2C device starting from the specified register 
             number.</para>
             
             <para>One of the 'config flags' allows the user to specify 
             'little-endian' or 'big-endian'.</para>  
             
             <para>If little-endian is selected, a 16-bit value is reconstructed 
             from the 2-bytes returned from the I2C device using the first
             byte as the LSB, and the second byte as the MSB.</para>
               
             <para>If big-endian is selected, a 16-bit value is reconstructed from 
             the 2-bytes returned from the I2C device using the second byte
             as the LSB, and the first byte as the MSB.</para>
             
             <para>Note that the comparison value specified by the user is always
             little-endian (primarily we select 'big-endian' when retrieving 16-bit 
             A/D values from an SFP device).</para>
             </remarks>
             <example>
             <para>A 'word-level' comparison is performed using a user-specified
             'comparison operator'. (eg. >, >=, ==, &lt;, &lt;=, &lt;>) and a 
             user-specified 'comparison threshold'.</para>  
             
             <para>If the I2C register value (8-bit) or reconstructed 16-bit value
             passes the comparison test, we check the 'led_on_if_match' config flag
             and toggle the led state as required.</para>
             
             <para><h5>Word-level example:</h5></para>
             
             <para>Let's say that we want to turn on an led whenever the console 
             SFP Rx Pwr drops below -11.3dBm.</para>
            
             <code>
             <![CDATA[
             I2C Device:     0x27    (Console SFP A2)
             I2C Reg Num:    0x68    (SFP Rx Power lives in bytes 104-105)
             Config Flags:   0x07    (0000 0111) - word-level comp, 16-bit, big-endian, led-on-if-match
             Comp. Operator: 0x03    (LessThanEqual)
             Comp. Value:    0x02EB  (corresponds to roughly -11.3dBM)    
             ]]>
             </code>
             
             <para>The led will be turned on whenever the reconstructed 16-bit value from 
             SFP bytes 104(msb) and 105(lsb) is LESS THAN or EQUAL TO 0x02EB.</para>
             
             <para>A 'bit-level' comparison is performed using a user-specified
             'mask' and 'comparison value'.</para>
             
             <para>The I2C register value is logically ANDed with the mask, and the 
             comparison value is also logically ANDed with the mask.  If the results
             are the same, we consider it a match, check the 'led_on_if_match' config 
             flag, then toggle the led state as required.</para>
             
             <para>Bit-level comparison matches if: (reg_value &amp; mask) == (cmp_value &amp; mask)</para>
             
             <para><h5>Bit-level example:</h5></para>
             
             <para>Assume we're using an HDM board as the Console.
             The HDM FPGA register 0x07, Bit 5 corresponds to 'lex_link_ok_n_int',
             and Bit 1 corresponds to 'port1_ok_n_int'.  
             Let's say that for whatever reason we want to turn ON an led whenever 
             Bit 5 is '0' and Bit 1 is '1'.</para>
             
             <code>
             <![CDATA[
             I2C Device:     0x28    (Console FPGA Registers)
             I2C Reg Num:    0x07
             Config Flags:   0x02    0000 0010  (bit-level comparison, 8-bit, led-on-if-match)
             Mask:           0x22    0010 0010  (note the '1' in any bit we're interested in (bit5, bit1))
                                       ^    ^
                        
             Cmp Value:      0x00    0000 0010  (put the value we want to see in any bit we're interested in (0 for bit-5, 1 for bit-1))
             ------------------        ^    ^    
             ]]>
             </code>
             </example>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.#ctor">
            <summary>
            Constructs a new LED config using the default description of
            'LED' and the default led number of '0'.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.#ctor(System.Int32,System.String)">
            <summary>
            Constructs a new LED config using the supplied description 
            and led number.
            </summary>
            <param name="ledNumber">The led number for this configuration.</param>
            <param name="ledName">The description of the led that this
            configuration is for.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.Clone(System.Boolean)">
            <summary>
            Performs either a shallow or a deep copy of the current LedConfig object.
            </summary>
            <param name="doDeepCopy">Perform a 'deep copy' of the object. 
            (separate copies of each reference field).</param>
            <returns>The cloned object.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.Clone">
            <summary>
            Performs a deep copy of the LEDConfig object.
            </summary>
            <returns>A deep copy of the LEDConfig object.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.LedNumber">
            <summary>
            The led number for this led configuration.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.Name">
            <summary>
            The description for this led configuration. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.I2CAddress">
            <summary>
            Gets or Sets the I2C Device Address.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.I2CRegNum">
            <summary>
            Gets or Sets the I2C Register Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.ConfigFlags">
            <summary>
            Gets or Sets Configuration Flags.
            </summary>
            <remarks>
                <para>[bit_0]: 0=bit-mask equality test, 1=word-level comparison</para>
                <para>[bit_1]: 0=8-bit register comparison, 1=16-bit register comparison</para>
                <para>[bit_2]: 0=little endian, 1=big endian  (bit2 is only relevant if bit_1 is set).</para>
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.IsWordLevel">
            <summary>
            Gets or Sets whether the comparison for this led will be a 
            bit-mask equality test or a word-level threshold comparison.
            (ConfigFlags, bit 0)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.Is16Bit">
            <summary>
            Gets or Sets whether the comparison for this led will be 
            16-bit or 8-bit.
            (Config_Flags, bit 1)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.IsBigEndian">
            <summary>
            Gets or Sets whether the comparison for this led is Big Endian or
            Little Endian.  This flag is only relevant when the 'Is16Bit' 
            property is True.
            (ConfigFlags, bit 2)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.LedOffIfMatch">
            <summary>
            Gets or Sets whether the led should be turned OFF if the comparison succeeds.
            (Config_Flags, bit 3)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.ComparisonOperator">
            <summary>
            Gets or Sets the Comparison Operator.
            </summary>
            <remarks>
            Only relevant if [Config_Flags:bit_0] is true (word-level comparison)
                <para>GREATER_THAN            0</para>
                <para>GREATER_THAN_EQUAL      1</para>
                <para>EQUAL                   2</para>
                <para>LESS_THAN_EQUAL         3</para>
                <para>LESS_THAN               4</para>
                <para>NOT_EQUAL               5</para>
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.ComparisonMask">
            <summary>
            Gets or Sets the Comparison Mask.
            </summary>
            <remarks>
            Only relevant if [Config_Flags:bit_0] is false (bit-mask comparison)
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.ComparisonValue">
            <summary>
            Gets or Sets the Comparison Value.
            </summary>
            <remarks>
            <para>If [Config_Flags:bit_0] is TRUE: the bit-mask to compare the register value to.</para>
            <para>If [Config_Flags:bit_0] is FALSE: the word-level threshold to compare the register value to.</para>
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.DiagCardLedConfig.LedComparisonOperator">
            <summary>
            Enumerates the supported comparison operators for word-level threshold 
            comparisons.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.DiagCardOnboard">
            <summary>
            Represents a Model 907 diagnostics card.
            </summary>
            <remarks>
            Only one diagnostics card is supported per system, and always on the
            Console side of the stack.
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshLedConfigDelegate">
            <summary>
            The delegate that will be used to request an Led Configuration
            from the diagnostics card.
            </summary>
            <remarks>
            Typically this delegate is wired to 
            <see cref="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardLedConfig(Focal.Model907.Diagnostics.Models.LedGroup,Focal.Model907.Diagnostics.Models.DiagCardLedConfig)"/>
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardOnboard.SaveLedConfigsDelegate">
            <summary>
            The delegate that will be used to save all of the led configurations
            to the diagnostics card.
            </summary>
            <remarks>
            Typically this delegate is wired to 
            <see cref="M:Focal.Model907.Diagnostics.Model907.SaveDiagCardLedConfigs"/> 
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshNetworkConfigDelegate">
            <summary>
            The delegate that will be used to request the network configuration 
            from the diagnostics card.
            </summary>
            <remarks>
            Typically this delegate is wired to 
            <see cref="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardNetConfig(System.Byte[]@)"/>
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardOnboard.SaveNetworkConfigDelegate">
            <summary>
            The delegate that will be used to write the network configuration 
            to the diagnostics card.
            </summary>
            <remarks>
            Typically this delegate is wired to 
            <see cref="M:Focal.Model907.Diagnostics.Model907.SaveDiagCardNetConfig"/> 
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardOnboard.SaveSystemConfigDelegate">
            <summary>
            The delegate that will be used to write the system configuration 
            to the diagnostics card.
            </summary>
            <remarks>
            Typically this delegate is wired to 
            <see cref="M:Focal.Model907.Diagnostics.Model907.SaveDiagCardSystemConfig"/> 
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshAdcDataDelegate">
            <summary>
            The delegate that will be used to request the onboard ADC data.
            </summary>
            <remarks>
            Typically this delegate is wired to 
            <see cref="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardAdcData(System.Byte[]@)"/>
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshFosDataDelegate">
            <summary>
            The delegate that will be used to request Fiber Optic Swich (FOS) data.
            </summary>
            <remarks>
            Typically this delegate is wired to 
            <see cref="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardFosData(System.Byte[]@)"/>
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardOnboard.SaveFosConfigDelegate">
            <summary>
            The delegate that will be used to write the FOS configuration 
            to the diagnostics card.
            </summary>
            <remarks>
            Typically this delegate is wired to 
            <see cref="M:Focal.Model907.Diagnostics.Model907.SaveDiagCardFosConfig"/> 
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshFwVersionDelegate">
            <summary>
            Gets or Sets the delegate that will be used to request the firmware 
            version of the diagnostics card.
            </summary>
            <remarks>
            Typically this delegate is wired to 
            <see cref="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardFwVersion(System.Byte[]@)"/>
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshSerialEepromDelegate">
            <summary>
            Gets or Sets the delegate that will be used to request the serial 
            eeprom data from the diagnostics card.
            </summary>
            <remarks>
            Typically this delegate is wired to 
            <see cref="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardSerialEeprom(System.Byte[]@)"/>
            </remarks>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshSystemConfigDelegate">
            <summary>
            Gets or Sets the delegate that will be used to request the 
            system configuration information from the diagnostics card.
            </summary>
            <remarks>
            Typically this delegate is wired to 
            <see cref="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardSystemConfig(System.Byte[]@)"/>
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.#ctor">
            <summary>
            Constructs a new DiagnosticsCard.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.InitLedConfigs">
            <summary>
            Initializes the lists of led configurations for the onboard and 
            header leds.
            <para><b>Supported on diagnostics card firmware Rev. 22 and greater.</b></para>
            </summary>
            <remarks>
            <para>The Onboard LEDs are labelled LED_DIAG_1 to LED_DIAG_7 on the electrical
            schematics.  Therefore, to access a given onboard LED we can index the
            array below using the index number as depicted on the drawing with a 
            negative one (-1) offset.</para>
            <para>The Header LEDs are labelled DIAG_0 to DIAG_17 on the electrical
            schematics.  Therefore, to access a given header LED we can index the 
            array below using the same index number as depicted on the drawing.</para>
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshData(System.Boolean)">
            <summary>
            Refreshes all 'onboard' diagnostics card data.
            NOTE: This method does not seem to be in use as of April 19, 2013
            </summary>
            <param name="detectedDevicesOnly"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshLedConfigs">
            <summary>
            Refreshes all Led Configurations from the diagnostics card.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.SaveLedConfigs">
            <summary>
            Saves all LED configurations to eeprom on the diagnostics card.
            </summary>
            <returns>True if all LED configurations were saved successfully, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshNetworkConfig">
            <summary>
            Requests the network configuration from the diagnostics card.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.SaveNetworkConfig">
            <summary>
            Saves the network configuration parameters to eeprom on the diagnostics card.
            </summary>
            <remarks>
            <para>In practice, because of the way the firmware on the diagnostics board
            is written (at least with v24 and below), this command will ALWAYS FAIL
            when the new IP address is different than the current IP address.</para>
            <para>This is because the diagnostics card updates its IP *immediately*, 
            and so the response will never be received.</para>
            </remarks>
            <returns>True if the network configuration was saved successfully, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.SaveSystemConfig">
            <summary>
            Saves the system configuration parameters to eeprom on the diagnostics card.
            </summary>        
            <returns>True if the network configuration was saved successfully, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshFwVersion">
            <summary>
            Requests the firmware version information from the diagnostics card.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshAdcData">
            <summary>
            Requests analog voltage readings from the diagnostics card.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshFosData">
            <summary>
            Requests the status of the Fiber Optic Switch card (FOS) from the diagnostics card.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.SaveFosConfig">
            <summary>
            Saves the Fiber Optic Switch (FOS) configuration parameters to the diagnostics card.
            </summary>
            <returns>True if the FOS configuration was saved successfully, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshSerialEepromData">
            <summary>
            Refreshes data from the onboard Serial EEPROM,
            </summary>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.RefreshSystemConfigData">
            <summary>
            Refreshes system configuration information data from the onboard Network configuration EEPROM in the 907-DIAG-E card
            </summary>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardOnboard.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.DiagCardOnboard.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.Description">
            <summary>
            Gets or Sets the description of the diagnostic card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.LinkSide">
            <summary>
            Gets side of the optical link on which the diagnostics card resides.
            </summary>
            <remarks>
            This property <b>always</b> returns 'LinkSide.Console', since the 907 diagnostics
            card is only supported on a console stack.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.DetectedCardDescription">
            <summary>
            Gets the description of the detected card type.  
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.AnalogReadings">
            <summary>
            Gets the onboard analog voltage readings of the diagnostics card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.FosReadings">
            <summary>
            Gets the Fiber Optic Switch Card information from the diagnostics card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.NetworkConfig">
            <summary>
            Gets the network configuration of the diagnostics card..
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.SystemConfig">
            <summary>
            Gets the system configuration of the diagnostics card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.FirmwareVersion">
            <summary>
            Gets the Diagnostics card firmware version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.SystemConfiguration">
            <summary>
            Gets the Diagnostics card system configuration.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.I2cSpeed">
            <summary>
            Gets the Diagnostics card I2C speed system configuration.
            I2C_0x56 (128 bytes network EEPROM). Reg_17 = System Configuration byte
            Reg_17[1]: 1=400 Kbps, 0=100 Kbps (only valid for FW ver >= 26)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardOnboard.LedConfigs">
            <summary>
            Gets the dictionary of diagnostic card LED configurations.
            <para><b>Supported on diagnostics card firmware Rev. 22 and greater.
            (returns null otherwise).</b></para>
            </summary>
            <remarks>
            <h5>Onboard LEDs</h5>
            <para>The Onboard LEDs are labelled LED_DIAG_1 to LED_DIAG_7 
            on the electrical schematics.</para>
            <para>Therefore, to access a given Onboard LED we can index 
            into the list using the index number as depicted on the drawing with a 
            negative one (-1) offset.</para>
            <h5>Header LEDs</h5>
            <para>The Header LEDs are labelled DIAG_0 to DIAG_17 on the 
            electrical schematics.</para>  
            <para>Therefore, to access a given Header LED we can index into the
            list using the same index number as depicted on the drawing.</para>
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl">
            <summary>
            Represents a Focal Technologies Model 907+ PSSL FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.#ctor">
            <summary>
            Constructs a new 907+ PSSL FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.ActiveSwitchSettings">
            <summary>
            Gets the currently active SERDES mode used by hardware.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.VideoChannels">
            <summary>
            Gets the list of Video Channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.SfpStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.SfpStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.SfpStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.DipSwitchVideoAndDataMode">
            <summary>
            Gets the DIP switch video and data mode status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.DipSwitchSerdesMode">
            <summary>
            Gets the DIP switch SERDES mode status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.LossOfLockCounter">
            <summary>
            Gets the current SERDES Loss of Lock edge counter value.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.BackplaneChannels">
            <summary>
            Gets the list of backplane channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusPssl.OnboardSerialDataChannels">
            <summary>
            <para>Gets the list of onboard serial data channel statuses.</para>
            <para><b>Only supported on 907+ PSSL Rev A0 and greater.</b></para>
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.MediaConverterFactory">
            <summary>
            Provides a means to create an MediaConverter object from a raw data array.
            </summary>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.MediaConverterFactory.MediaConverterIDRegNum">
            <summary>
            The byte index in the raw data array at which the MediaConverter ID can be found.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverterFactory.CreateMediaConverter(System.Byte[])">
            <summary>
            Constructs a new MediaConverter object using the supplied RawData array.
            </summary>
            <remarks>
            The RawData array should be populated with real data so that the
            ID of the MediaConverter can be determined and the correct type of MediaConverter object
            instantiated.
            </remarks>
            <param name="rawData"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.MediaConverterFactory.CreateMediaConverter(System.Byte[],Focal.Model907.Diagnostics.Models.I2CDeviceConfig)">
            <summary>
            Constructs a new MediaConverter object using the supplied RawData array.  
            The i2cDeviceConfig reference provides a means for custom methods
            in the mediaConverter object to write data back to the mediaConverter.
            </summary>
            <remarks>
            The RawData array should be populated with real data so that the
            ID of the Media Converter can be determined and the correct type of MediaConverter object
            instantiated.
            </remarks>
            <param name="rawData"></param>
            <param name="i2cDeviceConfig">The parent i2c device instance, used to provide
            a path to a method for writing data back to the FPGA.</param>
            <returns></returns>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SerialDataChannel">
            <summary>
            Encapsulates the IO protocol for a single serial data channel.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SerialDataChannel.#ctor(System.String)">
            <summary>
            Constructs a new SerialDataChannel channel.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SerialDataChannel.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.SerialDataChannel.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SerialDataChannel.ChannelName">
            <summary>
            Gets the name of this onboard serial data channel.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SerialDataChannel.SerialMode">
            <summary>
            Gets or Sets the serial communication mode of the channel.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SerialDataChannel.IsEnable">
            <summary>
            Gets or Sets whether this channel can be modified or not.
            </summary>
        </member>
        <member name="T:Focal.Utilities.AsyncBindingHelper">
            <summary>
            A helper class for creating a binding on an object that may be changed
            asynchronously from the bound UI thread.
            </summary>
        </member>
        <member name="M:Focal.Utilities.AsyncBindingHelper.GetBinding(System.Windows.Forms.Control,System.String,System.ComponentModel.INotifyPropertyChanged,System.String,System.Boolean)">
            <summary>
            Get a binding instance that can invoke a property change
            on the UI thread, regardless of the originating thread
            </summary>
            <param name="bindingControl">The UI control this binding is added to</param>
            <param name="propertyName">The property on the UI control to bind to</param>
            <param name="bindingSource">The source INotifyPropertyChanged to be
            observed for changes</param>
            <param name="dataMember">The property on the source to watch</param>
            <param name="formattingEnabled">Indicates whether type conversion and formatting is applied to the control property data.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.AsyncBindingHelper.GetBinding(System.Windows.Forms.Control,System.String,System.ComponentModel.INotifyPropertyChanged,System.String)">
            <summary>
            Get a binding instance that can invoke a property change
            on the UI thread, regardless of the originating thread
            </summary>
            <param name="bindingControl">The UI control this binding is added to</param>
            <param name="propertyName">The property on the UI control to bind to</param>
            <param name="bindingSource">The source INotifyPropertyChanged to be
            observed for changes</param>
            <param name="dataMember">The property on the source to watch</param>
            <returns></returns>
        </member>
        <member name="P:Focal.Utilities.AsyncBindingHelper.Value">
            <summary>
            The current value of the data source's datamember
            </summary>
        </member>
        <member name="E:Focal.Utilities.AsyncBindingHelper.PropertyChanged">
            <summary>
            Event fired when the dataMember property on the data source is changed
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.EthernetCopperPort">
            <summary>
            Encapsulates the status of an ethernet copper port.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.EthernetCopperPort.#ctor(System.String)">
            <summary>
            Constructs a new EthernetCopperPort using the specified port name.
            </summary>
            <param name="name">The name of the port.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.EthernetCopperPort.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.EthernetCopperPort.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.EthernetCopperPort.Name">
            <summary>
            Gets or sets the name of this port.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.EthernetCopperPort.LinkSpeed">
            <summary>
            Gets or Sets the link speed of the port.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy">
            <summary>
            Encapsulates the status of an ethernet copper port.
            </summary>
            <remarks>
            <para>See Marvell doc MV-S100649-00, Rev. H for PHY register map.</para>
            <para>Note that the 907 Dual GbE FPGA provides data for registers 1,2,3,10,15,17,25</para>
            <para><b>The RawData array maps these registers as follows:</b></para>
            <list type="table">
                <listheader>
                    <term>Byte Range</term>
                    <description>Description</description>
                </listheader>
                <item>
                    <term>Bytes[1:0]</term>
                    <description>PHY Register 1</description>
                </item>
                <item>
                    <term>Bytes[3:2]</term>
                    <description>PHY Register 2</description>
                </item>
                <item>
                    <term>Bytes[5:4]</term>
                    <description>PHY Register 3</description>
                </item>
                <item>
                    <term>Bytes[7:6]</term>
                    <description>PHY Register 10</description>
                </item>
                <item>
                    <term>Bytes[9:8]</term>
                    <description>PHY Register 15</description>
                </item>
                <item>
                    <term>Bytes[11:10]</term>
                    <description>PHY Register 17</description>
                </item>
                <item>
                    <term>Bytes[13:12]</term>
                    <description>PHY Register 25</description>
                </item>
            </list>
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.#ctor">
            <summary>
            Constructs a new Dual GbE PHY.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.Name">
            <summary>
            Gets or sets the name of this PHY.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.AutoNegotiationCompleteCopper">
            <summary>
            <para>Gets or Sets the copper autonegotiation status.</para>
            1 = Autonegotiation process complete<br/>
            0 = not complete.
            <para>PHY: Page[0], Register[1], Bit[5]</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.LinkUpCopper">
            <summary>
            <para>Gets or Sets the copper link status.</para> 
            1 = Link is up<br/>
            0 = Link is down.
            <para>PHY: Page[0], Register[1], Bit[2]</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.ConfigurationResolution">
            <summary>
            <para>Gets or Sets Master-Slave Configuration Resolution.</para>
            1 = Local PHY configuration resolved to MASTER<br/>
            0 = Local PHY configuration resolved to SLAVE
            <para>PHY: Page[0], Register[10] (bit 14)</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.ReceiverOkLocal">
            <summary>
            <para>Gets or Sets the Local Receiver status.</para>
            1 = Local Receiver OK.<br/>
            0 = Local Receiver Not Ok.
            <para>Page[0], Register[10] (bit 13)</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.ReceiverOkRemote">
            <summary>
            <para>Gets or Sets the Remote Receiver status.</para>
            1 = Remote Receiver OK.<br/>
            0 = Remote Receiver Not Ok.
            <para>Page[0], Register[10] (bit 12)</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.LinkPartner1000BaseTFullDuplexCapable">
            <summary>
            <para>Gets or Sets the Link Partner 1000BASE-T Full-Duplex capability.</para>
            1 = Link Partner is capable of 1000BASE-T Full-Duplex<br/>
            0 = Link Partner is NOT capable of 1000BASE-T Full-Duplex
            <para>Page[0], Register[10] (bit 11)</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.LinkPartner1000BaseTHalfDuplexCapable">
            <summary>
            <para>Gets or Sets the Link Partner 1000BASE-T Half-Duplex capability.</para>
            1 = Link Partner is capable of 1000BASE-T Half-Duplex<br/>
            0 = Link Partner is NOT capable of 1000BASE-T Half-Duplex
            <para>Page[0], Register[10] (bit 10)</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.LinkSpeed">
            <summary>
            Gets or Sets the port link speed.
            </summary>
            <remarks>
            <para>Only valid after the 'resolved' bit is set. (Page[0], Register[17] (bit 11)</para>
            11 = Reserved<br/>
            10 = 1000 Mbps<br/>
            01 = 100 Mbps<br/>
            00 = 10 Mbps
            <para>Page[0], Register[17] (bits[15:14])</para>
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.DuplexMode">
            <summary>
            Gets or Sets the duplex mode. 
            </summary>
            <remarks>
            <para>This status bit is only valid after the 'resolved' bit is set. (Page[0], Register[17] (bit 11).</para>
            <para>Page[0], Register[17] (bit13)</para>
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.LinkUp">
            <summary>
            <para>Gets or sets the link status.</para>
            1 = Link Up<br/>
            0 = Link Down
            <para>Page[0], Register[17] (bit 10)</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.CableLength">
            <summary>
            <para>Gets the Cable Length estimate.  Actual value depends on the attenuation of the cable,
            output levels of the remote transceiver, connector impedance, etc.</para>
            000 = less than 50m<br/>
            001 = 50-80m<br/>
            010 = 80-110m<br/>
            011 = 110-140m<br/>
            100 = greater than 140m
            <para>Page[0], Register[17] (bits[9:7])</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy.CrossoverStatus">
            <summary>
            Gets or Sets the MDI Crossover status.  
            </summary>
            <remarks>
            <para>This status bit is only valid after the 'resolved' bit is set. (Page[0], Register[17] (bit 11).</para>
            1 = MDIX<br/>
            0 = MDI
            <para>(Page[0], Register[17] (bit 6)</para>
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.#ctor">
            <summary>
            Constructs a new SfpOpticalDualRx.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.Id">
            <summary>
            Gets the SFP unique ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            NOTE: THIS IS A PLACE HOLER AND IT IS NOT IMPLEMENTED YET
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.Identifier">
            <summary>
             Gets the SFP Identifier. Table A0, Byte[0].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.SfpDescription">
            <summary>
             Gets the SFP Description.
             For now, it will be based on the Sfp Identifier but it could be based in more parameters.
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.SfpConnectorCode">
            <summary>
             Gets the SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.SfpConnectorDescription">
            <summary>
             Gets the SFP Connector Description from SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.Wavelength">
            <summary>
             Gets (nm) nominal laser wavelength. Table A0h, Bytes[60-61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.WavelengthRx">
            <summary>
             Gets (nm) nominal laser wavelength based on the Mfr P/N.
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.TxBias">
            <summary>
            Gets the Tx Bias Current (mA). Bytes[100-101].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.TxPwr">
            <summary>
            Gets the Tx Output Power (dBm). Bytes[102-103].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.RxPwr">
            <summary>
            Gets Rx Input Power Port 1 (dBm). Bytes[104-105].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.RxPwrP2">
            <summary>
            Gets Rx Input Power Port 2 (dBm). Bytes[104-105].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualRx.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig">
            <summary>
            Represents the system configuration for a diagnostics card.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig.#ctor">
            <summary>
            Constructs a new Network configuration.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig.Clone(System.Boolean)">
            <summary>
            Performs either a shallow or a deep copy of the current SystemConfig object.
            </summary>
            <param name="doDeepCopy">Perform a 'deep copy' of the object. 
            (separate copies of each reference field).</param>
            <returns>The cloned object.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig.Clone">
            <summary>
            Performs a deep copy of the SystemConfig object.
            </summary>
            <returns>A deep copy of the SystemConfig object.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig.I2CAddress">
            <summary>
            Gets the I2C Address of the diagnostics card. Bytes[0].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig.I2CAddressHex">
            <summary>
            Gets the Hex I2C Address of the diagnostics card
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig.StartByteIndex">
            <summary>
            Gets the Start Byte Index of the diagnostics card. Bytes[1].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig.StartByteIndexHex">
            <summary>
            Gets the Hex Start Byte Index of the diagnostics card. Bytes[1].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig.MuxNumAddressCtrl">
            <summary>
            Gets the I2C address and control of mux#N. E.g. Mux#1_I2CAddres, Mux#1_ControlRegister, Mux#2_I2CAddres, Mux#2_ControlRegister -> 0x73, 0x01, 0x70, 0x09
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig.MuxNumAddressCtrlArray">
            <summary>
            Gets the ess and control array of mux#N. E.g. Mux#1_I2CAddres, Mux#1_ControlRegister, Mux#2_I2CAddres, Mux#2_ControlRegister -> 0x73, 0x01, 0x70, 0x09
            Returns 0 if the array has invalid data
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig.DataToWrite">
            <summary>
            Gets the Data To Write to the diagnostics card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardSystemConfig.DataToWriteArray">
            <summary>
            Gets the Array Data To Write to the diagnostics card.
            </summary>
        </member>
        <member name="T:Focal.Utilities.ByteExtensions">
            <summary>
            A collection of numerical conversion extension methods.
            </summary>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ToUInt16(System.Byte[],System.UInt32,System.Boolean)">
            <summary>
            Converts 2 bytes in the supplied array to a UInt16, beginning at the specified offset.
            </summary>
            <exception cref="T:System.ArgumentNullException"></exception>
            <exception cref="T:System.ArgumentOutOfRangeException"></exception>
            <param name="value">The byte array from which to extract the data for the conversion.</param>
            <param name="startIndex">The offset in the byte array from which to start the conversion.</param>
            <param name="isBigEndian">Indicates that a Big Endian conversion should be performed.
            (ie. the lower byte is the MSB).</param>
            <returns>The converted UInt16 value.</returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ToInt16(System.Byte[],System.UInt32,System.Boolean)">
            <summary>
            Converts 2 bytes in the supplied array to an Int16, beginning at the specified offset.
            </summary>
            <exception cref="T:System.ArgumentNullException"></exception>
            <exception cref="T:System.ArgumentOutOfRangeException"></exception>
            <param name="value">The byte array from which to extract the data for the conversion.</param>
            <param name="startIndex">The offset in the byte array from which to start the conversion.</param>
            <param name="isBigEndian">Indicates that a Big Endian conversion should be performed.
            (ie. the lower byte is the MSB).</param>
            <returns>The converted Int16 value.</returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ToUInt32(System.Byte[],System.UInt32,System.Boolean)">
            <summary>
            Converts 4 bytes in the supplied array to a UInt32, beginning at the specified offset.
            </summary>
            <exception cref="T:System.ArgumentNullException"></exception>
            <exception cref="T:System.ArgumentOutOfRangeException"></exception>
            <param name="value">The byte array from which to extract the data for the conversion.</param>
            <param name="startIndex">The offset in the byte array from which to start the conversion.</param>
            <param name="isBigEndian">Indicates that a Big Endian conversion should be performed.
            (ie. the lower byte is the MSB).</param>
            <returns>The converted UInt32 value.</returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ToInt32(System.Byte[],System.UInt32,System.Boolean)">
            <summary>
            Converts 4 bytes in the supplied array to an Int32, beginning at the specified offset.
            </summary>
            <exception cref="T:System.ArgumentNullException"></exception>
            <exception cref="T:System.ArgumentOutOfRangeException"></exception>
            <param name="value">The byte array from which to extract the data for the conversion.</param>
            <param name="startIndex">The offset in the byte array from which to start the conversion.</param>
            <param name="isBigEndian">Indicates that a Big Endian conversion should be performed.
            (ie. the lower byte is the MSB).</param>
            <returns>The converted Int32 value.</returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ToSingle(System.Byte[],System.UInt32,System.Boolean)">
            <summary>
            Converts 4 bytes in the supplied array to a Single (IEEE float), beginning at the specified offset.
            </summary>
            <exception cref="T:System.ArgumentNullException"></exception>
            <exception cref="T:System.ArgumentOutOfRangeException"></exception>
            <param name="value">The byte array from which to extract the data for the conversion.</param>
            <param name="startIndex">The offset in the byte array from which to start the conversion.</param>
            <param name="isBigEndian">Indicates that a Big Endian conversion should be performed.
            (ie. the lower byte is the MSB).</param>
            <returns>The converted Single (IEEE float) value.</returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ToHex(System.Byte[])">
            <summary>
            Converts the numeric value of each element of a specified array of
            bytes to its equivalent hexadecimal string representation.
            </summary>
            <remarks>This extension is just an extension wrapper for BitConverter.ToString().</remarks>
            <param name="data">The byte array to convert to hex.</param>
            <returns>A string of hexadecimal pairs separated by hyphens, where 
            each pair represents the corresponding element in value; for 
            example, "7F-2C-4A".</returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ToUInt16String(System.Byte[])">
            <summary>
            Converts an array of bytes into a formatted string of uint16 digits (ex: 255 154 78 )
            </summary>
            <param name="data"> The array of bytes to be translated into a string of int16 digits. </param>
            <returns> Returns a well-formatted string of int16 digits with spacing. </returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.HexStringToByteArray(System.String)">
            <summary> 
            Convert a string of hex digits (ex: E4 CA B2) to a byte array. 
            </summary>
            <param name="s"> The string containing the hex digits 
            (ex: E4 CA B2) (with or without spaces). </param>
            <returns> Returns an array of bytes. </returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ValidateConversionParameters(System.Byte[],System.UInt32,System.TypeCode)">
            <summary>
            Validates conversion parameters.
            </summary>
            <param name="value"></param>
            <param name="startIndex"></param>
            <param name="typeCode"></param>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.BitIsSet(System.Byte,System.Int32)">
            <summary>
            Determines if the specified bit is set in the byte value.
            </summary>
            <param name="value">The byte value to test.</param>
            <param name="bitIndex">The index of the bit to test.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.BitIsSet(System.UInt16,System.Int32)">
            <summary>
            Determines if the specified bit is set in the uint16 value.
            </summary>
            <param name="value">The byte value to test.</param>
            <param name="bitIndex">The index of the bit to test.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.SetBit(System.Byte,System.Int32)">
            <summary>
            Sets the specified bit in the byte value.
            </summary>
            <param name="value">The byte value in which to set the bit.</param>
            <param name="bitIndex">The index of the bit to set.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.SetBit(System.UInt16,System.Int32)">
            <summary>
            Sets the specified bit in the UInt16 value.
            </summary>
            <param name="value">The UInt16 value in which to set the bit.</param>
            <param name="bitIndex">The index of the bit to set.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ClearBit(System.Byte,System.Int32)">
            <summary>
            Clears the specified bit in the byte value.
            </summary>
            <param name="value">The byte value in which to clear the bit.</param>
            <param name="bitIndex">The index of the bit to clear.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ClearBit(System.UInt16,System.Int32)">
            <summary>
            Clears the specified bit in the UInt16 value.
            </summary>
            <param name="value">The UInt16 value in which to clear the bit.</param>
            <param name="bitIndex">The index of the bit to clear.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ToggleBit(System.Byte,System.Int32)">
            <summary>
            Toggles the specified bit in the byte value.
            </summary>
            <param name="value">The byte value in which to set or clear a bit.</param>
            <param name="bitIndex">The index of the bit to set or clear.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.ByteExtensions.ToggleBit(System.UInt16,System.Int32)">
            <summary>
            Toggles the specified bit in the UInt16 value.
            </summary>
            <param name="value">The byte value in which to set or clear a bit.</param>
            <param name="bitIndex">The index of the bit to set or clear.</param>
            <returns></returns>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Communications.SerialCommunications">
            <summary>
            Provides a means to communicate with a remote diagnosics device
            using a serial port.
            </summary>
            <remarks>
            <para>At the time of this writing, a byte-based serial transfer protocol has
            NOT yet been implemented in the 907 Diagnostics firmware (v24).</para>
            <para>The only serial communications currently accessible using a diagnostics 
            card's serial port is the original human readable menu-based interface.</para> 
            <para>The proposal is that a byte-based protocol be developed similar to the
            existing TCP protocol so the end user has more flexibility to decide the
            communications medium used.</para>
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Communications.ICommunications">
            <summary>
            Represents commonality between communication methods to a 
            Focal diagnostics module.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.ICommunications.OpenCommunications">
            <summary>
            Opens communications.
            </summary>
            <returns>True if communications were successfully opened, 
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.ICommunications.CloseCommunications">
            <summary>
            Closes communications.
            </summary>
            <returns>True if communications were successfully closed, 
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.ICommunications.SendCommand(System.Byte[],System.Byte[]@)">
            <summary>
            Transfers the supplied command to the module and returns 
            the response.
            </summary>
            <param name="command">The command to send.</param>
            <param name="response">An initialized byte array with length equal
            to the expected number of response bytes for the command (not
            including command echo bytes).</param>
            <returns></returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Communications.ICommunications.TransferInProgress">
            <summary>
            Indicates that a command transfer is currently in progress.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.ICommunications.CommsConnected">
            <summary>
            Raised when communcations to the module have been established.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.ICommunications.CommsDisconnected">
            <summary>
            Raised when communcations to the module have been disconnected.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.ICommunications.CommsError">
            <summary>
            Raised when an error related to the physical communications
            interface is encountered.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.ICommunications.TransferStarted">
            <summary>
            Raised when a command transfer to the module is initiated.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.ICommunications.TransferComplete">
            <summary>
            Raised after a command transfer to the module is complete.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.ICommunications.CommandSent">
            <summary>
            Raised after command bytes have been sent to the module.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.ICommunications.CommandResponseReceived">
            <summary>
            Raised after the response bytes (not including the echo bytes)
            for a previously sent command have been received.
            </summary>        
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.ICommunications.CommandSendFailed">
            <summary>
            Raised when the requested command cannot be sent.
            </summary>        
        </member>
        <member name="F:Focal.Model907.Diagnostics.Communications.SerialCommunications._port">
            <summary>
            The serial port used to communicate with the diagnostics module.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.#ctor(System.Int32,System.Int32,System.IO.Ports.Parity,System.IO.Ports.StopBits,System.Int32)">
            <summary>
            Default Constructor
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.Finalize">
            <summary>
            Default destructor.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.OnCommsConnected">
            <summary>
            Raised when communcations to the module have been established.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.OnCommsDisconnected">
            <summary>
            Raised when communcations to the module have been disconnected.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.OnCommsError(System.String,System.Exception)">
            <summary>
            Raised when an error related to the physical communications
            interface is encountered.
            </summary>
            <param name="msg">The error message.</param>
            <param name="ex">The exception.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.OnTransferStarted">
            <summary>
            Raised when a command transfer to the module is initiated.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.OnTransferComplete">
            <summary>
            Raised after a command transfer to the module is complete.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.OnCommandSent(System.Byte[])">
            <summary>
            Raised after command bytes have been sent to the module.
            </summary>
            <param name="cmd">A byte array containing the command
            bytes sent to the module.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.OnCommandEchoReceived(System.Byte[])">
            <summary>
            Raised after the echo bytes for a previously sent command have
            been received.
            </summary>
            <remarks>
            Only relevant if 'IsCommandEchoed' is set to True.
            </remarks>
            <param name="echo">A byte array containing the echo bytes 
            received from the module.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.OnCommandResponseReceived(System.Byte[])">
            <summary>
            Raised after the response bytes (not including the echo bytes)
            for a previously sent command have been received.
            </summary>
            <param name="response">A byte array containing the response from
            the module.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.OnCommandSendFailed(System.String)">
            <summary>
            Raised when the requested command cannot be sent.
            </summary>
            <param name="reason">A string indicating the reason why the 
            command cannot be sent.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.SerialPort_DataReceived(System.Object,System.IO.Ports.SerialDataReceivedEventArgs)">
            <summary>
            Called when unsolicited data is received on the COM port from the
            module.
            </summary>
            <remarks>
            This method is used to capture any unsolicited data sent by the 
            diagnostics module. (Solicited data is typically explicitly verified
            by the method requesting the data and not simply dumped to the screen).
            This event is subscribed to only when an active command transfer
            is NOT in progress.
            </remarks>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.OnUnsolicitedDataReceived(System.Byte[])">
            <summary>
            Raised when unsolicited data is received on the serial port.
            </summary>
            <remarks>
            We consider unsolicited data to be anything received when
            a command transfer has not been explicitly initiated.
            </remarks>
            <param name="data">A byte array read directly from the serial port.
            </param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.OpenCommunications">
            <summary>
            Opens communications.
            </summary>
            <returns>True if communications were successfully opened, 
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.CloseCommunications">
            <summary>
            Closes communications.
            </summary>
            <returns>True if communications were successfully closed, 
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.PermissionForNewCommandTransfer(System.String@)">
            <summary>
            Verifies that it is ok to start a new command transfer.
            </summary>
            <param name="whyNot">A string indicating why a new command 
            transfer cannot be started.</param>
            <returns>True if it is ok to start a new command transfer,
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.SerialCommunications.SendCommand(System.Byte[],System.Byte[]@)">
            <summary>
            Writes the supplied command to the selected COM Port and returns
            the response.
            </summary>
            <remarks>
            The caller should verify in advance if the COM Port is open. 
            (this may need to change).
            If the diagnostics module echoes every character sent, after 
            sending the command the serial buffer should contain everything we
            just sent followed by a number of response bytes determined by the
            length of the supplied 'response' byte array.
            </remarks>
            <param name="command">The command to send.</param>
            <param name="response">An initialized byte array with length equal
            to the expected number of response bytes for the command (not
            including command echo bytes).</param>
            <returns>
            TRUE if the command is echoed and the number of response bytes
            matches the size of the response byte array, FALSE otherwise.
            </returns>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.SerialCommunications.CommandEchoReceived">
            <summary>
            Raised after the echo bytes for a previously sent command have
            been received.
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Communications.SerialCommunications.IsCommandEchoed">
            <summary>
            Indicates that the diagnostic module echoes each command byte
            after it is transferred.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Communications.SerialCommunications.IsPortOpen">
            <summary>
            Gets whether the serial port is open.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Communications.SerialCommunications.PortName">
            <summary>
            Gets or Sets the name of the serial port.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Communications.SerialCommunications.SerialPorts">
            <summary>
            Gets a list of the system COM port names for the current computer.
            </summary>
            <returns>
            An naturally sorted array of the serial port names for the current
            computer. (ie. COM3 appears before COM22, etc).
            </returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Communications.SerialCommunications.TransferInProgress">
            <summary>
            Indicates that a command transfer is currently in progress.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.SerialCommunications.CommsConnected">
            <summary>
            Raised when communications to the module have been established.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.SerialCommunications.CommsDisconnected">
            <summary>
            Raised when communications to the module have been disconnected.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.SerialCommunications.CommsError">
            <summary>
            Raised when an error related to the physical communications
            interface is encountered.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.SerialCommunications.TransferStarted">
            <summary>
            Raised when a command transfer to the module is initiated.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.SerialCommunications.TransferComplete">
            <summary>
            Raised after a command transfer to the module is complete.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.SerialCommunications.CommandSent">
            <summary>
            Raised after command bytes have been sent to the module.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.SerialCommunications.CommandResponseReceived">
            <summary>
            Raised after the response bytes (not including the echo bytes)
            for a previously sent command have been received.
            </summary>        
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.SerialCommunications.CommandSendFailed">
            <summary>
            Raised when the requested command cannot be sent.
            </summary>        
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.SerialCommunications.UnsolicitedDataReceived">
            <summary>
            Raised when unsolicited data is received on the serial port.
            </summary>        
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907Plus">
            <summary>
            Represents a Focal Technologies Model 907+ FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Plus.#ctor">
            <summary>
            Constructs a new 907+ FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Plus.WriteDataToAux(System.Int32,System.Byte,System.Byte,System.Byte,System.Byte)">
            <summary>
            (This method is intended for Eng testing)
            Writes new data at the specified:
            7-bit target device,
            8-bit target byte,
            8-bit target data,
            1-bit write enable + 7-bit read target.        
            The Aux line parameter is used to determine which AUX line to write to.
            Usage example: WriteDataToAux(1, val_deviceTargetAux, val_byteTargetAux, val_byteDataAux, val_readTargetAux);
            Code example for AUX1 from FPGA:
            assign aux1_write_device_target                    = local_registers_out_array[224][6:0];
            assign aux1_write_byte_target                      = local_registers_out_array[225][7:0];
            assign aux1_write_byte_data                        = local_registers_out_array[226][7:0];
            assign aux1_write_enable                           = local_registers_out_array[227][0];
            assign aux1_read_target_3                          = local_registers_out_array[227][7:1];
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Plus.WriteDataToFpgaTrigger(System.Byte,System.Int32,System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Provides a positive or negative edge to the FPGA to trigger a write.
            </summary>
            <remarks>
            Address: 247 (dec)
            Bit[0]: trigger PHY write
            verify: true = verify enabled, false verify disable
            timeout: maximum time in ms to wait before considering a fail write.
            </remarks>
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="OneOrZero"> true=One=Positive Edge to FPGA. false=Zero=Negative Edge to FPGA </param>
            <param name="verify"> true=perform a verification of the written data and wait X timeout before to give up. false=Do not perform verification, just assume that the data was written in time. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Plus.VerifyWriteDataBit(System.Byte,System.Int32,System.Boolean,System.Int64)">
            <summary>
            Verifies if the bit value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms..
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="expectedValue"> The expected value of bitNum in regNum (true or false). </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Plus.VerifyWriteData(System.Byte,System.Byte,System.Int64)">
            <summary>
            Verifies if the byte value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms.
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>        
            <param name="expectedValue"> The expected value of the byte in regNum. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.ActiveSwitchSettings">
            <summary>
            Gets the currently active SERDES mode used by hardware.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.VideoChannels">
            <summary>
            Gets the list of Video Channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.SfpStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.SfpStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.SfpStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.DipSwitchVideoAndDataMode">
            <summary>
            Gets the DIP switch video and data mode status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.DipSwitchSerdesMode">
            <summary>
            Gets the DIP switch SERDES mode status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.LossOfLockCounter">
            <summary>
            Gets the current SERDES Loss of Lock edge counter value.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.BackplaneChannels">
            <summary>
            Gets the list of backplane channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Plus.OnboardSerialDataChannels">
            <summary>
            <para>Gets the list of onboard serial data channel statuses.</para>
            <para><b>Only supported on 907+ Rev A2 and greater.</b></para>
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.DummyResponse">
            <summary>
            Allows creation of a formatted data object for a response without a 
            predefined data type.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DummyResponse.#ctor(System.Byte[])">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2">
            <summary>
            Encapsulates the status of an ethernet copper port.
            </summary>
            <remarks>
            <para>See Micrel datasheet KSZ9021RL/RN October 20009 for PHY register map.</para>
            <para>Note that the 907-E FPGA provides data for all phy registers 0 to 31</para>
            <para><b>The RawData array maps these registers as follows:</b></para>
            <list type="table">
                <listheader>
                    <term>Byte Range</term>
                    <description>Description</description>
                </listheader>
                <item>
                    <term>Bytes[1:0]</term>
                    <description>PHY Register 0</description>
                </item>
                <item>
                    <term>Bytes[3:2]</term>
                    <description>PHY Register 1</description>
                </item>
                <item>
                    <term>Bytes[5:4]</term>
                    <description>PHY Register 2</description>
                </item>
                <item>
                    <term>Bytes[7:6]</term>
                    <description>PHY Register 3</description>
                </item>     
                <item>
                    <term>Bytes[x:y]</term>
                    <description>PHY Register N</description>
                </item>
                <item>
                    <term>Bytes[57:56]</term>
                    <description>PHY Register 28</description>
                </item>
                <item>
                    <term>Bytes[59:58]</term>
                    <description>PHY Register 29</description>
                </item>
                <item>
                    <term>Bytes[61:60]</term>
                    <description>PHY Register 30</description>
                </item>
                <item>
                    <term>Bytes[63:62]</term>
                    <description>PHY Register 31</description>
                </item>
            </list>
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.#ctor">
            <summary>
            Constructs a new Micrel KSZ9021RL PHY.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.Name">
            <summary>
            Gets or sets the name of this PHY.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.AutoNegotiationEnable">
            <summary>
            <para>Gets the Auto-Negotiation Enable status.</para>
            1 = Enable auto-negotiation process<br/>
            0 = Disable auto-negotiation process.
            <para>PHY Address: 0.12</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.CapableOf100MbpsFullDuplex">
            <summary>
            <para>Gets the 100Base-TX Full Duplex Capable status.</para>
            1 = Capable of 100 Mbps Full-Duplex<br/>
            0 = Not Capable of 100 Mbps Full-Duplex.
            <para>PHY Address: 1.14</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.CapableOf100MbpsHalfDuplex">
            <summary>
            <para>Gets the 100Base-TX Half Duplex Capable status.</para>
            1 = Capable of 100 Mbps Half-Duplex<br/>
            0 = Not Capable of 100 Mbps Half-Duplex.
            <para>PHY Address: 1.13</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.CapableOf10MbpsFullDuplex">
            <summary>
            <para>Gets the 10Base-TX Full Duplex Capable status.</para>
            1 = Capable of 10 Mbps Full-Duplex<br/>
            0 = Not Capable of 10 Mbps Full-Duplex.
            <para>PHY Address: 1.12</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.CapableOf10MbpsHalfDuplex">
            <summary>
            <para>Gets the 10Base-TX Half Duplex Capable status.</para>
            1 = Capable of 10 Mbps Half-Duplex<br/>
            0 = Not Capable of 10 Mbps Half-Duplex.
            <para>PHY Address: 1.11</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.AutoNegotiationCompleteCopper">
            <summary>
            <para>Gets or Sets the copper autonegotiation status.</para>
            1 = Autonegotiation process complete<br/>
            0 = not complete.
            <para>PHY Address: 1.5</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.AutoNegotiationAbility">
            <summary>
            <para>Gets whether the PHY is autonegotiation capable or not.</para>
            1 = Capable to perform Auto-Negotiation<br/>
            0 = Not Capable to perform Auto-Negotiation
            <para>PHY Address: 1.3</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.LinkUpCopper">
            <summary>
            <para>Gets or Sets the copper link status.</para> 
            1 = Link is up<br/>
            0 = Link is down.
            <para>PHY Address: 1.2</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.JabberDetect">
            <summary>
            <para>Gets the Jabber Detect status.</para>
            1 = Jabber detected<br/>
            0 = Jabber not detected
            <para>PHY Address: 1.11</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.LpaCapableOf100MbpsFullDuplex">
            <summary>
            <para>Gets the LPA 100Base-TX Full Duplex Capable status.</para>
            1 = Capable of 100 Mbps Full-Duplex<br/>
            0 = Not Capable of 100 Mbps Full-Duplex.
            <para>PHY Address: 5.8</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.LpaCapableOf100MbpsHalfDuplex">
            <summary>
            <para>Gets the LPA 100Base-TX Half Duplex Capable status.</para>
            1 = Capable of 100 Mbps Half-Duplex<br/>
            0 = Not Capable of 100 Mbps Half-Duplex.
            <para>PHY Address: 5.7</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.LpaCapableOf10MbpsFullDuplex">
            <summary>
            <para>Gets the LPA 10Base-TX Full Duplex Capable status.</para>
            1 = Capable of 10 Mbps Full-Duplex<br/>
            0 = Not Capable of 10 Mbps Full-Duplex.
            <para>PHY Address: 5.6</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.LpaCapableOf10MbpsHalfDuplex">
            <summary>
            <para>Gets the LPA 10Base-TX Half Duplex Capable status.</para>
            1 = Capable of 10 Mbps Half-Duplex<br/>
            0 = Not Capable of 10 Mbps Half-Duplex.
            <para>PHY Address: 5.5</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.PaaCapableOf100MbpsFullDuplex">
            <summary>
            <para>Gets the PAA 100Base-TX Full Duplex Capable status.</para>
            1 = Capable of 100 Mbps Full-Duplex<br/>
            0 = Not Capable of 100 Mbps Full-Duplex.
            <para>PHY Address: 4.8</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.PaaCapableOf100MbpsHalfDuplex">
            <summary>
            <para>Gets the PAA 100Base-TX Half Duplex Capable status.</para>
            1 = Capable of 100 Mbps Half-Duplex<br/>
            0 = Not Capable of 100 Mbps Half-Duplex.
            <para>PHY Address: 4.7</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.PaaCapableOf10MbpsFullDuplex">
            <summary>
            <para>Gets the PAA 10Base-TX Full Duplex Capable status.</para>
            1 = Capable of 10 Mbps Full-Duplex<br/>
            0 = Not Capable of 10 Mbps Full-Duplex.
            <para>PHY Address: 4.6</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.PaaCapableOf10MbpsHalfDuplex">
            <summary>
            <para>Gets the PAA 10Base-TX Half Duplex Capable status.</para>
            1 = Capable of 10 Mbps Half-Duplex<br/>
            0 = Not Capable of 10 Mbps Half-Duplex.
            <para>PHY Address: 4.5</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.EnableMasterSlaveManualConfig">
            <summary>
            <para> Enable Master-Slave Manual Configuration.</para>
            1 = Enable MASTER-SLAVE Manual configuration value<br/>
            0 = Disable MASTER-SLAVE Manual configuration value        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.ConfigurePHYMasterDuringMsNegotiation">
            <summary>
            <para>Get Configure PHY as Master During M-S Negotiation (ignore if 9.12=0) </para>
            1 = Configure PHY as MASTER during MASTER-SLAVE negotiation<br/>
            0 = Configure PHY as SLAVE during MASTER-SLAVE negotiation
            This bit is ignored if MASTER-SLAVE Manual Config is disabled (reg 9.12=0)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.PortTypeMs">
            <summary>
            <para>Get Port Type 1=Multiport Device (Master), 0= Sigle-Port Device (Slave) (only valid if 9.12=0).</para>
            1 = Inidicate the preference to operate as multiport device (MASTER)<br/>
            0 = Inidicate the preference to operate as single port device (SLAVE)
            This bit is valid only if MASTER-SLAVE Manual Config Enable bit is disabled (reg 9.12=0)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.Phy1000BTFullDuplexCapable">
            <summary>
            <para>Get PHY is 1000Base-T Full-Duplex Capable .</para>
            1 = Advertise PHY is 1000 Base-T full-duplex capable<br/>
            0 = Advertise PHY is not 1000 Base-T full-duplex capable
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.Phy1000BTHalfDuplexCapable">
            <summary>
            <para>Get PHY is 1000Base-T Half-Duplex Capable .</para>
            1 = Advertise PHY is 1000 Base-T half-duplex capable<br/>
            0 = Advertise PHY is not 1000 Base-T half-duplex capable
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.EnableJabber">
            <summary>
            <para>Gets the Enable Jabber status.</para>
            1 = Enable Jabber Counter<br/>
            0 = Disable Jabber Counter.
            <para>PHY Address: 31.9</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.FinalSpeedStatus1000BaseT">
            <summary>
            <para>Gets the Final Speed Status 1000Base-T.</para>
            1 = Indicate chip final speed status at 1000Base-T<br/>
            <para>PHY Address: 31.6</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.FinalSpeedStatus100BaseT">
            <summary>
            <para>Gets the Final Speed Status 100Base-T.</para>
            1 = Indicate chip final speed status at 100Base-T<br/>
            <para>PHY Address: 31.5</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.FinalSpeedStatus10BaseT">
            <summary>
            <para>Gets the Final Speed Status 10Base-T.</para>
            1 = Indicate chip final speed status at 10Base-T<br/>
            <para>PHY Address: 31.4</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.ChipDupplexStatus">
            <summary>
            <para>Gets the Chip Dupplex Status.</para>
            1 = Full-Duplex<br/>
            0 = Half-Duplex
            <para>PHY Address: 31.3</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.MasterSlaveStatus1000BaseT">
            <summary>
            <para>Gets the Master/Slave Status 1000Base-T.</para>
            1 = Indicate 1000Base-T Master mode.<br/>
            0 = Indicate 1000Base-T Slave mode.
            <para>PHY Address: 31.2</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.SoftwareResetStatus">
            <summary>
            <para>Gets Software Reset Status.</para>
            1 = Reset chip, except all registers.<br/>
            0 = Disable reset.
            <para>PHY Address: 31.1</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.LinkStatusCheckFail">
            <summary>
            <para>Gets Link Status Check Fail.</para>
            1 = Fail.<br/>
            0 = Not Failing.
            <para>PHY Address: 31.0</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.ConfigurationResolution">
            <summary>
            <para>Gets or Sets Master-Slave Configuration Resolution.</para>
            1 = Local PHY configuration resolved to MASTER<br/>
            0 = Local PHY configuration resolved to SLAVE
            <para>Register[10] (bit 14)</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.LinkPartner1000BaseTFullDuplexCapable">
            <summary>
            <para>Gets or Sets the Link Partner 1000BASE-T Full-Duplex capability.</para>
            1 = Link Partner is capable of 1000BASE-T Full-Duplex<br/>
            0 = Link Partner is NOT capable of 1000BASE-T Full-Duplex
            <para>Register[10] (bit 11)</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.LinkPartner1000BaseTHalfDuplexCapable">
            <summary>
            <para>Gets or Sets the Link Partner 1000BASE-T Half-Duplex capability.</para>
            1 = Link Partner is capable of 1000BASE-T Half-Duplex<br/>
            0 = Link Partner is NOT capable of 1000BASE-T Half-Duplex
            <para>Register[10] (bit 10)</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.LinkSpeed">
            <summary>
            Gets or Sets the port link speed.
            </summary>
            <remarks>
            <para>Only valid if 'link status check' is not failing (Register[31] (bit 0)</para>
            31.6 = 1000 Mbps<br/>
            31.5 = 100 Mbps<br/>
            31.4 = 10 Mbps
            <para>Register[31] (bits[6:4])</para>
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.GigabitEthernetPhy2.DuplexMode">
            <summary>
            Gets or Sets the duplex mode. 
            </summary>
            <remarks>        
            <para>Register[31] (bit3)</para>
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpMsa">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpMsa.#ctor">
            <summary>
            Constructs a new SfpMsa.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpMsa.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpMsa.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpMsa.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpMsa.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpMsa.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.Id">
            <summary>
            Gets the SFP unique ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.Identifier">
            <summary>
             Gets the SFP Identifier. Table A0, Byte[0].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.SfpDescription">
            <summary>
             Gets the SFP Description.
             For now, it will be based on the Sfp Identifier but it could be based in more parameters.
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.SfpConnectorCode">
            <summary>
             Gets the SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.Wavelength">
            <summary>
             Gets (nm) nominal laser wavelength. Table A0h, Bytes[60-61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.TxBias">
            <summary>
            Gets the Tx Bias Current (mA). Bytes[100-101].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.TxPwr">
            <summary>
            Gets the Tx Output Power (dBm). Bytes[102-103].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.RxPwr">
            <summary>
            Gets Rx Input Power (dBm). Bytes[104-105].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpMsa.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="T:Focal.Utilities.EnumerableComparer`1">
            <summary>
            Compares two sequences.
            </summary>
            <typeparam name="T">Type of item in the sequences.</typeparam>
            <remarks>
            Compares elements from the two input sequences in turn. If we
            run out of list before finding unequal elements, then the shorter
            list is deemed to be the lesser list.
            </remarks>
        </member>
        <member name="M:Focal.Utilities.EnumerableComparer`1.#ctor">
            <summary>
            Create a sequence comparer using the default comparer for T.
            </summary>
        </member>
        <member name="M:Focal.Utilities.EnumerableComparer`1.#ctor(System.Collections.Generic.IComparer{`0})">
            <summary>
            Create a sequence comparer, using the specified item comparer
            for T.
            </summary>
            <param name="comparer">Comparer for comparing each pair of
            items from the sequences.</param>
        </member>
        <member name="F:Focal.Utilities.EnumerableComparer`1._comparer">
            <summary>
            Object used for comparing each element.
            </summary>
        </member>
        <member name="M:Focal.Utilities.EnumerableComparer`1.Compare(System.Collections.Generic.IEnumerable{`0},System.Collections.Generic.IEnumerable{`0})">
            <summary>
            Compare two sequences of T.
            </summary>
            <param name="x">First sequence.</param>
            <param name="y">Second sequence.</param>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.#ctor">
            <summary>
            Constructs a new SfpOpticalDualTx.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.Id">
            <summary>
            Gets the SFP unique ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            NOTE: THIS IS A PLACE HOLER AND IT IS NOT IMPLEMENTED YET
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.Identifier">
            <summary>
             Gets the SFP Identifier. Table A0, Byte[0].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.SfpDescription">
            <summary>
             Gets the SFP Description.
             For now, it will be based on the Sfp Identifier but it could be based in more parameters.
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.SfpConnectorCode">
            <summary>
             Gets the SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.SfpConnectorDescription">
            <summary>
             Gets the SFP Connector Description from SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.WavelengthPort1">
            <summary>
             Gets (nm) nominal laser wavelength of Port 1. Table A0h, Bytes[60].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.WavelengthPort2">
            <summary>
             Gets (nm) nominal laser wavelength of Port 2. Table A0h, Bytes[61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.TxBias">
            <summary>
            Gets the Tx Bias Current (mA). Bytes[100-101].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.TxPwr">
            <summary>
            Gets Tx Output Power Port 1 (dBm). Bytes[104-105].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.TxPwrP2">
            <summary>
            Gets Tx Output Power Port 2 (dBm). Bytes[104-105].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpOpticalDualTx.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="T:Focal.Utilities.MiscExtensions">
            <summary>
            A collection of miscellaneous extension methods.
            </summary>
        </member>
        <member name="M:Focal.Utilities.MiscExtensions.Description(System.Enum)">
            <summary>
            Gets the 'Description' attribute for the supplied enum value.
            </summary>
            <example>    
            <code>
            <![CDATA[
            foreach (Command cmd in Enum.GetValues(typeof(Command))) {
                Console.WriteLine(cmd.Description());
            }
            ]]>
            </code>
            </example>
            <param name="value">The enum value from which to extract the 
            description.</param>
            <returns>Returns the description if it exists, otherwise returns a 
            string representation of the supplied enum value.</returns>
        </member>
        <member name="M:Focal.Utilities.MiscExtensions.SortNaturally(System.String[])">
            <summary>
            Sorts 'naturally' the supplied string array. 
            (ie. COM3 appears before COM22, etc).
            </summary>
            <remarks>
            <para>This method allows us to numerically sort strings that contain numbers.</para>
            <para>A normal 'Array.Sort' will return something like this:
            'COM1, COM11, COM112, COM2, COM22, COM3....etc'.</para> 
            <para>This method allows us to return:
            'COM1, COM2, COM3, COM11, COM22, COM112...etc'.</para>
            </remarks>
            <param name="source">The string array to sort.</param>
            <returns>The string array, sorted 'naturally'.</returns>
        </member>
        <member name="M:Focal.Utilities.MiscExtensions.ToXML``1(``0)">
            <summary>
            Serializes an object to xml.
            </summary>
            <returns>A string containing the xml serialized object.</returns>
        </member>
        <member name="M:Focal.Utilities.MiscExtensions.FromXML``1(``0,System.IO.FileStream,System.String)">
            <summary>
            Deserializes an object from XML.
            </summary>
            <example>
            Here's how to import a 'ConsoleConfiguration' object from an xml file:
            <code>
            <![CDATA[
            var config = new ConsoleConfiguration()
                .FromXML((FileStream)openFileDialog1.OpenFile(),
                "ConsoleConfigurationSchema.xsd");
            ]]>
            </code>
            </example>
            <param name="inputStream">The xml file stream to deserialize.</param>
            <param name="schemaPath">The path to the xml schema validation file (typically a .xsd file).
            No validation occurs if the schemaPath parameter is null.</param>
            <param name="obj"></param>
            <returns>The deserialized object.</returns>
        </member>
        <member name="M:Focal.Utilities.MiscExtensions.FromXmlWithSchemaStream``1(``0,System.IO.Stream,System.IO.Stream)">
            <summary>
            Deserializes an object from XML.
            </summary>
            <example>
            Here's how to import a 'ConsoleConfiguration' object from an xml file:
            <code>
            <![CDATA[
            var config = new ConsoleConfiguration()
                .FromXML((FileStream)openFileDialog1.OpenFile(),
                "ConsoleConfigurationSchema.xsd");
            ]]>
            </code>
            </example>
            <param name="inputStream">The xml file stream to deserialize.</param>
            <param name="schemaStream">The xml stream forthe xml schema validation file (typically a .xsd file).
            No validation occurs if the schemaStream parameter is null.</param>
            <param name="obj"></param>
            <returns>The deserialized object.</returns>
        </member>
        <member name="M:Focal.Utilities.MiscExtensions.ToEngineeringNotation(System.Double,System.Int32)">
            <summary>
            Formats a double to engineering notation.
            </summary>
            <param name="d">The number to format into engineering notation.</param>
            <param name="numDecimals">The number of decimal points in the result.</param>
            <returns>The original double expressed in engineering notation.</returns>
        </member>
        <member name="M:Focal.Utilities.MiscExtensions.LettersAndDigitsOnly(System.String)">
            <summary>
            Removes all non-letter and non-digit characters from the string.
            </summary>
            <param name="input"></param>
            <returns></returns>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.DiagMasterCard">
            <summary>
            Represents a Diagnostic Master card (motherboard) in a 907 system.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.IOpticsCard">
            <summary>
            Represents commonality between cards in the stack with onboard optics.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagMasterCard.#ctor(System.String,Focal.Model907.Diagnostics.Models.LinkSide,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig)">
            <summary>
            Constructs a new Diagnostic Master.
            </summary>
            <remarks>
            A Diagnostic Master in a 907 system always has one FPGA and one SFP.
            </remarks>
            <param name="description">The description of the card.</param>
            <param name="linkSide">The side of the optical link on which the card resides.</param>
            <param name="fpga">The i2c device configuration for the fpga.</param>
            <param name="sfpA0">The i2c device configuration for the A0 SFP device.</param>
            <param name="sfpA2">The i2c device configuration for the A2 SFP device.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagMasterCard.CreateFpga">
            <summary>
            Creates the proper type of Fpga object using the raw data from the
            i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data in the i2c
            device configuration has been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagMasterCard.CreateSfp">
            <summary>
            Creates the SFP object using the raw data from the i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data arrays in the SFP 
            i2c device configurations have been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagMasterCard.InitDevicesAfterNextRefresh">
            <summary>
            Inidcates that the appropriate factory method to (re)initialize the card
            device types (i.e. the fpga and sfp) should be called after the next 
            refresh of data is received.
            </summary>
            <remarks>
            This method is typically called when the stack configuration
            needs to be determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagMasterCard.ExtractLinkReadyStatus">
            <summary>
            
            </summary>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagMasterCard.RefreshData(System.Boolean)">
            <summary>
            Refreshes data from on-card devices.
            </summary>
            <returns>
            True if all data was successfully refreshed, False otherwise.
            </returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagMasterCard.FpgaI2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device 
            is updated, meaning that we have the 'go-ahead' to determine
            the type of FPGA that answered (eg. 907+, 907V, etc) (if we don't already
            know), or to update the fpga's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagMasterCard.SfpA0I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device 
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagMasterCard.SfpA2I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device 
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagMasterCard.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.DiagMasterCard.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagMasterCard.Description">
            <summary>
            The description of the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagMasterCard.LinkSide">
            <summary>
            The side of the optical link on which the card resides.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagMasterCard.Fpga">
            <summary>
            The Fpga on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagMasterCard.Sfp">
            <summary>
            The SFP optical transceiver on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagMasterCard.DetectedCardDescription">
            <summary>
            Gets the description of the detected card type.  
            This property is basically just a wrapper for Fpga.Id. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagMasterCard.FpgaDetected">
            <summary>
            Get whether a supported FPGA has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagMasterCard.SfpDetected">
            <summary>
            Get whether an SFP has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagMasterCard.I2CDeviceAddresses">
            <summary>
            Gets a dictionary of the card's I2C device addresses where the key is the
            device address and the value is the device description.        
            </summary> 
            <remarks>
            We expose this property to provide an easy means to enumerate the 
            i2c devices in a 907 system, particularly for custom LED configuration
            on the diagnostic card.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagMasterCard.LinkReady">
            <summary>
            Gets whether the optical link status is ok.  
            This property is updated with <see cref="M:Focal.Model907.Diagnostics.Models.DiagMasterCard.RefreshData(System.Boolean)"/>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagMasterCard.SfpOrEepromDetected">
            <summary>
            Get whether an SFP or EEPROM has been detected.
            THIS PROPERTY IS NOT IMPLEMENTED 
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            Also, this property is used to 'hide' or 'show' and media converter card with SFPs or just with Serial EEPROM but no SFP.
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.AnalogTag">
            <summary>
            Encapsulates values associated with an analog process variable.
            </summary>
            <remarks>
            Typically an analog process variable has a measured value
            along with several values to indicate warning and alarm thresholds.
            This class allows us to carry these values as a single object.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.AnalogTag.#ctor(System.String,System.String)">
            <summary>
            Constructs a new AnalogTag using the supplied description and
            units of measure.
            </summary>
            <param name="description">The description of the AnalogTag.</param>
            <param name="units">The units of measure for the AnalogTag (eg. mA, dBm, etc).</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.AnalogTag.#ctor(System.String)">
            <summary>
            Constructs a new AnalogTag using the supplied description.
            </summary>
            <param name="description">The description of the AnalogTag.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.AnalogTag.#ctor">
            <summary>
            Constructs a new AnalogTag using the default description
            of 'AnalogTag'.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpGbe">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpGbe.#ctor">
            <summary>
            Constructs a new SfpGbe.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpGbe.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpGbe.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpGbe.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpGbe.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpGbe.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.Id">
            <summary>
            Gets the SFP unique ID.
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "P:Focal.Model907.Diagnostics.Models.SfpGbe.WriteData" -->
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.Identifier">
            <summary>
             Gets the SFP Identifier. Table A0, Byte[0].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.SfpDescription">
            <summary>
             Gets the SFP Description.
             For now, it will be based on the Sfp Identifier but it could be based in more parameters.
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.SfpConnectorCode">
            <summary>
             Gets the SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.Wavelength">
            <summary>
             Gets (nm) nominal laser wavelength. Table A0h, Bytes[60-61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.TxBias">
            <summary>
            Gets the Tx Bias Current (mA). Bytes[100-101].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.TxPwr">
            <summary>
            Gets the Tx Output Power (dBm). Bytes[102-103].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.RxPwr">
            <summary>
            Gets Rx Input Power (dBm). Bytes[104-105].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpGbe.PortStatus">
            <summary>
            Gets the list of Port statuses.
            </summary>
            <remarks>
            <para>See Marvell doc MV-S100649-00, Rev. H for PHY register map.</para>
            <para>Marvel PHY PN: 88E1111</para>
            <para>Note that the PortStatus prperty below only access PHY registers 1,2,3,10,15,17,25.
                  GigabitEthernetPhy class only provides the decoding of those PHY registers (similar to the 907-GEM).        ///       
            </para>        
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Communications.TcpCommunications">
            <summary>
            Provides a means to communicate to a device using the TCP protocol.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.#ctor(System.Net.IPAddress,System.Int32,System.Int32)">
            <summary>
            Constructs a new TCP Communicator.
            </summary>
            <remarks>
            AutoConnect is enabled by default.
            </remarks>
            <param name="ip">The IP address to connect to,</param>
            <param name="port">The port number to connect to.</param>
            <param name="timeout">The timeout time for the TCP connection to the diagnostics board.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.Finalize">
            <summary>
            Default destructor.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.KillTcpClient">
            <summary>
            Destroys the TCP client.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.OnCommsConnected">
            <summary>
            Raised when communcations to the module have been established.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.OnCommsDisconnected">
            <summary>
            Raised when communcations to the module have been disconnected.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.OnCommsError(System.String,System.Exception)">
            <summary>
            Raised when an error related to the physical communications
            interface is encountered.
            </summary>
            <param name="msg">The error message.</param>
            <param name="ex">The exception.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.OnTransferStarted">
            <summary>
            Raised when a command transfer to the module is initiated.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.OnTransferComplete">
            <summary>
            Raised after a command transfer to the module is complete.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.OnCommandSent(System.Byte[])">
            <summary>
            Raised after command bytes have been sent to the module.
            </summary>
            <param name="cmd">A byte array containing the command
            bytes sent to the module.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.OnCommandResponseReceived(System.Byte[])">
            <summary>
            Raised after the response bytes (not including the echo bytes)
            for a previously sent command have been received.
            </summary>
            <param name="response">A byte array containing the response from
            the module.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.OnCommandSendFailed(System.String)">
            <summary>
            Raised when the requested command cannot be sent.
            </summary>
            <param name="reason">A string indicating the reason why the 
            command cannot be sent.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.OpenCommunications">
            <summary>
            Opens communications.
            </summary>
            <returns>
            True if communications were successfully opened, False otherwise.
            </returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.CloseCommunications">
            <summary>
            Closes communications.
            </summary>
            <returns>True if communications were successfully closed, 
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.CheckNewCommandOk">
            <summary>
            Verifies that it is ok to start a new command transfer.  
            </summary>
            <remarks>
            Attempts to open a connection if AutoConnect is enabled
            and communications have not already been established.
            </remarks>
            <returns>A CommandTransferPermission indicating whether
            permission has been granted or denied.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Communications.TcpCommunications.SendCommand(System.Byte[],System.Byte[]@)">
            <summary>
            Writes the supplied command to the network stream and returns
            the response.
            </summary>
            <remarks>
            We should likely be using BeginWrite and BeginRead with a callback 
            and a ResetEvent instead of using the blocking Write() and Read().
            </remarks>
            <param name="command">The command to send.</param>
            <param name="response">An initialized byte array with length equal
            to the expected number of response bytes for the command.</param>
            <returns>
            TRUE if the number of response bytes matches the size of the 
            response byte array, FALSE otherwise.
            </returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Communications.TcpCommunications.IP">
            <summary>
            Gets or Sets the IP address to connect to.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Communications.TcpCommunications.Port">
            <summary>
            Gets or Sets the port to connect to.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Communications.TcpCommunications.Timeout">
            <summary>
            Gets or Sets the timeout time for the TCP connection to the diagnostics board.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Communications.TcpCommunications.AutoConnectEnabled">
            <summary>
            Gets or Sets whether the TCP connection to the diagnostics board
            should be automatically (re)established whenever a command request
            is received.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Communications.TcpCommunications.TransferInProgress">
            <summary>
            Indicates that a command transfer is currently in progress.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.TcpCommunications.CommsConnected">
            <summary>
            Raised when communications to the module have been established.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.TcpCommunications.CommsDisconnected">
            <summary>
            Raised when communications to the module have been disconnected.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.TcpCommunications.CommsError">
            <summary>
            Raised when an error related to the physical communications
            interface is encountered.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.TcpCommunications.TransferStarted">
            <summary>
            Raised when a command transfer to the module is initiated.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.TcpCommunications.TransferComplete">
            <summary>
            Raised after a command transfer to the module is complete.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.TcpCommunications.CommandSent">
            <summary>
            Raised after command bytes have been sent to the module.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.TcpCommunications.CommandResponseReceived">
            <summary>
            Raised after the response bytes for a previously sent command have 
            been received.
            </summary>        
        </member>
        <member name="E:Focal.Model907.Diagnostics.Communications.TcpCommunications.CommandSendFailed">
            <summary>
            Raised when the requested command cannot be sent.
            </summary>        
        </member>
        <member name="T:Focal.Model907.Diagnostics.Communications.TcpCommunications.CommandTransferPermission">
            <summary>
            Enumerates the possible responses to a request for permission to
            initiate a new command transfer.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.DiagCardNetConfig">
            <summary>
            Represents the network configuration for a diagnostics card.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardNetConfig.#ctor">
            <summary>
            Constructs a new Network configuration.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardNetConfig.Clone(System.Boolean)">
            <summary>
            Performs either a shallow or a deep copy of the current NetConfig object.
            </summary>
            <param name="doDeepCopy">Perform a 'deep copy' of the object. 
            (separate copies of each reference field).</param>
            <returns>The cloned object.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardNetConfig.Clone">
            <summary>
            Performs a deep copy of the NetConfig object.
            </summary>
            <returns>A deep copy of the NetConfig object.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardNetConfig.IP">
            <summary>
            Gets the IP Address of the diagnostics card. Bytes[0-3].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardNetConfig.SubnetMask">
            <summary>
            Gets the Subnet Mask of the diagnostics card. Bytes[4-7].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardNetConfig.Gateway">
            <summary>
            Gets the Gateway of the diagnostics card. Bytes[8-11].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardNetConfig.PrimaryDns">
            <summary>
            Gets the Primary DNS address of the diagnostics card. Bytes[12-15].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardNetConfig.SecondaryDns">
            <summary>
            Gets the Secondary DNS address of the diagnostics card. Bytes[16-19].
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom">
            <summary>
            Represents a Focal Technologies Model 907+ FPGA.
            Custom board for SubAtlantic with integrated diagnostics card.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.#ctor">
            <summary>
            Constructs a new 907+ FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.ActiveSwitchSettings">
            <summary>
            Gets the currently active SERDES mode used by hardware.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.VideoChannels">
            <summary>
            Gets the list of Video Channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.SfpStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.SfpStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.SfpStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.DipSwitchVideoAndDataMode">
            <summary>
            Gets the DIP switch video and data mode status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.DipSwitchSerdesMode">
            <summary>
            Gets the DIP switch SERDES mode status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.LossOfLockCounter">
            <summary>
            Gets the current SERDES Loss of Lock edge counter value.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.BackplaneChannels">
            <summary>
            Gets the list of backplane channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907PlusCustom.OnboardSerialDataChannels">
            <summary>
            <para>Gets the list of onboard serial data channel statuses.</para>
            <para><b>Only supported on 907+ Rev A2 and greater.</b></para>
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Sfp2">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp2.#ctor">
            <summary>
            Constructs a new SFP2.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp2.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp2.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp2.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp2.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp2.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.Wavelength">
            <summary>
             Gets (nm) nominal laser wavelength. Table A0h, Bytes[60-61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.TxBias">
            <summary>
            Gets the Tx Bias Current (mA). Bytes[100-101].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.TxPwr">
            <summary>
            Gets the Tx Output Power (dBm). Bytes[102-103].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.RxPwr">
            <summary>
            Gets Rx Input Power (dBm). Bytes[104-105].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp2.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.EepromFactory">
            <summary>
            Provides a means to create an EEPROM object from a raw data array.  
            </summary>    
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.EepromFactory.CreateEeprom(System.Byte[])">
            <summary>
            Creates a new strongly typed EEPROM from the supplied RawData arrays.
            </summary>
            <param name="rawDataM0">The raw data array for the Eeprom's page 1.</param>        
            <returns></returns>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907E3">
            <summary>
            Represents a Focal Technologies Model 907E Rev. 2 Ethernet and Serial Data FPGA (No Video Support).
            </summary>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.Fpga907E3.ADCWarningLevel">
            <summary> 
            Gets the voltages readings of the 907-Es on-board 8-bit ADC (AD7999)
            The information is read in the followin order:
            From ADC to FPGA then From FPGA to Diagnostic Software
             +---------------------------------------------------------------------------------------------------+
             |FPGA memory map                                                   | Valid Voltage                  |
             |                                                                  |  8-bit values                  |
             |------------------------------------------------------------------+--------------------------------|
             |5V   | assign local_registers_in_array[24]  = adc_data[  7:  0]; | [11:4]  (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[25]  = adc_data[ 15:  8]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |3.3V | assign local_registers_in_array[26]  = adc_data[ 23: 16]; | [27:20] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[27]  = adc_data[ 31: 24]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |12V  | assign local_registers_in_array[28]  = adc_data[ 39: 32]; | [43:36] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[29]  = adc_data[ 47: 40]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |1.2V | assign local_registers_in_array[30]  = adc_data[ 55: 48]; | [59:52] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[31]  = adc_data[ 63: 56]; |                                |
             +---------------------------------------------------------------------------------------------------+        
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.#ctor">
            <summary>
            Constructs a new 907E2 FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.ScaleAnalogValue(System.Double,System.Double,System.Int32)">
            <summary>
            Scales an onboard a/d value from the diagnostics card.
            </summary>
            <param name="adCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.DecodeSerialTriMode(System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            Decodes the serial communications mode based on the supplied bit values.
            </summary>       
            <param name="swBitSetting1">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 1, 3, 5 or 7 from SW2 on the 907E2).</param>
            <param name="swBitSetting2">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 0, 2, 4 or 6  from SW2 on the 907E2).</param>
            <param name="swBitSetting3">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 6  from SW1 on the 907E2).
            this is to indicate whether the configuration is loaded from EEPROM or SW2
            and it is only applicable to RS-485 for user timeout configuration</param>/// 
            <returns>The serial communications mode corresponding to the bit values.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.DecodeSwitchStatus(System.Boolean)">
            <summary>        
            Decodes the dip switch state based on the supplied bit value.
            </summary>       
            <param name="swBitSetting1">The switch setting corresponding to SW#[N] 
            where #=1 or 2 for the 907E and N=1-8 because the two on-board dip switches have 8 pins.</param>
            <returns>The dip switch state (ON or OFF).</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteSwSetting(System.Int32,System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to turn a dip switch ON or OFF
            </summary>
            <remarks>
            assign write_serial_number_eeprom_data[575:568]    = (enable_setting_changes[3])? local_registers_out_array[222] : read_serial_number_eeprom_data[575:568];
            assign write_serial_number_eeprom_data[583:576]    = (enable_setting_changes[4])? local_registers_out_array[223] : read_serial_number_eeprom_data[583:576];
            local_registers_out_array[222] To write to SW1
            local_registers_out_array[223] To write to SW2
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="dipSwNum">The dip switch number (1 or 2) for which the operation will be performed.</param>
            <param name="swPin"> The switch pin (0-7) for which the operation will be performed.</param>
            /// <param name="swState"> The desired state of the switch (On=1 or Off=0).</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteSerChProgrammableDelay(System.Int32,System.Byte)">
             <summary>
             Provides to the FPGA User Definded Serial Data Timeout Values
             </summary>
             <remarks>
             Note: This method will write to FPGA registers: 248,249,250 and 251 for serial data  channels 1, 2, 3 and 4 respectively.
                   It will also perform a write enable on FPGA reg 252.
             assign write_serial_number_eeprom_data[527:520]    = (enable_ser_ch_changes[1])? local_registers_out_array[248] : read_serial_number_eeprom_data[527:520];
             assign write_serial_number_eeprom_data[535:528]    = (enable_ser_ch_changes[2])? local_registers_out_array[249] : read_serial_number_eeprom_data[535:528];
             assign write_serial_number_eeprom_data[543:536]    = (enable_ser_ch_changes[3])? local_registers_out_array[250] : read_serial_number_eeprom_data[543:536];
             assign write_serial_number_eeprom_data[551:544]    = (enable_ser_ch_changes[4])? local_registers_out_array[251] : read_serial_number_eeprom_data[551:544];
             
             assign ser_ch_programmable_delay[1]                = {read_serial_number_eeprom_data[527:520],8'h00};
             assign ser_ch_programmable_delay[2]                = {read_serial_number_eeprom_data[535:528],8'h00};
             assign ser_ch_programmable_delay[3]                = {read_serial_number_eeprom_data[543:536],8'h00};
             assign ser_ch_programmable_delay[4]                = {read_serial_number_eeprom_data[551:544],8'h00};
            
             assign enable_ser_ch_changes                       = local_registers_out_array[252][4:1];
             </remarks>
             <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
             has not been assigned.</exception>
             <param name="serChNum"> The Serial Ch Number to which a new programmable delay will be applied (Valid values are int 1-4).</param>
             <param name="byteData"> A pre-validated byte which represents the actual delay value.</param>
             <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteSerChTerminator(System.Int32,System.Boolean)">
            <summary>
            Indicates the FPGA to Enable/Disable the 120 ohm terminator resistor in the LT serial data transceiver.
            </summary>
            <remarks>
                  
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];     
            
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            
            assign ch_te_n_eeprom_setting                      = read_serial_number_eeprom_data[567:564];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="serChNum"> The Serial Ch Number to which the 120 ohm terminator will be enabled/disabled (Valid values are int 1-4).</param>
            <param name="enableDisable">Enable/Disable Terminator. True = Enable. False = Disable.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.SaveAllSerChTerminator">
            <summary>
            Indicates the FPGA to Enable/Disable the 120 ohm terminator resistor in the LT serial data transceiver.
            This method SAVES values in EEPROM
            </summary>
            <remarks>
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteIgnoreVideoClamp(System.Boolean)">
            <summary>
            Indicates the FPGA to Enable/Disable video clamps.
            </summary>
            <remarks>
                  
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];     
            
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            
            assign ignore_video_clamps                         = read_serial_number_eeprom_data[561];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>        
            <param name="enableDisable">Enable/Disable Video Clamp. True = Video Clamp Ignored (for non-video signal). False = Video Clamp is Active (for regular NTSC/PAL video signal).</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.SaveIgnoreVideoClampConfig">
            <summary>
            Indicates the FPGA to Enable/Disable video clamps.
            This method SAVES values in EEPROM
            </summary>
            <remarks>
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];     
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            assign ignore_video_clamps                         = read_serial_number_eeprom_data[561];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteSwitchTakeover(System.Boolean)">
            <summary>
            Requests the FPGA to turn use EEPROM Dip Switch Settings or On-Board Dip Switch Settings
            </summary>
            <param name="enableEepromDipSwSettings">0 = Use EEPROM DIP Sw Settings; 1 = Use On-Board DIP Sw Settings</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.SaveExtendedSettings">
            <summary>
            Indicates the FPGA to save the Termination, Video and Switch Takeover settings.
            This method SAVES values in EEPROM
            </summary>
            <remarks>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteBpSampleRateMode(System.Int32,System.Boolean)">
            <summary>
            Indicates the FPGA to set the BP sample rate mode
            1 = Standard BP Mode.
            0 = High Sample Rate BP Mode
            </summary>
            <remarks>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="chNum"> The backplane channel number to which the new settings will be applied.</param>
            <param name="setting">True = Standard BP Mode. False = High Sample Rate BP Mode.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteBpDuplexMode(System.Int32,System.Boolean)">
            <summary>
            Indicates the FPGA to set the BP duplex mode
            1 = Full Duplex Mode
            0 = Half Duplex Mode 
            </summary>
            <remarks>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="chNum"> The backplane channel number to which the new settings will be applied.</param>
            <param name="setting">True = Full Duplex Mode. False = Half Duplex Mode.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteBpDelay(System.Int32,System.Boolean)">
            <summary>
            Indicates the FPGA to set the BP delay.
            1 = Half Duplex Delay of 350 ns
            0 = Half Duplex Delay of 1 ms
            </summary>
            <remarks>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="chNum"> The backplane channel number to which the new settings will be applied.</param>
            <param name="setting">True = Half Duplex Delay of 350 ns. False = Half Duplex Delay of 1 ms.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteBpDefaultSettings">
            <summary>
            Indicates the FPGA to set the default values of BP sample rate, duplex mode and delay.
            </summary>
            <remarks>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteBpRecallSettings">
            <summary>
            Indicates the FPGA to Recall the Last Saved Settings of BP sample rate, duplex mode and delay.
            </summary>
            <remarks>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.SaveAllBpSettings">
            <summary>
            A method used to indicate the FPGA to save in EEPROM ALL the Pre-Saved Backplane (BP) mode settings
            </summary>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>                
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.ClearLinkLossErrorCounter">
            <summary>
            A method used to ClearLinkLossErrorCounter
            </summary>
            <returns>True if the command succeeded, False otherwise.</returns>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.EnetLinkFaultPassThrough(System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable Link Fault Pass Through
            </summary>
            <remarks>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="state">
            1 = Link Fault Pass Through Enabled (Enet link will communicate the far end the status of the local link). 
            0 = Link Fault Pass Through Disabled (Enet link will NOT communicate the far end the status of the local link). .</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.TogglePhySettingsControl(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable Control of PHY Settings
            </summary>
            <remarks>
            Name	                 Description	                                                           Register
            Enable GUI Control    1 – Enable control of PHY status from GUI and write settings to EEPROM  PHY0 =REG[240][5]
            of PHY Settings       0 – Use settings in EEPROM                                              PHY1 =REG[241][5]
                                                                                                          PHY2 =REG[242][5]
                                                                                                          PHY3 =REG[243][5]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyControl">Indicates whether to enable or 
            disable control of Phy settings for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.TogglePhyChangeMasterSlave(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable "Change Master/Slave Status"
            </summary>
            <remarks>
            Name	                 Description	                           Register
            Change Master/Slave    1 – Enable change to master slave status    PHY0 =REG[240][4]
            status                 0 – Leave status as is from EEPROM          PHY1 =REG[241][4]
                                                                               PHY2 =REG[242][4]
                                                                               PHY3 =REG[243][4]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyChangeMasterSlave">Indicates whether to enable or 
            disable change to master/slave status for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.TogglePhyMasterSlave(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable "Master/Slave Status"
            </summary>
            <remarks>
            Name	                 Description	         Register
            Master/Slave          1 – Master                PHY0 =REG[240][3]
            Status                0 – Slave                 PHY1 =REG[241][3]
                                                            PHY2 =REG[242][3]
                                                            PHY3 =REG[243][3]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyMasterSlave">Indicates whether to enable or 
            disable change to master/slave status for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.TogglePhy1000BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 1000 Base-T
            </summary>
            <remarks>
            Name	                 Description	                      Register
            Disable 1000 BASE-T     1 – 1000 BASE-T is disabled           PHY0 =REG[240][2]
                                    0 – 1000 BASE-T is enabled            PHY1 =REG[241][2]
                                                                          PHY2 =REG[242][2]
                                                                          PHY3 =REG[243][2]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy1000BT">Indicates whether to enable or 
            disable 1000 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.TogglePhy100BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 100 Base-T
            </summary>
            <remarks>
            Name	                  Description	                      Register
            Disable 100 BASE-T      1 – 100 BASE-T is disabled           PHY0 =REG[240][1]
                                    0 – 100 BASE-T is enabled            PHY1 =REG[241][1]
                                                                         PHY2 =REG[242][1]
                                                                         PHY3 =REG[243][1]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy100BT">Indicates whether to enable or 
            disable 100 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.TogglePhy10BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 10 Base-T
            </summary>
            <remarks>
            Name	                  Description	                      Register
            Disable 10 BASE-T       1 – 10 BASE-T is disabled           PHY0 =REG[240][0]
                                    0 – 10 BASE-T is enabled            PHY1 =REG[241][0]
                                                                        PHY2 =REG[242][0]
                                                                        PHY3 =REG[243][0]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy10BT">Indicates whether to enable or 
            disable 10 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.ToggleResetStatistics(System.Boolean)">
            <summary>
            Requests the FPGA to reset all statistcs counters
            </summary>
            <remarks>
            Address: FC (Hex) = 252 (dec)
            Bit[0]: reset_statistics
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.CopyAllPortSettings">
            <summary>
            Copies the first 5 bits of register 0x90 (144[4:0]) to registers 0xF0 (240[4:0])
            Used to 'refresh/get' the last saved port settings in EEPROM such as:
            enable 10/100/1000 Mbps, prefer master or slave and change master slave status
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteDataToPhy(System.Byte,System.UInt16)">
            <summary>
            Writes new data to the Ethernet PHY at the specified address.        
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteDataToPhyTrigger(System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Provides a positive edge to the FPGA to trigger write for PHY.
            </summary>
            <remarks>
            Address: 247 (dec)
            Bit[0]: trigger PHY write
            verify: true = verify enabled, false verify disable
            timeout: maximum time in ms to wait before considering a fail write.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.VerifyWriteData(System.Byte,System.Int32,System.Boolean,System.Int64)">
            <summary>
            Verifies if the bit value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms..
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="expectedValue"> The expected value of bitNum in regNum (true or false). </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.FactoryDefaultCardConfiguration(System.Int32)">
            <summary>
            Indicates the FPGA to Use Factory Default Configurations
            </summary>
            <remarks>        
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData"/> 
            has not been assigned.</exception>
            <param name="cardMode"> The desired factory default card mode. 1=907E-625M; 2=907E-1G25; 3=907E-2G50</param>        
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.ToString">
            <summary>
            override string ToString
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteDataToFpgaTrigger(System.Byte,System.Int32,System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Provides a positive or negative edge to the FPGA to trigger a write.
            </summary>
            <remarks>
            Address: 247 (dec)
            Bit[0]: trigger PHY write
            verify: true = verify enabled, false verify disable
            timeout: maximum time in ms to wait before considering a fail write.
            </remarks>
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="OneOrZero"> true=One=Positive Edge to FPGA. false=Zero=Negative Edge to FPGA </param>
            <param name="verify"> true=perform a verification of the written data and wait X timeout before to give up. false=Do not perform verification, just assume that the data was written in time. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.VerifyWriteDataBit(System.Byte,System.Int32,System.Boolean,System.Int64)">
            <summary>
            Verifies if the bit value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms..
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="expectedValue"> The expected value of bitNum in regNum (true or false). </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.VerifyWriteData(System.Byte,System.Byte,System.Int64)">
            <summary>
            Verifies if the byte value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms.
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>        
            <param name="expectedValue"> The expected value of the byte in regNum. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E3.TransactionDelay(System.Int64)">
            <summary>
            Adds a delay between transactions for up to the time specified. The 'delay' value is expressed in (long) ms.        
            Typically this method is used after the WriteData method is called.
            </summary>        
            <param name="delay"> Required delay in ms. E.g. 1000 = 1sec.</param>
            <remarks>                
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.IsConsole">
            <summary>
            Gets whether the 907E2 is configured as a Console or Remote.  
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.DipSw1">
            <summary>
            Gets the DIP switch 1 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.DipSw2">
            <summary>
            Gets the DIP switch 2 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.OnboardDipSwitch1">
            <summary>
            Gets the list of onboard SW1 switches status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.OnboardDipSwitch2">
            <summary>
            Gets the list of onboard SW2 switches status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.Sw1SettingControl">
            <summary>
            Gets a list where each element indicates whether an switch (from EEPROM) has been selected to be ON or OFF
            Source: FPGA reg 222
            Applicable to Dip SW1
            1 – Switch ON
            0 – Switch OFF
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.Sw2SettingControl">
            <summary>
            Gets a list where each element indicates whether a switch (from EEPROM) has been selected to be ON or OFF
            Source: FPGA reg 223
            Applicable to Dip SW2
            1 – Switch ON
            0 – Switch OFF
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PreSavedEepromDipSw1">
            <summary>
            Gets the pre-saved status of EEPROM dip switch 1
            Source: FPGA reg 222        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PreSavedEepromDipSw2">
            <summary>
            Gets the pre-saved status of EEPROM dip switch 2
            Source: FPGA reg 223        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.EepromDipSw1">
            <summary>
            Gets the EEPROM DIP switch 1 status
            From FPGA code:
            assign local_registers_in_array[ 57]               = read_serial_number_eeprom_data[559:552];  // Switch 1 settings from EEPROM
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.EepromDipSw2">
            <summary>
            Gets the EEPROM DIP switch 2 status
            From FPGA code:
            assign local_registers_in_array[ 58]               = read_serial_number_eeprom_data[567:560];  // Switch 2 settings from EEPROM
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.EepromDipSwitchChanged">
            <summary> 
            Compares EepromDipSw1 and Sw2 vs Sw1SettingControl and Sw2
            To determine if changes made in the GUI have been saved in EEPROM or not.
            Returns false if there are no changes, true if there are changes
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.ActiveDipSw1">
            <summary>
            Gets the Active (EEPROM vs On-board) DIP switch 1 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.ActiveDipSw2">
            <summary>
            Gets the Active (EEPROM vs On-board) DIP switch 2 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.ExtendedSettingsChanged">
            <summary> 
            Compares the EEPROM Extended Configuration (Termination, Video and Sw Takeover) vs Extended Configuration Settings Pre-EEPROM
            The actual registers under comparison are FPGA regNum=221 dec (selected values) vs regNum=59 dec (values read by FPGA from EEPROM)
            To determine if changes made in the GUI have been saved in EEPROM or not.
            Returns false if there are no changes, true if there are changes
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.SerChTermination">
            <summary>
            Gets the RS485/422 120 ohm termination state saved in EEPROM (returns a list of bool)
            <remarks>
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.SerChTerminationStatus">
            <summary>
            Gets the RS485/422 120 ohm termination state saved in EEPROM (returns a list of strings)
            <remarks>
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.SerChTerminationSelected">
            <summary>
            Gets the RS485/422 120 ohm termination state selected (returns a list of bool)
            <remarks>
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.IgnoreVideoClampSelected">
            <summary>
            Gets the Pre-Saved EEPROM ignore video clamp selection status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.IgnoreVideoClampStatus">
            <summary>
            Gets the Saved EEPROM ignore video clamp selection status
            From FPGA code: Acutal value is in bit 1 of FpgaReg 59
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.IgnoreVideoClamp">
            <summary>
            Gets the Saved EEPROM ignore video clamp selection status (returns a bool)
            From FPGA code: Acutal value is in bit 1 of FpgaReg 59
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.HwSwitchTakeover">
            <summary>
            Gets the Hardware Switch Takeover Status
            From Dip SW1 pin 2.
            1 = Use On-board Dip switches configuration based on SW1[2] (SW1 has pins 1 to 8)
            0 = Use switche configuration based on EEPROM. The card config can be loaded from on-board SW1[2] (SW1 has pins 1 to 8) or EEPROM
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.SwitchTakeover">
            <summary>
            Gets the EEPROM Switch Takeover Status
            From FPGA code: Acutal value is in bit 0 of FpgaReg 59
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.SwitchTakeoverSelected">
            <summary>
            Gets the Selected Switch Takeover Status
            From FPGA code: Acutal value is in bit 0 of FpgaReg 221
            assign switch_takeover                             = read_serial_number_eeprom_data[560];
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BackplaneSettingsChanged">
            <summary> 
            Compares the EEPROM Backplane Configuration (Sample Rate, Duplex Mode and Delay) vs Backplane Configuration Settings Pre-EEPROM
            The actual registers under comparison are FPGA regNum=216,217,218 dec (selected values) vs regNum=61,62,63 dec (values read by FPGA from EEPROM)
            To determine if changes made in the GUI have been saved in EEPROM or not.
            Returns false if there are no changes
            Returns true if there are changes
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BpSampleRate">
            <summary>
            Gets the Sample Rate state saved in EEPROM (returns a list of bool)
            <remarks>
            read info from FPGA reg 61
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BpSampleRateStatus">
            <summary>
            Gets the Sample Rate state status saved in EEPROM (returns a list of bool)
            <remarks>
            read info from FPGA reg 61
            </remarks>
            </summary> 
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BpSampleRateSelected">
            <summary>
            Gets the Sample Rate state selected (returns a list of bool)
            <remarks>
            read info from FPGA reg 216
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BpDuplexMode">
            <summary>
            Gets the Duplex Mode state saved in EEPROM (returns a list of bool)
            <remarks>
            read info from FPGA reg 62=RegNum_RO_Cfg5
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BpDuplexModeStatus">
            <summary>
            Gets the Duplex Mode status saved in EEPROM (returns a list of bool)
            </summary> 
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BpDuplexModeSelected">
            <summary>
            Gets the Duplex Mode state selected (returns a list of bool)
            <remarks>
            read info from FPGA reg 217=RegNum_RW_Cfg4
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BpDuplexModeEnable">
            <summary>
            Gets the Duplex Mode Enable State (returns a list of bool)
            <remarks>
            True = Duplex Mode buttons are are enabled.
            False = Duplex Mode buttons are are NOT enabled.
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BpDelay">
            <summary>
            Gets the Delay state saved in EEPROM (returns a list of bool)
            <remarks>
            read info from FPGA reg 63=RegNum_RO_Cfg6
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BpDelayStatus">
            <summary>
            Gets the Delay status saved in EEPROM (returns a list of bool)
            </summary> 
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BpDelaySelected">
            <summary>
            Gets the Delay state selected (returns a list of bool)
            <remarks>
            read info from FPGA reg 218=RegNum_RW_Cfg5
            </remarks>
            </summary>       
        </member>
        <!-- Badly formed XML comment ignored for member "P:Focal.Model907.Diagnostics.Models.Fpga907E3.BpHighSampleAndHalfDuplexSelected" -->
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BackplaneDataChannels">
            <summary>
            Gets the list of backplane Tx/Rx data channel statuses.        
            1 = LED on = Tx/Rx Activity Detected
            0 = LED off = Tx/Rx Activity NOT Detected
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.OnboardSerialDataChannels">
            <summary>
            Gets the list of onboard serial data channel statuses.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.SerChProgrammableDelayValue">
            <summary>
            Gets the Onboard Serial ata Programmable Delay Values in EEPROM
            <remarks>
            assign local_registers_in_array[145]               = read_serial_number_eeprom_data[527:520];
            assign local_registers_in_array[146]               = read_serial_number_eeprom_data[535:528];
            assign local_registers_in_array[147]               = read_serial_number_eeprom_data[543:536];
            assign local_registers_in_array[148]               = read_serial_number_eeprom_data[551:544];        /// 
            </remarks>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.LinkFault">
            <summary>
            Gets the Link Fault Led indicator.
            Address: 06 (hex)
            Bits[2]
            </summary>        
        </member>
        <!-- Badly formed XML comment ignored for member "P:Focal.Model907.Diagnostics.Models.Fpga907E3.OpticalSpeed" -->
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.LinkLossCounter">
            <summary>
            Gets the Link Loss Counts
            Address: 11 (dec)
            Bits[7:0] 
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.CardConfigSummary">
            <summary>        /// 
            Gets a list where each element indicates a card configuration parameter
            Returns a list of strings
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.SfpStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.SfpStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.SfpStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhyStatus">
            <summary>
            Gets the list of Port statuses.
            </summary>
            <remarks>
            <para>See Micrel datasheet KSZ9021RL/RN October 20009 for PHY register map.</para>
            <para>Note that the 907E2 card provides data for registers all 31 registers 0 to 31
            for the on-board PHY</para>
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.EnetLinkFaultPassThroughSelected">
            <summary>
            Gets the status of Enet Link Fault Pass Through
            1 = Link Fault Pass Through Enabled (Enet link will communicate the far end the status of the local link). 
            0 = Link Fault Pass Through Disabled (Enet link will NOT communicate the far end the status of the local link).        /// 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettingsControlActive">
            <summary>
            Gets a list where each element indicates whether the "Control of PHY Settings"
            of that port is enabled.  Source: FPGA reg 240[5]
            
            1 – Enable control of PHY status from GUI and write settings to EEPROM
            0 – Use settings in EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettingsChangeMasterSlaveActive">
            <summary>
            Gets a list where each element indicates whether the "Change Master / Slave" status
            of that port is enabled.  Source: FPGA reg 240[4]
            
            0 – Enable change to master slave status
            1 – Leave status as is from EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettingsMasterSlaveActive">
            <summary>
            Gets a list where each element indicates whether the "Master" or "Slave" status
            of that port is enabled.  Source: FPGA reg 240[3]
            
            0 – Master
            1 – Slave
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettings1000BTActive">
            <summary>
            Gets a list where each element indicates whether the "1000 BASE-T" 
            of that port is enabled.  Source: FPGA reg 240[2]
            
            0 – 1000 BASE-T is disabled
            1 – 1000 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettings100BTActive">
            <summary>
            Gets a list where each element indicates whether the "100 BASE-T" 
            of that port is enabled.  Source: FPGA reg 240[1]
            
            0 – 100 BASE-T is disabled
            1 – 100 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettings10BTActive">
            <summary>
            Gets a list where each element indicates whether the "10 BASE-T" 
            of that port is enabled. Source: FPGA reg 240[0]
            
            0 – 10 BASE-T is disabled
            1 – 10 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettingsControlActiveE">
            <summary>
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Control of PHY Settings"
            of that port is enabled. (Data read from on-board EEPROM)
            
            0 – Enable control of PHY status from GUI and write settings to EEPROM
            1 – Use settings in EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettingsChangeMasterSlaveActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Change Master / Slave" status
            of that port is enabled.
            
            0 – Enable change to master slave status
            1 – Leave status as is from EEPROM        /// 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettingsMasterSlaveActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Master" or "Slave" status
            of that port is enabled.
            
            0 – Master
            1 – Slave
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettings1000BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "1000 BASE-T" 
            of that port is enabled.
            
            0 – 1000 BASE-T is disabled
            1 – 1000 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettings100BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "100 BASE-T" 
            of that port is enabled.
            
            0 – 100 BASE-T is disabled
            1 – 100 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettings10BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "10 BASE-T" 
            of that port is enabled.
            
            0 – 10 BASE-T is disabled
            1 – 10 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhySettingsChanged">
            <summary> 
            Gets the complete PHY register status 0x90 (144) and 0xF0 (240)
            used to determine if changes made in the GUI have been saved in EEPROM or not.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhyStatisticsPacketLoss">
            <summary> 
            Gets the packet loss count of each port        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BackplaneEnable">
            <summary> 
            Gets the backplane enable/disable status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BackplaneRxError">
            <summary> 
            Gets the backplane data receive underflow/overflow erros (Rx error)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.BackplaneTxError">
            <summary> 
            Gets the backplane data transmit underflow/overflow erros (Tx error)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhyPacketDropped">
            <summary> 
            Gets the Packet Dropped LED information
            Address 05 Hex
            Bit [3:0]: packet_dropped_led_n (active low)
            Per copper Ethernet port packet dropped indicator
            Corresponds to LEDs D4,D5,D6,D7
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhyEthernetCuActivityRx">
            <summary> 
            Gets the Ethernet Copper Recive Activity Port information
            Address 04 Hex
            Bit [3:0]: Ethernet Copper Receive Activity Ports [3:0] (active low)        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.PhyEthernetCuActivityTx">
            <summary> 
            Gets the Ethernet Copper Transmit Activity Port information
            Address 04 Hex
            Bit [7:4]: Ethernet Copper Transmit Activity Ports [3:0] (active low)        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.InputVoltage5vOr12vn">
            <summary>
            Gets the card's voltage input configuration
            1 = 5Vin
            0 = 12Vin.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.Voltage12">
            <summary>
            Gets the voltage reading from the 1.2VDC rail on the card. Bytes[0-1].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.Voltage12V">
            <summary>
            Gets the voltage reading from the 12VDC rail on the diagnostics card (V). Bytes[4-5].
            The actual voltage going into the ADC is 12V/5.02 = 2.39V. Vadc=12V/((4.02K+1K)/1K)=2.39V
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.Voltage33">
            <summary>
            Gets the voltage reading from the 3.3VDC rail on card (V). Bytes[2-3].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E3.Voltage5">
            <summary>
            Gets the voltage reading from the 5VDC rail on the card (V). Bytes[6-7].
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.OnboardSerialDataChannel">
            <summary>
            Encapsulates the status for a single onboard serial data channel.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.OnboardSerialDataChannel.#ctor(System.String)">
            <summary>
            Constructs a new OnboardSerialData channel.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.OnboardSerialDataChannel.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.OnboardSerialDataChannel.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.OnboardSerialDataChannel.ChannelName">
            <summary>
            Gets the name of this onboard serial data channel.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.OnboardSerialDataChannel.TxActivity">
            <summary>
            Gets or Sets the flag indicating that transmit activity has been detected,
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.OnboardSerialDataChannel.RxActivity">
            <summary>
            Gets or Sets the flag indicating that receive activity has been detected.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.OnboardSerialDataChannel.TxRxActivity">
            <summary>
            Gets or Sets the flag indicating that transmit/receive activity has been detected.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.OnboardSerialDataChannel.SerialMode">
            <summary>
            Gets or Sets the serial communication mode of the channel.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.OnboardSerialDataChannel.SerialCommunicationsMode">
            <summary>
            Enumerates the supported types of serial communication modes.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907E2">
            <summary>
            Represents a Focal Technologies Model 907E Rev. 2 Ethernet, Video and Serial Data FPGA.
            </summary>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.Fpga907E2.ADCWarningLevel">
            <summary> 
            Gets the voltages readings of the 907-Es on-board 8-bit ADC (AD7999)
            The information is read in the followin order:
            From ADC to FPGA then From FPGA to Diagnostic Software
             +---------------------------------------------------------------------------------------------------+
             |FPGA memory map                                                   | Valid Voltage                  |
             |                                                                  |  8-bit values                  |
             |------------------------------------------------------------------+--------------------------------|
             |5V   | assign local_registers_in_array[24]  = adc_data[  7:  0]; | [11:4]  (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[25]  = adc_data[ 15:  8]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |3.3V | assign local_registers_in_array[26]  = adc_data[ 23: 16]; | [27:20] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[27]  = adc_data[ 31: 24]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |12V  | assign local_registers_in_array[28]  = adc_data[ 39: 32]; | [43:36] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[29]  = adc_data[ 47: 40]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |1.2V | assign local_registers_in_array[30]  = adc_data[ 55: 48]; | [59:52] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[31]  = adc_data[ 63: 56]; |                                |
             +---------------------------------------------------------------------------------------------------+        
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.#ctor">
            <summary>
            Constructs a new 907E2 FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.ScaleAnalogValue(System.Double,System.Double,System.Int32)">
            <summary>
            Scales an onboard a/d value from the diagnostics card.
            </summary>
            <param name="adCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.DecodeSerialTriMode(System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            Decodes the serial communications mode based on the supplied bit values.
            </summary>       
            <param name="swBitSetting1">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 1, 3, 5 or 7 from SW2 on the 907E2).</param>
            <param name="swBitSetting2">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 0, 2, 4 or 6  from SW2 on the 907E2).</param>
            <param name="swBitSetting3">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 6  from SW1 on the 907E2).
            this is to indicate whether the configuration is loaded from EEPROM or SW2
            and it is only applicable to RS-485 for user timeout configuration</param>/// 
            <returns>The serial communications mode corresponding to the bit values.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.DecodeSwitchStatus(System.Boolean)">
            <summary>        
            Decodes the dip switch state based on the supplied bit value.
            </summary>       
            <param name="swBitSetting1">The switch setting corresponding to SW#[N] 
            where #=1 or 2 for the 907E and N=1-8 because the two on-board dip switches have 8 pins.</param>
            <returns>The dip switch state (ON or OFF).</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteSwSetting(System.Int32,System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to turn a dip switch ON or OFF
            </summary>
            <remarks>
            assign write_serial_number_eeprom_data[575:568]    = (enable_setting_changes[3])? local_registers_out_array[222] : read_serial_number_eeprom_data[575:568];
            assign write_serial_number_eeprom_data[583:576]    = (enable_setting_changes[4])? local_registers_out_array[223] : read_serial_number_eeprom_data[583:576];
            local_registers_out_array[222] To write to SW1
            local_registers_out_array[223] To write to SW2
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <param name="dipSwNum">The dip switch number (1 or 2) for which the operation will be performed.</param>
            <param name="swPin"> The switch pin (0-7) for which the operation will be performed.</param>
            /// <param name="swState"> The desired state of the switch (On=1 or Off=0).</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteSerChProgrammableDelay(System.Int32,System.Byte)">
             <summary>
             Provides to the FPGA User Definded Serial Data Timeout Values
             </summary>
             <remarks>
             Note: This method will write to FPGA registers: 248,249,250 and 251 for serial data  channels 1, 2, 3 and 4 respectively.
                   It will also perform a write enable on FPGA reg 252.
             assign write_serial_number_eeprom_data[527:520]    = (enable_ser_ch_changes[1])? local_registers_out_array[248] : read_serial_number_eeprom_data[527:520];
             assign write_serial_number_eeprom_data[535:528]    = (enable_ser_ch_changes[2])? local_registers_out_array[249] : read_serial_number_eeprom_data[535:528];
             assign write_serial_number_eeprom_data[543:536]    = (enable_ser_ch_changes[3])? local_registers_out_array[250] : read_serial_number_eeprom_data[543:536];
             assign write_serial_number_eeprom_data[551:544]    = (enable_ser_ch_changes[4])? local_registers_out_array[251] : read_serial_number_eeprom_data[551:544];
             
             assign ser_ch_programmable_delay[1]                = {read_serial_number_eeprom_data[527:520],8'h00};
             assign ser_ch_programmable_delay[2]                = {read_serial_number_eeprom_data[535:528],8'h00};
             assign ser_ch_programmable_delay[3]                = {read_serial_number_eeprom_data[543:536],8'h00};
             assign ser_ch_programmable_delay[4]                = {read_serial_number_eeprom_data[551:544],8'h00};
            
             assign enable_ser_ch_changes                       = local_registers_out_array[252][4:1];
             </remarks>
             <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
             has not been assigned.</exception>
             <param name="serChNum"> The Serial Ch Number to which a new programmable delay will be applied (Valid values are int 1-4).</param>
             <param name="byteData"> A pre-validated byte which represents the actual delay value.</param>
             <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteSerChTerminator(System.Int32,System.Boolean)">
            <summary>
            Indicates the FPGA to Enable/Disable the 120 ohm terminator resistor in the LT serial data transceiver.
            </summary>
            <remarks>
                  
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];     
            
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            
            assign ch_te_n_eeprom_setting                      = read_serial_number_eeprom_data[567:564];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <param name="serChNum"> The Serial Ch Number to which the 120 ohm terminator will be enabled/disabled (Valid values are int 1-4).</param>
            <param name="enableDisable">Enable/Disable Terminator. True = Enable. False = Disable.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.SaveAllSerChTerminator">
            <summary>
            Indicates the FPGA to Enable/Disable the 120 ohm terminator resistor in the LT serial data transceiver.
            This method SAVES values in EEPROM
            </summary>
            <remarks>
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteIgnoreVideoClamp(System.Boolean)">
            <summary>
            Indicates the FPGA to Enable/Disable video clamps.
            </summary>
            <remarks>
                  
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];     
            
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            
            assign ignore_video_clamps                         = read_serial_number_eeprom_data[561];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>        
            <param name="enableDisable">Enable/Disable Video Clamp. True = Video Clamp Ignored (for non-video signal). False = Video Clamp is Active (for regular NTSC/PAL video signal).</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.SaveIgnoreVideoClampConfig">
            <summary>
            Indicates the FPGA to Enable/Disable video clamps.
            This method SAVES values in EEPROM
            </summary>
            <remarks>
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];     
            assign enable_setting_changes                      = local_registers_out_array[219][4:1];
            assign ignore_video_clamps                         = read_serial_number_eeprom_data[561];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteSwitchTakeover(System.Boolean)">
            <summary>
            Requests the FPGA to turn use EEPROM Dip Switch Settings or On-Board Dip Switch Settings
            </summary>
            <param name="enableEepromDipSwSettings">0 = Use EEPROM DIP Sw Settings; 1 = Use On-Board DIP Sw Settings</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.SaveExtendedSettings">
            <summary>
            Indicates the FPGA to save the Termination, Video and Switch Takeover settings.
            This method SAVES values in EEPROM
            </summary>
            <remarks>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.ClearLinkLossErrorCounter">
            <summary>
            A method used to ClearLinkLossErrorCounter
            </summary>
            <returns>True if the command succeeded, False otherwise.</returns>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.EnetLinkFaultPassThrough(System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable Link Fault Pass Through
            </summary>
            <remarks>
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <param name="state">
            1 = Link Fault Pass Through Enabled (Enet link will communicate the far end the status of the local link). 
            0 = Link Fault Pass Through Disabled (Enet link will NOT communicate the far end the status of the local link). .</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.TogglePhySettingsControl(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable Control of PHY Settings
            </summary>
            <remarks>
            Name	                 Description	                                                           Register
            Enable GUI Control    1 – Enable control of PHY status from GUI and write settings to EEPROM  PHY0 =REG[240][5]
            of PHY Settings       0 – Use settings in EEPROM                                              PHY1 =REG[241][5]
                                                                                                          PHY2 =REG[242][5]
                                                                                                          PHY3 =REG[243][5]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyControl">Indicates whether to enable or 
            disable control of Phy settings for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.TogglePhyChangeMasterSlave(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable "Change Master/Slave Status"
            </summary>
            <remarks>
            Name	                 Description	                           Register
            Change Master/Slave    1 – Enable change to master slave status    PHY0 =REG[240][4]
            status                 0 – Leave status as is from EEPROM          PHY1 =REG[241][4]
                                                                               PHY2 =REG[242][4]
                                                                               PHY3 =REG[243][4]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyChangeMasterSlave">Indicates whether to enable or 
            disable change to master/slave status for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.TogglePhyMasterSlave(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable "Master/Slave Status"
            </summary>
            <remarks>
            Name	                 Description	         Register
            Master/Slave          1 – Master                PHY0 =REG[240][3]
            Status                0 – Slave                 PHY1 =REG[241][3]
                                                            PHY2 =REG[242][3]
                                                            PHY3 =REG[243][3]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyMasterSlave">Indicates whether to enable or 
            disable change to master/slave status for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.TogglePhy1000BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 1000 Base-T
            </summary>
            <remarks>
            Name	                 Description	                      Register
            Disable 1000 BASE-T     1 – 1000 BASE-T is disabled           PHY0 =REG[240][2]
                                    0 – 1000 BASE-T is enabled            PHY1 =REG[241][2]
                                                                          PHY2 =REG[242][2]
                                                                          PHY3 =REG[243][2]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy1000BT">Indicates whether to enable or 
            disable 1000 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.TogglePhy100BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 100 Base-T
            </summary>
            <remarks>
            Name	                  Description	                      Register
            Disable 100 BASE-T      1 – 100 BASE-T is disabled           PHY0 =REG[240][1]
                                    0 – 100 BASE-T is enabled            PHY1 =REG[241][1]
                                                                         PHY2 =REG[242][1]
                                                                         PHY3 =REG[243][1]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy100BT">Indicates whether to enable or 
            disable 100 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.TogglePhy10BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 10 Base-T
            </summary>
            <remarks>
            Name	                  Description	                      Register
            Disable 10 BASE-T       1 – 10 BASE-T is disabled           PHY0 =REG[240][0]
                                    0 – 10 BASE-T is enabled            PHY1 =REG[241][0]
                                                                        PHY2 =REG[242][0]
                                                                        PHY3 =REG[243][0]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy10BT">Indicates whether to enable or 
            disable 10 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.ToggleResetStatistics(System.Boolean)">
            <summary>
            Requests the FPGA to reset all statistcs counters
            </summary>
            <remarks>
            Address: FC (Hex) = 252 (dec)
            Bit[0]: reset_statistics
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.CopyAllPortSettings">
            <summary>
            Copies the first 5 bits of register 0x90 (144[4:0]) to registers 0xF0 (240[4:0])
            Used to 'refresh/get' the last saved port settings in EEPROM such as:
            enable 10/100/1000 Mbps, prefer master or slave and change master slave status
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteDataToPhy(System.Byte,System.UInt16)">
            <summary>
            Writes new data to the Ethernet PHY at the specified address.        
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteDataToPhyTrigger(System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Provides a positive edge to the FPGA to trigger write for PHY.
            </summary>
            <remarks>
            Address: 247 (dec)
            Bit[0]: trigger PHY write
            verify: true = verify enabled, false verify disable
            timeout: maximum time in ms to wait before considering a fail write.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.VerifyWriteData(System.Byte,System.Int32,System.Boolean,System.Int64)">
            <summary>
            Verifies if the bit value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms..
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="expectedValue"> The expected value of bitNum in regNum (true or false). </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.FactoryDefaultCardConfiguration(System.Int32)">
            <summary>
            Indicates the FPGA to Use Factory Default Configurations
            </summary>
            <remarks>        
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData"/> 
            has not been assigned.</exception>
            <param name="cardMode"> The desired factory default card mode. 1=907E-625M; 2=907E-1G25; 3=907E-2G50</param>        
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.ToString">
            <summary>
            override string ToString
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteDataToFpgaTrigger(System.Byte,System.Int32,System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Provides a positive or negative edge to the FPGA to trigger a write.
            </summary>
            <remarks>
            Address: 247 (dec)
            Bit[0]: trigger PHY write
            verify: true = verify enabled, false verify disable
            timeout: maximum time in ms to wait before considering a fail write.
            </remarks>
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="OneOrZero"> true=One=Positive Edge to FPGA. false=Zero=Negative Edge to FPGA </param>
            <param name="verify"> true=perform a verification of the written data and wait X timeout before to give up. false=Do not perform verification, just assume that the data was written in time. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.VerifyWriteDataBit(System.Byte,System.Int32,System.Boolean,System.Int64)">
            <summary>
            Verifies if the bit value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms..
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="expectedValue"> The expected value of bitNum in regNum (true or false). </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.VerifyWriteData(System.Byte,System.Byte,System.Int64)">
            <summary>
            Verifies if the byte value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms.
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>        
            <param name="expectedValue"> The expected value of the byte in regNum. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E2.TransactionDelay(System.Int64)">
            <summary>
            Adds a delay between transactions for up to the time specified. The 'delay' value is expressed in (long) ms.        
            Typically this method is used after the WriteData method is called.
            </summary>        
            <param name="delay"> Required delay in ms. E.g. 1000 = 1sec.</param>
            <remarks>                
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.IsConsole">
            <summary>
            Gets whether the 907E2 is configured as a Console or Remote.  
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.DipSw1">
            <summary>
            Gets the DIP switch 1 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.DipSw2">
            <summary>
            Gets the DIP switch 2 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.OnboardDipSwitch1">
            <summary>
            Gets the list of onboard SW1 switches status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.OnboardDipSwitch2">
            <summary>
            Gets the list of onboard SW2 switches status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.Sw1SettingControl">
            <summary>
            Gets a list where each element indicates whether an switch (from EEPROM) has been selected to be ON or OFF
            Source: FPGA reg 222
            Applicable to Dip SW1
            1 – Switch ON
            0 – Switch OFF
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.Sw2SettingControl">
            <summary>
            Gets a list where each element indicates whether a switch (from EEPROM) has been selected to be ON or OFF
            Source: FPGA reg 223
            Applicable to Dip SW2
            1 – Switch ON
            0 – Switch OFF
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PreSavedEepromDipSw1">
            <summary>
            Gets the pre-saved status of EEPROM dip switch 1
            Source: FPGA reg 222        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PreSavedEepromDipSw2">
            <summary>
            Gets the pre-saved status of EEPROM dip switch 2
            Source: FPGA reg 223        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.EepromDipSw1">
            <summary>
            Gets the EEPROM DIP switch 1 status
            From FPGA code:
            assign local_registers_in_array[ 57]               = read_serial_number_eeprom_data[559:552];  // Switch 1 settings from EEPROM
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.EepromDipSw2">
            <summary>
            Gets the EEPROM DIP switch 2 status
            From FPGA code:
            assign local_registers_in_array[ 58]               = read_serial_number_eeprom_data[567:560];  // Switch 2 settings from EEPROM
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.EepromDipSwitchChanged">
            <summary> 
            Compares EepromDipSw1 and Sw2 vs Sw1SettingControl and Sw2
            To determine if changes made in the GUI have been saved in EEPROM or not.
            Returns false if there are no changes, true if there are changes
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.ActiveDipSw1">
            <summary>
            Gets the Active (EEPROM vs On-board) DIP switch 1 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.ActiveDipSw2">
            <summary>
            Gets the Active (EEPROM vs On-board) DIP switch 2 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.ExtendedSettingsChanged">
            <summary> 
            Compares the EEPROM Extended Configuration (Termination, Video and Sw Takeover) vs Extended Configuration Settings Pre-EEPROM
            The actual registers under comparison are FPGA regNum=221 dec (selected values) vs regNum=59 dec (values read by FPGA from EEPROM)
            To determine if changes made in the GUI have been saved in EEPROM or not.
            Returns false if there are no changes, true if there are changes
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.SerChTermination">
            <summary>
            Gets the RS485/422 120 ohm termination state saved in EEPROM (returns a list of bool)
            <remarks>
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.SerChTerminationStatus">
            <summary>
            Gets the RS485/422 120 ohm termination state saved in EEPROM (returns a list of strings)
            <remarks>
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.SerChTerminationSelected">
            <summary>
            Gets the RS485/422 120 ohm termination state selected (returns a list of bool)
            <remarks>
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];
            </remarks>
            </summary>       
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.IgnoreVideoClampSelected">
            <summary>
            Gets the Pre-Saved EEPROM ignore video clamp selection status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.IgnoreVideoClampStatus">
            <summary>
            Gets the Saved EEPROM ignore video clamp selection status
            From FPGA code: Acutal value is in bit 1 of FpgaReg 59
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.IgnoreVideoClamp">
            <summary>
            Gets the Saved EEPROM ignore video clamp selection status (returns a bool)
            From FPGA code: Acutal value is in bit 1 of FpgaReg 59
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.HwSwitchTakeover">
            <summary>
            Gets the Hardware Switch Takeover Status
            From Dip SW1 pin 2.
            1 = Use On-board Dip switches configuration based on SW1[2] (SW1 has pins 1 to 8)
            0 = Use switche configuration based on EEPROM. The card config can be loaded from on-board SW1[2] (SW1 has pins 1 to 8) or EEPROM
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.SwitchTakeover">
            <summary>
            Gets the EEPROM Switch Takeover Status
            From FPGA code: Acutal value is in bit 0 of FpgaReg 59
            assign local_registers_in_array[ 59]               = read_serial_number_eeprom_data[575:568];  // Settings for switch takeover, serial data terminations, and video clamps
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.SwitchTakeoverSelected">
            <summary>
            Gets the Selected Switch Takeover Status
            From FPGA code: Acutal value is in bit 0 of FpgaReg 221
            assign switch_takeover                             = read_serial_number_eeprom_data[560];
            assign write_serial_number_eeprom_data[567:560]    = (enable_setting_changes[2])? local_registers_out_array[221] : read_serial_number_eeprom_data[567:560];
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.VideoChannels">
            <summary>
            Gets the list of Video Channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.BackplaneDataChannels">
            <summary>
            Gets the list of backplane Tx/Rx data channel statuses.        
            1 = LED on = Tx/Rx Activity Detected
            0 = LED off = Tx/Rx Activity NOT Detected
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.BackplaneDataChannels2">
            <summary>
            Gets the list of backplane Tx and Rx data channel statuses.        
            assign local_registers_in_array[ 41] = {2'b00,bp_tx_status};
            assign local_registers_in_array[ 42] = {2'b00,bp_rx_status};
            1 = LED on = Activity Detected
            0 = LED off = No Activity Detected        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.OnboardSerialDataChannels">
            <summary>
            Gets the list of onboard serial data channel statuses.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.SerChProgrammableDelayValue">
            <summary>
            Gets the Onboard Serial ata Programmable Delay Values in EEPROM
            <remarks>
            assign local_registers_in_array[145]               = read_serial_number_eeprom_data[527:520];
            assign local_registers_in_array[146]               = read_serial_number_eeprom_data[535:528];
            assign local_registers_in_array[147]               = read_serial_number_eeprom_data[543:536];
            assign local_registers_in_array[148]               = read_serial_number_eeprom_data[551:544];        /// 
            </remarks>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.LinkFault">
            <summary>
            Gets the Link Fault Led indicator.
            Address: 06 (hex)
            Bits[2]
            </summary>        
        </member>
        <!-- Badly formed XML comment ignored for member "P:Focal.Model907.Diagnostics.Models.Fpga907E2.OpticalSpeed" -->
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.LinkLossCounter">
            <summary>
            Gets the Link Loss Counts
            Address: 11 (dec)
            Bits[7:0] 
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.CardConfigSummary">
            <summary>        /// 
            Gets a list where each element indicates a card configuration parameter
            Returns a list of strings
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.SfpStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.SfpStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.SfpStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhyStatus">
            <summary>
            Gets the list of Port statuses.
            </summary>
            <remarks>
            <para>See Micrel datasheet KSZ9021RL/RN October 20009 for PHY register map.</para>
            <para>Note that the 907E2 card provides data for registers all 31 registers 0 to 31
            for the on-board PHY</para>
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.EnetLinkFaultPassThroughSelected">
            <summary>
            Gets the status of Enet Link Fault Pass Through
            1 = Link Fault Pass Through Enabled (Enet link will communicate the far end the status of the local link). 
            0 = Link Fault Pass Through Disabled (Enet link will NOT communicate the far end the status of the local link).        /// 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettingsControlActive">
            <summary>
            Gets a list where each element indicates whether the "Control of PHY Settings"
            of that port is enabled.  Source: FPGA reg 240[5]
            
            1 – Enable control of PHY status from GUI and write settings to EEPROM
            0 – Use settings in EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettingsChangeMasterSlaveActive">
            <summary>
            Gets a list where each element indicates whether the "Change Master / Slave" status
            of that port is enabled.  Source: FPGA reg 240[4]
            
            0 – Enable change to master slave status
            1 – Leave status as is from EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettingsMasterSlaveActive">
            <summary>
            Gets a list where each element indicates whether the "Master" or "Slave" status
            of that port is enabled.  Source: FPGA reg 240[3]
            
            0 – Master
            1 – Slave
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettings1000BTActive">
            <summary>
            Gets a list where each element indicates whether the "1000 BASE-T" 
            of that port is enabled.  Source: FPGA reg 240[2]
            
            0 – 1000 BASE-T is disabled
            1 – 1000 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettings100BTActive">
            <summary>
            Gets a list where each element indicates whether the "100 BASE-T" 
            of that port is enabled.  Source: FPGA reg 240[1]
            
            0 – 100 BASE-T is disabled
            1 – 100 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettings10BTActive">
            <summary>
            Gets a list where each element indicates whether the "10 BASE-T" 
            of that port is enabled. Source: FPGA reg 240[0]
            
            0 – 10 BASE-T is disabled
            1 – 10 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettingsControlActiveE">
            <summary>
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Control of PHY Settings"
            of that port is enabled. (Data read from on-board EEPROM)
            
            0 – Enable control of PHY status from GUI and write settings to EEPROM
            1 – Use settings in EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettingsChangeMasterSlaveActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Change Master / Slave" status
            of that port is enabled.
            
            0 – Enable change to master slave status
            1 – Leave status as is from EEPROM        /// 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettingsMasterSlaveActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Master" or "Slave" status
            of that port is enabled.
            
            0 – Master
            1 – Slave
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettings1000BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "1000 BASE-T" 
            of that port is enabled.
            
            0 – 1000 BASE-T is disabled
            1 – 1000 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettings100BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "100 BASE-T" 
            of that port is enabled.
            
            0 – 100 BASE-T is disabled
            1 – 100 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettings10BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "10 BASE-T" 
            of that port is enabled.
            
            0 – 10 BASE-T is disabled
            1 – 10 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhySettingsChanged">
            <summary> 
            Gets the complete PHY register status 0x90 (144) and 0xF0 (240)
            used to determine if changes made in the GUI have been saved in EEPROM or not.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhyStatisticsPacketLoss">
            <summary> 
            Gets the packet loss count of each port        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.BackplaneEnable">
            <summary> 
            Gets the backplane enable/disable status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.BackplaneRxError">
            <summary> 
            Gets the backplane data receive underflow/overflow erros (Rx error)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.BackplaneTxError">
            <summary> 
            Gets the backplane data transmit underflow/overflow erros (Tx error)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhyPacketDropped">
            <summary> 
            Gets the Packet Dropped LED information
            Address 05 Hex
            Bit [3:0]: packet_dropped_led_n (active low)
            Per copper Ethernet port packet dropped indicator
            Corresponds to LEDs D4,D5,D6,D7
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhyEthernetCuActivityRx">
            <summary> 
            Gets the Ethernet Copper Recive Activity Port information
            Address 04 Hex
            Bit [3:0]: Ethernet Copper Receive Activity Ports [3:0] (active low)        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.PhyEthernetCuActivityTx">
            <summary> 
            Gets the Ethernet Copper Transmit Activity Port information
            Address 04 Hex
            Bit [7:4]: Ethernet Copper Transmit Activity Ports [3:0] (active low)        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.InputVoltage5vOr12vn">
            <summary>
            Gets the card's voltage input configuration
            1 = 5Vin
            0 = 12Vin.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.Voltage12">
            <summary>
            Gets the voltage reading from the 1.2VDC rail on the card. Bytes[0-1].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.Voltage12V">
            <summary>
            Gets the voltage reading from the 12VDC rail on the diagnostics card (V). Bytes[4-5].
            The actual voltage going into the ADC is 12V/5.02 = 2.39V. Vadc=12V/((4.02K+1K)/1K)=2.39V
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.Voltage33">
            <summary>
            Gets the voltage reading from the 3.3VDC rail on card (V). Bytes[2-3].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E2.Voltage5">
            <summary>
            Gets the voltage reading from the 5VDC rail on the card (V). Bytes[6-7].
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Eeprom">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Eeprom.#ctor">
            <summary>
            Constructs a new SFP.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Eeprom.SerialNumberEeprom">
            <summary>
             Gets EEPROM Serial Number. Table M0, Bytes[0-15].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Eeprom.DateCodeEeprom">
            <summary>
             Gets EEPROM Date Code. Table M0, Bytes[16-31].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Eeprom.AssemblyNumberEeprom">
            <summary>
             Gets EEPROM Assembly Number. Table M0, Bytes[32-47].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Eeprom.PcbNumberEeprom">
            <summary>
             Gets EEPROM Pcb Number. Table M0, Bytes[48-63].
             </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Sfp">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp.#ctor">
            <summary>
            Constructs a new SFP.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Sfp.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.Identifier">
            <summary>
             Gets the SFP Identifier. Table A0, Byte[0].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.Wavelength">
            <summary>
             Gets (nm) nominal laser wavelength. Table A0h, Bytes[60-61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.TxBias">
            <summary>
            Gets the Tx Bias Current (mA). Bytes[100-101].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.TxPwr">
            <summary>
            Gets the Tx Output Power (dBm). Bytes[102-103].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.RxPwr">
            <summary>
            Gets Rx Input Power (dBm). Bytes[104-105].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Sfp.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.FpgaId">
            <summary>
            Enumerates the ID's of the various 907 FPGA implementations.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.MediaConverterId">
            <summary>
            Enumerates the IDs of the various 907 Media Converter EEPROM implementations.
            In this case the ID used is the card's assembly number saved in EEPROM.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpMsaAndNonMsaId">
            <summary>
            Enumerates the IDs of the various 907 SfpMsaAndNonMsaId implementations.
            In this case the ID used is the SFP's identification number found in memory A0 byte 0 of the SFP (see your SFP data sheet for details).
            This enum contains a UNIQUE id that consis of two bytes. One is the sfp identifier byte and the other is the connector code byte
            E.g. 0x0307 represents an SFP-MSA that has an LC connector
                 0xIdentifier+ConnectorCode
            For cases in which an SFP has the same ID and Connector Code, the TXVR Code 1 (byte 3, A0) is used
            E.g. 0x828282 is an SFP SDI Video - Dual RX     
                 0x828283 is an SFP Composite Video - Dual RX 
                 0xIdentifier+ConnectorCode+TxvrCode1
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpIdCodes">
            <summary>
            Enumerates Sfp IDs
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpConnectorCodes">
            <summary>
            Enumerates the connector types on an SFP. 
            This may be a problem for SFPs that could have the same Code but different type of connector
            Value Description of Connector
            00h Unknown or unspecified
            01h SC
            02h Fibre Channel Style 1 copper connector
            03h Fibre Channel Style 2 copper connector
            04h BNC/TNC
            05h Fibre Channel coaxial headers
            06h FiberJack
            07h LC
            08h MT-RJ
            09h MU
            0Ah SG
            0Bh Optical pigtail
            0C-1Fh Reserved
            20h HSSDC II
            21h Copper Pigtail
            22h-7Fh Reserved
            80-FFh Vendor specific 
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.OpticalLinkSpeed">
            <summary>
            Enumerates optical link speeds.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.EthernetLinkSpeed">
            <summary>
            Enumerates ethernet link speeds.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.I2cDiagSpeed">
            <summary>
            Enumerates I2C speeds.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.EthernetConfigurationResolution">
            <summary>
            Enumerates duplex modes.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.EthernetDuplexMode">
            <summary>
            Enumerates duplex modes.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.EthernetCrossoverStatus">
            <summary>
            Enumerates ethernet port connection types.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.LinkSide">
            <summary>
            Enumerates the possible types of module stacks.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.LedGroup">
            <summary>
            An enumeration of the LED groups on a diagnostics board.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SerialProtocolMode">
            <summary>
            Enumerates the supported types of serial communication modes.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.AnalogVideoMode">
            <summary>
            Enumerates the supported types of analog video modes.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.GUIReleaseVersion">
            <summary>
            Enumerates the supported GUI release versions.
            A higher number represents higher priority or "access level".
            It generally means that more information is displayed.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.DiagCardFosConfig">
            <summary>
            Represents the Fiber Optic Switch readings from the 907-DIAG-E card.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.#ctor">
            <summary>
            Constructs a new Network configuration.
            </summary>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.cfgNum">
            <summary>
            Configuration byte for FOS card.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.Clone(System.Boolean)">
            <summary>
            Performs either a shallow or a deep copy of the current AdcConfig object.
            </summary>
            <param name="doDeepCopy">Perform a 'deep copy' of the object. 
            (separate copies of each reference field).</param>
            <returns>The cloned object.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.Clone">
            <summary>
            Performs a deep copy of the AdcConfig object.
            </summary>
            <returns>A deep copy of the AdcConfig object.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosPresence">
            <summary>
            Gets whether the FOS card exist in the stack or not. Byte[0], bit 0.
            1 = card exist in stack
            0 = card does not exist in the stack
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosStatus">
            <summary>
            Gets whether a FOS card is connected or disconnected
            1 = card exist in stack (card connected)
            0 = card does not exist in the stack (card disconnected)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosSwPosition">
            <summary>
            Gets the physical position of the toggle switch on the FOS card. Byte[0], bit 1.
            1 = auto - The 907-DIAG-E card has control over the fiber switching.
            0 = manual - The toggle switch on the 907-FOS has control over the fiber switching.
            NOTE: Only valid if the FOS is present (i.e. 907-FOS and 907-DIAG-E are physically connected)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosMode">
            <summary>
            Gets the current switch mode of the FOS. Byte[0], bit 2.
            1 = Auto - the 907-DIAG-E card will automatically select a fiber depending on the receive optical power.
            0 = Force - the 907-DIAG-E card has selected either F1 or F2 based on the user's input from the GUI.
            Manual - the FOS card has control over the fiber switching.
            Card Not Detected - the 907-FOS card is not connected to the 907-DIAG-E.
            NOTE: This status is only valid if the toggle switch is in the "Auto" position
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosF1Selected">
            <summary>
            Gets the status of Fiber 1. Byte[0], bit 3.
            1 = Fiber 1 is selected
            0 = Fiber 1 is not selected
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosF2Selected">
            <summary>
            Gets the status of Fiber 2. Byte[0], bit 4.
            1 = Fiber 2 is active
            0 = Fiber 2 is not active
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosFoLink">
            <summary>
            Gets the fiber link status. Byte[0], bit 5.
            Info from FPGA passed to 907-DIAG-E card and retrived status vis FOS read command.
            1 = Link Up
            0 = Link Down
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosF1Fault">
            <summary>
            Gets the fiber 1 link fault status        
            1 = Fault
            0 = No Fault
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosF2Fault">
            <summary>
            Gets the fiber 2 link fault status        
            1 = Fault
            0 = No Fault
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosF1FaultStatus">
            <summary>
            Gets the fiber 1 link fault string status        
            FosF1Fault = 1 => "Link Fault"
            FosF1Fault = 0 => ""
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosF2FaultStatus">
            <summary>
            Gets the fiber 2 link fault string status        
            FosF2Fault = 1 => "Link Fault"
            FosF2Fault = 0 => ""
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosCounter">
            <summary>
            Gets a counter that represents the number of times that the fiber has been switched automatically between F1 and F2.
            In other words, it counts the number of times there is a loss of signal (LOS) including FPGA SERDES validation.
                LOS explanation:
                    When high, LOS output indicates the received optical power is below the worst-case receiver sensitivity
                    (as defined by the standard in use by the manufacturer of the SFP).
                    Low indicates normal operation.
            This is an 8 bit counter converted to a string. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosAuto">
            <summary>
            Force Fiber 1. Byte[0], bit 1.
            1 = Fiber 1 is selected
            0 = Fiber 1 is not selected
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosForceF1">
            <summary>
            Force Fiber 1. Byte[0], bit 1.
            1 = Fiber 1 is selected
            0 = Fiber 1 is not selected
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosForceF2">
            <summary>
            Force Fiber 2. Byte[0], bit 2.
            1 = Fiber 2 is selected
            0 = Fiber 2 is not selected
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagCardFosConfig.FosResetCount">
            <summary>
            Reset Fiber Switching Counter.
            1 = Reset
            0 = Not Reset
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet">
            <summary>
            Represents a Focal Technologies Model 907 Dual Gigabit Ethernet FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.#ctor">
            <summary>
            Constructs a new 907 Dual GbE FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.ActiveSwitchSettings1">
            <summary>
            Gets the currently active switch 1 setting used by hardware.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.ActiveSwitchSettings2">
            <summary>
            Gets the currently active switch 2 setting used by hardware.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.OpticalLinkSpeed">
            <summary>
            Gets the Optical Link Speed.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.SfpStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.SfpStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.SfpStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.DipSwitch1">
            <summary>
            Gets the DIP switch 1 status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.DipSwitch2">
            <summary>
            Gets the DIP switch 2 status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907DualGigabitEthernet.PortStatus">
            <summary>
            Gets the list of Port statuses.
            </summary>
            <remarks>
            <para>See Marvell doc MV-S100649-00, Rev. H for PHY register map.</para>
            <para>Note that the 907 Dual GbE FPGA provides data for registers 1,2,3,10,15,17,25
            starting at <b>0x90-0x9D for PHY1</b>, and <b>0xA0-0xAD for PHY2</b></para>
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.DiagSlaveCard">
            <summary>
            Represents a Diagnostic Slave card in a 907 system.
            </summary>
            <remarks>
            <para>Up to 4 diagnostic slaves can be added to each stack, and each one uses
            1 of the 4 diagnostic slave channels on the backplane.</para>
            <para>A diagnostic slave has independent optics and therefore has 1 FPGA
            and 1 SFP on board.</para>
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.#ctor(System.String,Focal.Model907.Diagnostics.Models.LinkSide,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig)">
            <summary>
            Constructs a new Diagnostic Slave.
            </summary>
            <remarks>
            A Diagnostic Slave in a 907 system cab have the following configurations:
            1. 1xFPGA, 1xSFP (e.g. 907-GEB2)
            2. 1xSFP (e.g. 907-HDV)
            3. 4xDualSFPs + 1xEEPROM (907-FLEX) 
            </remarks>
            <param name="description">The description of the card.</param>
            <param name="linkSide">The side of the optical link on which the card resides.</param>
            <param name="fpga">The i2c device configuration for the fpga.</param>
            <param name="sfpA0">The i2c device configuration for the A0 SFP device.</param>
            <param name="sfpA2">The i2c device configuration for the A2 SFP device.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.CreateFpga">
            <summary>
            Creates the proper type of Fpga object using the raw data from the
            i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data in the i2c
            device configuration has been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.CreateSfpMsa">
            <summary>
            Creates the proper type of SfpMsaAndNonMsa object using the raw data from the
            i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data in the i2c
            device configuration has been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.CreateSfpNonMsa">
            <summary>
            Creates the proper type of SfpNonMsa object using the raw data from the
            i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data in the i2c
            device configuration has been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.CreateMediaConverter">
            <summary>
            Creates the proper type of MediaConverter object using the raw data from the
            i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data in the i2c
            device configuration has been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.CreateSfp">
            <summary>
            Creates the SFP object using the raw data from the i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data arrays in the SFP 
            i2c device configurations have been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.CreateSfp2">
            <summary>
            Creates the SFP2 object using the raw data from the i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data arrays in the SFP2 
            i2c device configurations have been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.CreateEeprom">
            <summary>
            Creates the EEPROM object using the raw data from the i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data arrays in the EEPROM 
            i2c device configurations have been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.InitDevicesAfterNextRefresh">
            <summary>
            Inidcates that the appropriate factory method to (re)initialize the card
            device types (i.e. the fpga and sfp) should be called after the next 
            refresh of data is received.
            </summary>
            <remarks>
            This method is typically called when the stack configuration
            needs to be determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.RefreshData(System.Boolean)">
            <summary>
            Refreshes data from all on-card devices.
            </summary>
            <returns>
            True if all data was successfully refreshed, False otherwise.
            </returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpNonMsaMemLocation">
            <summary>
            THIS MAY NOT BE USED OR REQUIRED, BUT IT IS HERE JUST IN CASE IS NEEDED IN THE FUTURE
            Gets the current SFP NON-MSA memory location from which the data should be read.
            By default the FPGA read from B2
            </summary>
            <returns>
            0xB2 = Default Non-MSA memory location
            0xC2 = Non-MSA memory location for special SFPs such Ethernet SFPs
            </returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.FpgaI2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device
            is updated, meaning that we have the 'go-ahead' to determine
            the type of FPGA that answered (eg. 907+, 907V, etc) (if we don't already
            know), or to update the fpga's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpA0I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpA2I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpB2I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP2 that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.EepromM0I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of eeprom that answered (if we don't already
            know), or to update the eeprom's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagSlaveCard.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.DiagSlaveCard.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.Description">
            <summary>
            The description of the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.LinkSide">
            <summary>
            The side of the optical link on which the card resides.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.Fpga">
            <summary>
            The Fpga on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpMsaAndNonMsa">
            <summary>
            The SfpMsaAndNonMsa on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.MediaConverter">
            <summary>
            The Media Converter on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.Sfp">
            <summary>
            The SFP optical transceiver on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpMsa">
            <summary>
            The SFP Msa optical transceiver on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.Sfp2">
            <summary>
            The SFP2 optical transceiver on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.Eeprom">
            <summary>
            The EEPROM on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.DetectedCardDescription">
            <summary>
            Gets the description of the detected card type.  
            This property is basically just a wrapper for Fpga.Id. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpIdentifierNum">
            <summary>
            Get the Identifier Value of the SFP
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpIdentifierEnumNum">
            <summary>
            Get the Identifier Enum Value of the SFP
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.FpgaDetected">
            <summary>
            Get whether a supported FPGA has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpMsaDetected">
            <summary>
            Get whether a supported SfpMsa has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpNonMsaDetected">
            <summary>
            Get whether a supported SfpNonMsa has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.MediaConverterDetected">
            <summary>
            Get whether a supported Media Converter has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpDetected">
            <summary>
            Get whether an SFP has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.Sfp2Detected">
            <summary>
            Get whether an SFP2 has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.EepromDetected">
            <summary>
            Get whether an EEPROM has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.SfpOrEepromDetected">
            <summary>
            Get whether an SFP or EEPROM has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            Also, this property is used to 'hide' or 'show' and media converter card with SFPs or just with Serial EEPROM but no SFP.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagSlaveCard.I2CDeviceAddresses">
            <summary>
            Gets a dictionary of the card's I2C device addresses where the key is the
            device address and the value is the device description.        
            </summary> 
            <remarks>
            We expose this property to provide an easy means to enumerate the 
            i2c devices in a 907 system, particularly for custom LED configuration
            on the diagnostic card.
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.FpgaFactory">
            <summary>
            Provides a means to create an Fpga object from a raw data array.
            </summary>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.FpgaFactory.FpgaIDRegNum">
            <summary>
            The byte index in the raw data array at which the FPGA ID can be found.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.FpgaFactory.CreateFpga(System.Byte[])">
            <summary>
            Constructs a new FPGA object using the supplied RawData array.
            </summary>
            <remarks>
            The RawData array should be populated with real data so that the
            ID of the FPGA can be determined and the correct type of FPGA object
            instantiated.
            </remarks>
            <param name="rawData"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.FpgaFactory.CreateFpga(System.Byte[],Focal.Model907.Diagnostics.Models.I2CDeviceConfig)">
            <summary>
            Constructs a new FPGA object using the supplied RawData array.  
            The i2cDeviceConfig reference provides a means for custom methods
            in the fpga object to write data back to the fpga.
            </summary>
            <remarks>
            The RawData array should be populated with real data so that the
            ID of the FPGA can be determined and the correct type of FPGA object
            instantiated.
            </remarks>
            <param name="rawData"></param>
            <param name="i2cDeviceConfig">The parent i2c device instance, used to provide
            a path to a method for writing data back to the FPGA.</param>
            <returns></returns>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.OnboardDipSwitch">
            <summary>
            Encapsulates the status for a single dip switch.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.OnboardDipSwitch.#ctor(System.String)">
            <summary>
            Constructs a new Dip Switch.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.OnboardDipSwitch.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.OnboardDipSwitch.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.OnboardDipSwitch.SwitchName">
            <summary>
            Gets the name of this onboard switch.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.OnboardDipSwitch.SwOn">
            <summary>
            Gets or Sets the flag indicating that the switch is ON
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.OnboardDipSwitch.SwitchStatus">
            <summary>
            Gets or Sets the Dip Switch Status.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.OnboardDipSwitch.DipSwitchStatus">
            <summary>
            Enumerates the supported dip switch modes.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.#ctor">
            <summary>
            Constructs a new SfpDualTxReclockSdiVideo.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.Id">
            <summary>
            Gets the SFP unique ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            NOTE: THIS IS A PLACE HOLER AND IT IS NOT IMPLEMENTED YET
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.Identifier">
            <summary>
             Gets the SFP Identifier. Table A0, Byte[0].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.SfpDescription">
            <summary>
             Gets the SFP Description.
             For now, it will be based on the Sfp Identifier but it could be based in more parameters.
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.SfpConnectorCode">
            <summary>
             Gets the SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.SfpConnectorDescription">
            <summary>
             Gets the SFP Connector Description from SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.ReclockerBypassCh1">
            <summary>
             Gets the SFP Reclocker Bypass for Channel 1.
             Ch1 = Table A2, Byte[120].
             [120][2] = 1=Bypass Reclock, 0= Auto bypass (default)
             Note that when the Bypass input is set to ‘1’, Lock detect will remain low.
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.ReclockerBypassCh2">
            <summary>
             Gets the SFP Reclocker Bypass for Channel 2.
             Ch2 = Table B2, Byte[120].
             [120][2] = 1=Bypass Reclock, 0= Auto bypass (default)
             Note that when the Bypass input is set to ‘1’, Lock detect will remain low.
             </summary>        
        </member>
        <!-- Badly formed XML comment ignored for member "P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.ReclockerBypass" -->
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.ReclockerLockCh1">
            <summary>
             Gets the SFP Reclocker Lock for Channel 1.
             Ch1 = Table A2, Byte[120].
             [120][1] = 1=Reclocker has lock on signal 0= Reclocker has not lock on signal 
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.ReclockerLockCh2">
            <summary>
             Gets the SFP Reclocker Lock for Channel 2.
             Ch2 = Table B2, Byte[120].
             [120][1] = 1=Reclocker has lock on signal 0= Reclocker has not lock on signal 
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.ReclockerRateCh1">
            <summary>
             Gets the SFP Reclocker Rate for Channel 1.
             Ch1 = Table A2, Byte[120][3] = 1=HD, 0=SD
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.ReclockerRateCh2">
            <summary>
             Gets the SFP Reclocker Rate for Channel 2.
             Ch2 = Table B2, Byte[120][3] = 1=HD, 0=SD
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.Wavelength">
            <summary>
             Gets (nm) nominal laser wavelength. Table A0h, Bytes[60-61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualTxReclockSdiVideo.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="T:Focal.Utilities.BlockingQueue`1">
            <summary>
            
            </summary>
            <typeparam name="T"></typeparam>
        </member>
        <member name="M:Focal.Utilities.BlockingQueue`1.Enqueue(`0)">
            <summary>
            
            </summary>
            <param name="item"></param>
        </member>
        <member name="M:Focal.Utilities.BlockingQueue`1.Dequeue">
            <summary>
            
            </summary>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.BlockingQueue`1.TryDequeue(`0@)">
            <summary>
            
            </summary>
            <param name="value"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Utilities.BlockingQueue`1.Close">
            <summary>
            
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907V">
            <summary>
            Represents a Focal Technologies Model 907V FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907V.#ctor">
            <summary>
            Constructs a new 907V FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.DipSwitchSettingsSupported">
            <summary>
            Gets whether the values from the DIP switch properties
            are supported for the current FPGA Revision number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.DipSwitchSettings">
            <summary>
            Gets the raw values for the DIP switches.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.VideoInputConfig">
            <summary>
            Gets the DIP switch video and data mode status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.CompatabilityMode">
            <summary>
            Gets the DIP switch backwards compatibility mode.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.IsDiagnosticMaster">
            <summary>
            Gets whether the card is currently configured as a Diagnostic Master.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.DiagnosticMode">
            <summary>
            Gets the current diagnostic mode configuration.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.OpticsMode">
            <summary>
            Gets the DIP switch Optics mode status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.VideoMode">
            <summary>
            Gets the DIP switch Optics mode status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.VideoChannels">
            <summary>
            Gets the list of Video Channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.SFPStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.SFPStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.SFPStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.LossOfLockCounter">
            <summary>
            Gets the current SERDES Loss of Lock edge counter value.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.BackplaneChannels">
            <summary>
            Gets the list of backplane channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907V.OnboardSerialDataChannels">
            <summary>
            Gets the list of onboard serial data channel statuses.
            Only supported on 907+ Rev A2 and greater.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907Hdm">
            <summary>
            Represents a Focal Technologies Model 907 HDM FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm.#ctor">
            <summary>
            Constructs a new 907 HDM FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.IsConsole">
            <summary>
            Gets whether the HDM is configured as a Console device or
            as a Remote Device.  
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.Serializer">
            <summary>
            Gets the HDM module's video serializer 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.Deserializer">
            <summary>
            Gets the HDM module's video deserializer 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.OnboardSerialDataChannels">
            <summary>
            Gets the list of onboard serial data channel statuses.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.LinkReady">
            <summary>
            Gets the Rx Optical Link LED status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.LinkReadyBackplane">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.NoLinkLed">
            <summary>
            Gets the No Link LED status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.HdVideoLed">
            <summary>
            Gets the HD Video LED status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.UsbPort1Ok">
            <summary>
            Gets the USB Port 1 Ok status (Remote only)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.UsbPort2Ok">
            <summary>
            Gets the USB Port 2 Ok status (both Console and Remote)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.UsbPort3Ok">
            <summary>
            Gets the USB Port 3 Ok status (Remote only)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.UsbPort4Ok">
            <summary>
            Gets the USB Port 4 Ok status (Remote only)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.UsbLinkOk">
            <summary>
            Gets the USB Link Ok status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.SfpStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.SfpStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.SfpStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.Rs485SoftwareTimeoutEnabledChannel2">
            <summary>
            Gets the RS485 software timeout selector for Channel 2.
            Raw Data[0xFB].
            Bit 1 = when asserted, timeout contained in FPGA register FE-FF
            is used as the timeout for RS485 Channel 2.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.Rs485SoftwareTimeoutEnabledChannel1">
            <summary>
            <para>Gets the RS485 software timeout selector for Channel 1.</para>
            <para>Raw Data[0xFB].</para>
            <para>Bit 0 = when asserted, timeout contained in FPGA register FC-FD
            is used as the timeout for RS485 Channel 1.</para>
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.RS485TimeoutChannel1">
            <summary>
            <para>Gets the timeout for RS485 Channel 1.</para>
            <para>Expressed in units of 315.49ns.</para>
            <para>Timeout should equal 10 bit times at the baud rate of the
            RS485 Link to work efficiently.</para> 
            </summary>
            <example>
            <para>115K baud has bit time of 8.49us.</para> 
            <para>10 bit times is 84.9us.</para> 
            <para>Timeout should be 84900/215.49 = 394 = 0x18A</para>
            </example>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm.RS485TimeoutChannel2">
            <summary>
            <para>Gets the timeout for RS485 Channel 2.</para>
            <para>Expressed in units of 315.49ns.</para>
            <para>Timeout should equal 10 bit times at the baud rate of the
            RS485 Link to work efficiently.</para> 
            </summary>
            <example>
            <para>115K baud has bit time of 8.49us.</para>
            <para>10 bit times is 84.9us.</para> 
            <para>Timeout should be 84900/215.49 = 394 = 0x18A</para>
            </example>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Model907">
             <summary>
             Implements the proprietary Model 907 Diagnostics protocol.
             </summary>
             <remarks>
             TODO 
             </remarks>
             <example>
             <para>This example demonstrates how to connect to a Model 907 Diagnostics Card
             using the Focal.Model907.Diagnostics library.</para>    
             <para>Perform the following steps to start retrieving data from a Model 907 
             Diagnostics card:</para>
             <list type="number">
                 <item><p>Create a new Visual Studio project.</p></item>
                 
                 <item><p>Add a reference to the Focal.Model907.Diagnostics.dll library.</p></item>
                 
                 <item><p>Create a new Model907 object:
                     <code>var _model907 = new Model907(IPAddress.Parse("192.168.0.100"), 1000);</code></p></item>
                     
                 <item><p>Subscribe to the various communication status events, if interested:
                     <code>
                         _model907.CommsConnected += (o, x) => Console.WriteLine("Connected...");
                         _model907.CommsDisconnected += (o, x) => Console.WriteLine("Disconnected...");
                         _model907.CommsError += (o, x) => Console.WriteLine("Comms error...");
                         _model907.StackConfigDetermined += (o, x) => Console.WriteLine("Stack Configuration determined...");
                         _model907.AllDataRefreshComplete += (o, x) => Console.WriteLine("All data refreshed...");
                     </code></p></item>
                     
                 <item><p>Start automatic data refresh:
                     <code>_model907.StartDataRefresh();</code></p></item>
                     
                 <item><p>After the 'StackConfigDetermined' event, all detected card types should be 
                 available.</p></item>
                 
                 <item><p>If you have subscribed to the 'AllDataRefreshed' event, you will receive notifications 
                 each time all data has been refreshed from the stack.</p>
                 <para>That said, most objects in the library implement INotifyPropertyChanged,
                 so in many cases it can be easier to bind directly to the property of interest.</para>
                 </item>        
                 
                 <item><p>Examine the lists of DiagnosticMasterCards, DiagnosticSlaveCards, and
                 DiagnosticExpansionCards to see current data for each detected card in the stack.  
                 You will need knowledge of the physical stack configuration if you want design-time
                 access to typed FPGA properties (note the type casts below). If you *don't* have
                 advance knowledge of the stack type, you can, for example, create a collection
                 of user controls that know how to display data for a particular FPGA, then instantiate
                 the relevant control at runtime by calling GetType() on the Fpga property after the
                 library has determined the stack configuration.
                 
                     <code>Console.WriteLine(_model907.DiagMasterCards[0].Sfp.RxPwr.ToString());</code>
                     
                     <code>Console.WriteLine("Video Ch0 Active: {0}", 
            ((Fpga907Plus)_model907.DiagMasterCards[0].Fpga).VideoChannels[0].VideoActive);</code>
                     
                     <code>Console.WriteLine("Dual GbE Port 1 Link Speed: {0}", 
            ((Fpga907DualGigabitEthernet)_model907.DiagMasterCards[0].Fpga).PortStatus[0].LinkSpeed);</code>
                     </p></item>
             </list>
             </example>       
        </member>
        <member name="F:Focal.Model907.Diagnostics.Model907._dataRefreshStartWaitHandle">
            <summary>
            Provides a means to block the data refresh thread until the user enables
            automatic data refresh.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.#ctor">
            <summary>
            Constructs a new Model907 using default TCP connection parameters:
            IP = 192.168.0.100, Port = 8010, Timeout = 1000ms
            </summary>
            <example>
            <code>
            var _model907 = new Model907();
            </code>
            </example>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.#ctor(System.Net.IPAddress,System.Int32)">
            <summary>
            Constructs a new Model907 using the specified TCP connection parameters
            and the default diagnostics card port of 8010.
            </summary>
            <example>        
            <code>
            var _model907 = new Model907(IPAddress.Parse("192.168.0.100"), 1000);
            </code>
            </example>
            <param name="ip">The IP address of the diagnostics card.</param>
            <param name="timeout">The connection timeout (milliseconds).</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.#ctor(System.Net.IPAddress,System.Int32,System.Int32)">
            <summary>
            Constructs a new Model907 using the specified TCP connection parameters. 
            </summary>
            <example>        
            <code>
            var _model907 = new Model907(IPAddress.Parse("192.168.0.100"), 8010, 1000);
            </code>
            </example>
            <param name="ip">The IP address of the diagnostics card.</param>
            <param name="port">The TCP port number used by the diagnostics card.</param>
            <param name="timeout">The connection timeout (milliseconds).</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.#ctor(System.String,System.Int32)">
            <summary>
            Constructs a new Model907 using the specified RS-232 connection parameters.
            <para>NOTE: The serial communications protocol has NOT yet been implemented in 
            the diagnostics firmware.  Calling this constructor ALWAYS throws
            a NotImplementedException.</para>
            </summary>
            <remarks>
            <para>The current revision (0x24) of the Model 907 firmware provides a 
            menu-based interface via the serial port.</para>
            <para>We may consider modifying
            future revisions to use the same byte-based protocol as we use with
            TCP communications.</para>
            </remarks>
            <example>
            <code>
            var _model907 = new Model907("COM1", 1000);
            </code> 
            </example>
            <exception cref="T:System.NotImplementedException"></exception>
            <param name="serialPortName">The name of the serial port to connect to.</param>
            <param name="timeout">The connection timeout (milliseconds).</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.#ctor(Focal.Model907.Diagnostics.Communications.ICommunications)">
            <summary>
            Constructs a new Model907 using the specified communications manager.
            </summary>
            <remarks>
            <para>The current revision (v24) of the Model 907 Diagnostics microcontroller 
            firmware supports TCP communications only.</para> 
            <para>Serial port and USB communications may be added in the future.</para>
            </remarks>
            <example>        
            <code>
            var myCommsManager = new TcpCommunications(IPAddress.Parse("192.168.0.100"), 8010, 1000);
            var _model907 = new Model907(myCommsManager);
            </code>
            </example>
            <param name="commsManager">The ICommunications object used to send and 
            receive data from the diagnostics card.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.InitDiagMasterCards">
            <summary>
            Initializes the list of diagnostic master cards.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.InitDiagExpansionCards">
            <summary>
            Initializes the list of diagnostic expansion cards.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.InitDiagSlaveCards">
            <summary>
            Initializes the list of diagnostic slave cards.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.InitDiagFlexCards">
            <summary>
            Initializes the list of I2C devices on a 907-FLEX card.
            I2C devices are 4xSFPs + 1xEEPROM
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.InitDiagCard">
            <summary>
            Initializes the diagnostic card onboard data.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.ReadI2CData(System.Byte,System.Byte,System.UInt16,System.Byte[]@)">
            <summary>
            Requests I2C data from the specified I2C device.
            </summary>
            <remarks>
            The original 907 diagnostics firmware had a 100-byte buffer limitation,
            so to maintain compatibility we must make multiple requests for any
            request larger than 95 bytes (there are 5 header + footer bytes).        
            </remarks>
            <param name="address">The I2C address from which to retrieve data.</param>
            <param name="startByteIndex">The byte offset from which to start data retrieval.</param>
            <param name="numBytes">The number of bytes to retrieve.</param>
            <param name="i2cData">The byte array to which the retrieved data will be assigned.</param>
            <returns>True if the command succeeded, False otherwise.</returns>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.ExtendedWriteI2CData(System.Byte,System.Byte,System.Byte[],System.Byte[])">
            <summary>
            Writes the supplied data array to the specified I2C device starting at the specified address.
            </summary>
            <param name="address">The I2C address to which to retrieve data. E.g. 0x56</param>                        
            <param name="startByteIndex">The byte index on the device from which to start the write.</param>
            <param name="muxNumAddressCtrl">The I2C address and control of mux#N. E.g. Mux#1_I2CAddres, Mux#1_ControlRegister, Mux#2_I2CAddres, Mux#2_ControlRegister -> 0x73, 0x01, 0x70, 0x09 </param>                
            <param name="dataToWrite">The data to write. E.g. 0x40</param>
            <returns>True if the command succeeded, False otherwise.</returns>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.ExtendedNoIntAddressReadI2CData(System.Byte,System.UInt16,System.Byte[],System.Byte[]@)">
            <summary>
            Requests I2C data from the specified I2C device using the "Extended I2C Read w/o I2C Internal Address Command"
            In most cases, this command requires the use of the "Extended I2C Write w/o I2C Internal Address Command" first.
            Notes:
            1. This command does not include a startByteIndex. The startByteIndex is set byte the "Extended I2C Write w/o I2C Internal Address Command"
            2. Although this read command specifies the numBytes to retrieve, the actual FW reads one byte at the time.
            3. This command is only supported on 907-DIAG-E cards with FW ver 26 or above.
            4. This command is intended to be used to read diag info from a PHY that has special read requirements. E.g. the PHY in an Ethernet SFP used in the 907-FLEX
            </summary>
            <example>
            Usage example: Read PHY of a copper SFP found in a 907-FLEX installed in SFP1 slot.
                              The PHY I2C Address is 0x56 (AC when lower bit is 0)
                              Main Mux on DIAG-E is 0x73. The ctrl reg value to access the main BP is 0x01 (mux select main BP)
                              Main mux address on FLEX is 0x70. The ctrl reg value to access SFP1 slot is 0x09 (mux select SFP1)
                              i2cData contains the diagnostics information from the PHY (address 0x56)
                              
                              byte i2cDeviceAddress = 0x56;            
                              byte [] muxNumAddressCtrl = { 0x73, 0x01, 0x70, 0x0A };            
                              byte [] outData;
                              byte [] dataToWrite = {0x00};
                              ushort numBytesToRead = 128;
                              bool writeResult = ExtendedNoIntAddressWriteI2CData(i2cDeviceAddress, muxNumAddressCtrl, dataToWrite);
                              bool readResult = ExtendedNoIntAddressReadI2CData(i2cDeviceAddress, numBytesToRead, muxNumAddressCtrl, out outData);
            </example>
            <remarks>
            The original 907 diagnostics firmware had a 100-byte buffer limitation,
            so to maintain compatibility we must make multiple requests for any
            request larger than 95 bytes (there are 5 header + footer bytes).        
            </remarks>        
            <param name="address">The I2C address from which to retrieve data. E.g. 0x56</param>        
            <param name="numBytes">The number of bytes to retrieve. E.g. 128</param>        
            <param name="muxNumAddressCtrl">The I2C address and control of mux#N. E.g. Mux#1_I2CAddres, Mux#1_ControlRegister, Mux#2_I2CAddres, Mux#2_ControlRegister -> 0x73, 0x01, 0x70, 0x09 </param>
            <param name="i2cData">The byte array to which the retrieved data will be assigned.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.ExtendedNoIntAddressWriteI2CData(System.Byte,System.Byte[],System.Byte[])">
            <summary>
            Writes the supplied data array to the specified I2C device starting at address.
            Typically, used to specify a read start address.
            This command is typically followed by "ExtendedNoIntAddressReadI2CData"
            </summary>
            <param name="address">The I2C address to which to retrieve data. E.g. 0x56</param>                        
            <param name="muxNumAddressCtrl">The I2C address and control of mux#N. E.g. Mux#1_I2CAddres, Mux#1_ControlRegister, Mux#2_I2CAddres, Mux#2_ControlRegister -> 0x73, 0x01, 0x70, 0x09 </param>                
            <param name="dataToWrite">The data to write. E.g. 0x00</param>
            <returns>True if the command succeeded, False otherwise.</returns>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.ExtendedNoIntAddressWriteReadI2CData(System.Byte,System.UInt16,System.Byte[],System.Byte[],System.Byte[]@)">
            <summary>
            Requests I2C data from the specified I2C device using the "Extended I2C Read w/o I2C Internal Address Command"
            This commad implements the "Extended I2C Write w/o I2C Internal Address Command" first.
            Notes:
            1. This command does not include a startByteIndex. The startByteIndex is set byte the "Extended I2C Write w/o I2C Internal Address Command"
            2. Although this read command specifies the numBytes to retrieve, the actual FW reads one byte at the time.
            3. This command is only supported on 907-DIAG-E cards with FW ver 26 or above.
            4. This command is intended to be used to read diag info from a PHY that has special read requirements. E.g. the PHY in an Ethernet SFP used in the 907-FLEX
            </summary>
            <example>
            Usage example: Read PHY of a copper SFP found in a 907-FLEX installed in SFP1 slot.
                              The PHY I2C Address is 0x56 (AC when lower bit is 0)
                              Main Mux on DIAG-E is 0x73. The ctrl reg value to access the main BP is 0x01 (mux select main BP)
                              Main mux address on FLEX is 0x70. The ctrl reg value to access SFP1 slot is 0x09 (mux select SFP1)
                              i2cData contains the diagnostics information from the PHY (address 0x56)
                              
                              byte i2cDeviceAddress = 0x56;
                              byte[] muxNumAddressCtrl = { 0x73, 0x01, 0x70, 0x0A };
                              byte[] outData;
                              byte[] dataToWrite = { 0x00 };
                              ushort numBytesToRead = 128;
                              bool result = ExtendedNoIntAddressWriteReadI2CData(i2cDeviceAddress, numBytesToRead, muxNumAddressCtrl, dataToWrite, out outData);        
            </example>       
            <param name="address">The I2C address from which to retrieve data. E.g. 0x56</param>        
            <param name="numBytes">The number of bytes to retrieve. E.g. 128</param>        
            <param name="muxNumAddressCtrl">The I2C address and control of mux#N. E.g. Mux#1_I2CAddres, Mux#1_ControlRegister, Mux#2_I2CAddres, Mux#2_ControlRegister -> 0x73, 0x01, 0x70, 0x09 </param>
            <param name="dataToWrite">The data to write. E.g. 0x00</param>
            <param name="i2cData">The byte array to which the retrieved data will be assigned.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.GenericReadI2CData(System.UInt16,System.Byte,System.Byte,System.UInt16,System.Byte[],System.Byte[],System.Byte[]@)">
            <summary>
            Requests I2C data from the specified I2C device using the available read commands
            </summary>        
            <param name="diagCommandOption">The command option to be used to perform the read command. E.g. 1=ReadI2CDataDelegate; 2=ExtendedNoIntAddressWriteReadI2CData</param>        
            <param name="addressRead">The I2C address from which to retrieve data. E.g. 0x28</param>        
            <param name="startByteRead">The byte offset from which to start data retrieval.</param>
            <param name="numBytesRead">The number of bytes to retrieve. E.g. 128</param>        
            <param name="muxNumAddressCtrl">The I2C address and control of mux#N. E.g. Mux#1_I2CAddres, Mux#1_ControlRegister, Mux#2_I2CAddres, Mux#2_ControlRegister -> 0x73, 0x01, 0x70, 0x09 </param>
            <param name="dataToWriteRead">The data to write before reading (typically this is an index selector, similar to startByteRead). E.g. 0x00</param>
            <param name="i2cData">The byte array to which the retrieved data will be assigned.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.ReadI2CDataDeviceNum(System.Byte,System.Byte,System.UInt16,System.Byte,System.Byte[]@)">
            <summary>
            Requests I2C data from the specified I2C device.
            </summary>
            <remarks>
            The original 907 diagnostics firmware had a 100-byte buffer limitation,
            so to maintain compatibility we must make multiple requests for any
            request larger than 95 bytes (there are 5 header + footer bytes).        
            </remarks>        
            <param name="address">The I2C address from which to retrieve data.</param>
            <param name="startByteIndex">The byte offset from which to start data retrieval.</param>
            <param name="numBytes">The number of bytes to retrieve.</param>
            <param name="i2CDeviceNum">The value that needs to be written to the MUX on the Flex card in order to select the proper I2C line. E.g. byte mainMuxSfp1 = 0x09 = mainMuxI2CDevice = SFP1</param>
            <param name="i2cData">The byte array to which the retrieved data will be assigned.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.WriteI2CData(System.Byte,System.Byte,System.Byte[])">
            <summary>
            Writes the supplied data array to the specified I2C device starting
            at the specified byte offset on the device.
            </summary>
            <param name="address">The I2C device address.</param>
            <param name="startByteIndex">The byte index on the device from which to start the write.</param>
            <param name="dataToWrite">The data to write.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardAdcData(System.Byte[]@)">
            <summary>
            Requests analog voltage readings from the diagnostics card.
            </summary>
            <returns>True if the ADC data was successfully retrieved,
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardFosData(System.Byte[]@)">
            <summary>
            Requests the status of the 907 Fiber Optic Switch Card from the diagnostics card.
            </summary>
            <returns>True if the FOS data was successfully retrieved,
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardSystemConfig(System.Byte[]@)">
            <summary>
            Requests the status of the 907-DIAG-E configuration.
            This is typically used to determine whether a diagnostics card is configured to handle fiber optic switching.
            ExtendedI2CRead command is only valid when using 907-DIAG-E card with FW ver 26 and above (except FW ver 128 which was a custom version of the card to support the FOS)
            
            response byte
            reg17[0]: 1=FOS disabled (default config); 0=FOS enabled (default config)        ///             
            reg17[1]: 1=400 Kbps I2C diagnostics speed (default config); 0=100 kbps I2C diag speed.
            </summary>
            <returns>True if the 'system configuration' data was successfully retrieved,
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.WriteDiagCardFosConfig(Focal.Model907.Diagnostics.Models.DiagCardFosConfig)">
            <summary>
            Writes a fiber optic switch configuration to the 907-DIAG-E.
            </summary>
            
            <param name="fosConfig">The fiber optic switch configuration to write to the
            diagonstics card.</param>
            <returns>True if the command succeeds, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.SaveDiagCardFosConfig">
            <summary>
            Saves the FOS configuration parameters to the diagnostics card.         
            </summary>
            <remarks>
            This method is supplied to <see cref="T:Focal.Model907.Diagnostics.Models.DiagCardOnboard"/> as 
            the delegate used to save a modified FOS config. 
            </remarks>
            <returns>True if all the FOS parameters were successfully written,
            False otherwise.</returns>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardFwVersion(System.Byte[]@)">
            <summary>
            Requests the current Firmware Revision number from the diagnostics card.
            </summary>
            <returns>True if the command succeeds, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardSerialEeprom(System.Byte[]@)">
            <summary>
            Requests the Serial EEPROM data from the diagnostics card. (128 bytes)
            </summary>
            <returns>True if the command succeeds, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardNetConfig(System.Byte[]@)">
            <summary>
            Requests the current Network Configuration parameters from the diagnostics card.
            </summary>
            <returns>True if the command succeeds, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.WriteDiagCardNetConfig(Focal.Model907.Diagnostics.Models.DiagCardNetConfig)">
            <summary>
            Saves the network configuration parameters to the diagnostics card, 
            where they are stored in EEPROM.
            </summary>
            <remarks>
            <para>In practice, because of the way the firmware on the diagnostics board
            is written (at least with v24 and below), this command will <b>ALWAYS FAIL
            when the new IP address is different than the current IP address.</b></para>
            <para>This is because the diagnostics card updates its IP *immediately*, and so the 
            response will never be received.</para>
            <para>If the IP update is successful, however, the comms manager will raise
            a disconnected (or error) event the next time data is auto-refreshed  
            and the user will need to make a new connection to the new IP address.
            (if autoconnect is disabled).</para>
            </remarks>
            <param name="netConfig">The network configuration to write to the
            diagonstics card.</param>
            <returns>True if the command succeeds, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.SaveDiagCardNetConfig">
            <summary>
            Saves the network configuration parameters to the diagnostics card, 
            where they are stored in EEPROM.
            </summary>
            <remarks>
            This method is supplied to <see cref="T:Focal.Model907.Diagnostics.Models.DiagCardOnboard"/> as 
            the delegate used to save a modified network config. 
            <para>TODO: perhaps this method should take the network config as a 
            parameter rather than accessing it directly.</para>
            </remarks>
            <returns>True if all the network parameters were successfully written,
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.WriteDiagCardSystemConfig(Focal.Model907.Diagnostics.Models.DiagCardSystemConfig)">
            <summary>
            Writes the system configuration parameters to the diagnostics card, 
            where they are stored in EEPROM.
            </summary>
            <param name="systemConfig">The system configuration to write to the
            diagonstics card.</param>
            <returns>True if the command succeeds, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.SaveDiagCardSystemConfig">
            <summary>
            Calls the write method to save the system configuration parameters to the diagnostics card, 
            where they are stored in EEPROM.
            </summary>
            <remarks>
            This method is supplied to <see cref="T:Focal.Model907.Diagnostics.Models.DiagCardOnboard"/> as 
            the delegate used to save a modified network config. 
            </remarks>
            <returns>True if all the system parameters were successfully written,
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.RequestDiagCardLedConfig(Focal.Model907.Diagnostics.Models.LedGroup,Focal.Model907.Diagnostics.Models.DiagCardLedConfig)">
            <summary>
            Requests the current LED configurations for the specified LED Group
            from the diagnostics card.
            </summary>
            <param name="ledGroup">The group of LEDs for which to retrieve the
            current configuration (onboard or header).</param>
            <param name="ledConfig">The LED configuration to update with the 
            retrieved data.</param>
            <returns>True if the command succeeds, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.WriteDiagCardLedConfig(Focal.Model907.Diagnostics.Models.LedGroup,Focal.Model907.Diagnostics.Models.DiagCardLedConfig)">
            <summary>
            Writes the specified LED configuration to the diagnostics card, 
            where it is saved in non-volatile storage (eeprom).
            </summary>
            <param name="ledGroup">The LedGroup to which the led configuration belongs.</param>
            <param name="ledConfig">The Led Configuration to send to the diagnostics card.</param>
            <returns>True if the command succeeds, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.SaveDiagCardLedConfigs">
            <summary>
            Writes all Diagnostic Card LED configurations to the card, where
            they are stored in EEPROM.
            </summary>
            <remarks>
            This method is supplied to <see cref="T:Focal.Model907.Diagnostics.Models.DiagCardOnboard"/> as 
            the delegate used to save modified LED configs.
            <para>TODO: perhaps this method should take the led configs as a 
            parameter rather than accessing each directly.</para>
            </remarks>
            <returns>True if all configurations were successfully written,
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.GetUniqueMessageID">
            <summary>
            Gets a unique id to be associated with a message sent to the diagnostics card.        
            </summary>
            <remarks>
            Starts at 0, increments sequentially to 255 and then rolls back to 0.
            </remarks> 
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.ChangeI2CAdress907FlexMain(System.Byte)">
            <summary>
            Change the read I2C address of a 907-FLEX configured in stand-alone mode. I.e. FLEX using Main Backplane line
            </summary>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.ChangeDefaultCardConfigIfRequired">
            <summary>
            Change the default read I2C address (if requried) of a 907 motherboard that gets diagnostics of a 907-FLEX.
            The 907-FLEX is configured to use AUX1-4 Backplane lines.
            E.g. Change the default FPGA target read address 0xB2 to 0xAC on AUX2. 0xAC is the I2C address of a Gbe SFP used on the 907-FLEX.
            </summary>
            <returns>True if a change was made, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.ChangeFpgaAuxReadTarget(System.UInt16,Focal.Model907.Diagnostics.Models.LinkSide,System.Byte)">
            <summary>
            Change the default FPGA AUX read I2C address target if the motherboard supports this function
            Receives the AUX line number that needs to be changed
            </summary>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.RefreshAllI2CData">
            <summary>
            Refreshes all I2C data from the Diagnostics board.
            </summary>
            <remarks>
            Refreshes data from ALL onboard I2C devices the first time called after
            communications have been established, and only from devices with 
            detected FPGAs or SFPs after data has been refreshed the first time 
            (ie. the stack configuration has been determined).
            </remarks>
            <returns>True if data is successfully retrieved from all I2C devices,
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.RefreshAllDiagCardOnboardData">
            <summary>
            Refreshes all 'onboard' diagnostics card data.
            </summary>
            <returns>True if all of the onboard diagnostics data was successfully retrieved,
            False otherwise.</returns>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.RefreshAllData">
            <summary>
            Refreshes all data from the diagnostics card.
            </summary>
            <remarks>
            Typically it is not necessary to manually refresh data if
            <see cref="P:Focal.Model907.Diagnostics.Model907.IsAutoDataRefreshEnabled"/> is enabled.  
            </remarks>
            <returns>True if all data was refreshed successfully,
            False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.AutoDataRefresh">
            <summary>
            Continually refreshes all diagnostic data every DataRefreshInterval, 
            if data refresh is enabled.      
            </summary>
            <remarks>
            This method is executed in a separate thread (<see cref="F:Focal.Model907.Diagnostics.Model907._dataRefreshThread"/>)
            that is created and started upon construction.  
            The thread is blocked with an EventWaitHandle until auto data refresh 
            is manually enabled by calling <see cref="M:Focal.Model907.Diagnostics.Model907.StartDataRefresh"/>.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.StartDataRefresh">
            <summary>
            Starts automatic data refresh from the diagnostics card.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.StopDataRefresh">
            <summary>
            Stops automatic data refresh.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.ResetConnection">
            <summary>
            Stops automatic data refresh and closes the communications channel
            to the diagnostics card.
            </summary>
            <remarks>
            This method can be used to reset the TCP port on the PC used to 
            communicate with the diagnostics card.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.RefreshStackConfiguration">
            <summary>
            Requests that the stack configuration be (re)determined the next
            time card data is refreshed.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.OnStackConfigDetermined">
            <summary>
            Raised after all data has been refreshed for the first time.  
            See <see cref="E:Focal.Model907.Diagnostics.Model907.StackConfigDetermined"/> for more details.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.OnAllDataRefreshComplete">
            <summary>
            Raised each time all data has been refreshed.
            See <see cref="E:Focal.Model907.Diagnostics.Model907.AllDataRefreshComplete"/> for more details.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Model907.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Model907.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Model907.StackConfigDetermined">
            <summary>
            Raised after all data has been refreshed for the first time.
            That is, enough data has been retrieved to determine the type of 
            all of the FPGA and SFP objects and therefore which cards are 
            present in the stack.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Model907.AllDataRefreshComplete">
            <summary>
            Raised each time all data has been refreshed from the diagnostics card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Model907.DataRefreshInterval">
            <summary>
            Gets or Sets the data refresh interval (milliseconds).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Model907.IsAutoDataRefreshEnabled">
            <summary>
            Gets whether Auto Data Refresh has been enabled.
            </summary>
            <remarks>
            Auto Data Refresh can be enabled by calling <see cref="M:Focal.Model907.Diagnostics.Model907.StartDataRefresh"/>
            and disabled by calling <see cref="M:Focal.Model907.Diagnostics.Model907.StopDataRefresh"/>       
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Model907.IsStackConfigDetermined">
            <summary>
            Gets whether the stack configuration has been determined.
            (ie. all data has been refreshed at least once, which allows us to
            instantiate the correct types for all detected FPGA and SFP devices).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Model907.DiagCardOnboardData">
            <summary>
            Gets the object containing data retrieved from the devices onboard
            the actual diagnostics card. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Model907.DiagMasterCards">
            <summary>
            Gets the list of Diagnostic Master devices.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Model907.DiagSlaveCards">
            <summary>
            Gets the list of Diagnostic Slave devices.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Model907.DiagFlexCards">
            <summary>
            Gets the list of Diagnostic Flex devices.        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Model907.DiagExpansionCards">
            <summary>
            Gets the list of Diagnostic Expansion Card devices.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Model907.CommsConnected">
            <summary>
            Raised when communications to the module have been established.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Model907.CommsDisconnected">
            <summary>
            Raised when communications to the module have been disconnected.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Model907.CommsError">
            <summary>
            Raised when an error related to the physical communications
            interface is encountered.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Model907.TransferStarted">
            <summary>
            Raised when a command transfer to the module is initiated.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Model907.TransferComplete">
            <summary>
            Raised after a command transfer to the module is complete.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Model907.CommandSent">
            <summary>
            Raised after command bytes have been sent to the module.
            </summary>
        </member>
        <member name="E:Focal.Model907.Diagnostics.Model907.CommandResponseReceived">
            <summary>
            Raised after the response bytes for a previously sent command have 
            been received.
            </summary> 
        </member>
        <member name="E:Focal.Model907.Diagnostics.Model907.CommandSendFailed">
            <summary>
            Raised when the requested command cannot be sent.
            </summary>  
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907Hdm2">
            <summary>
            Represents a Focal Technologies Model 907 HDM2 FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.#ctor">
            <summary>
            Constructs a new 907 HDM2 FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.SelectDeserializerInputVideoChannel(System.Boolean)">
            <summary>
            Sets the input video channel on the deserializer.
            </summary>
            <remarks>
            RawData[248], bit 0: [0=ch1, 1=ch2]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.WriteData"/> 
            has not been assigned.</exception>
            <param name="selectCh1">
            True - Indicates that channel 1 should be selected as the input.  
            False - Indicates that channel 2 should be selected as the input.</param>
            <returns></returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.VideoChannelsSerializer">
            <summary>
            Gets the list of Video Channel status for the Serializer.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.VideoChannelsDeserializer">
            <summary>
            Gets the list of Video Channel status for the Deserializer.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.DeserializerVideoChannelSelect">
            <summary>
            Gets the current input video channel selection for the Deserializer. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.DipSwitchSettings">
            <summary>
            Gets the currently active dip switch settings (1 = ON, 0 = OFF)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.IsDiagnosticMaster">
            <summary>
            Gets whether the card is currently configured as a Diagnostic Master.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.DiagnosticMode">
            <summary>
            Gets the current diagnostic mode configuration.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.IsConsole">
            <summary>
            Gets whether the HDM2 is configured as a Console device or
            as a Remote Device.  
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.BackplaneChannels">
            <summary>
            Gets the list of backplane channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2.OnboardSerialDataChannels">
            <summary>
            Gets the list of onboard serial data channel statuses.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode">
            <summary>
            Represents a Focal Technologies Model 907 HDM2 (Dual Mode) FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.#ctor">
            <summary>
            Constructs a new 907 HDM2 FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.SetVideoQualityMode(Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.HdmVideoQualityMode)">
            <summary>
            Sets video quality setting for Ch1 and Ch2 on the HDM2 Dual Mode
            module.
            </summary>
            <remarks>
            RawData[248][3:1]. 
            000 = balanced quality, 9-bit 4:1:1 on both channels
            001 = Channel 1 high quality (9-bit 4:2:2); channel 2 low quality (6-bit 4:1:1)
            111 = Channel 2 high quality (9-bit 4:2:2); channel 1 low quality (6-bit 4:1:1)
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="qualityMode">The quality setting to write to the FPGA.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.ToggleVideoQualityModeDisplay(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to display the current video mode onscreen.
            </summary>
            <remarks>
            248[4] = Display video quality for channel 1 (0 = off, 1 = on)
            248[5] = Display video quality for channel 2 (0 = off, 1 = on)
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="chanNum">The channel number for which to toggle the 
            onscreen quality display.</param>
            <param name="enableDisplay">Indicates whether to turn the quality
            display ON or OFF.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.TogglePixelAveraging(Focal.Model907.Diagnostics.Models.LinkSide,System.Boolean)">
            <summary>
            Requests the FPGA to turn on or off pixel averaging for the 
            specified channel.
            </summary>
            <remarks>
            register[248][bit-6] = MUX_PIXEL_AVERAGING
            register[248][bit-7] = DEMUX_PIXEL_AVERAGING
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="linkSide">The link side for which to toggle pixel averaging.</param>
            <param name="enableAveraging">Indicates whether to turn pixel averaging
            ON or OFF for the specified link side.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.ToggleTestPatternGeneration(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable test pattern generation.
            </summary>
            <remarks>
            assign test_display_format[CH1]                    = local_registers_out_array[249][5];    // DISPLAY the format of the video 
            assign generate_test_pattern[CH1]                  = local_registers_out_array[249][4];    // Activate the test pattern
            assign test_format[CH1]                            = local_registers_out_array[249][3:0];  // Set the test pattern format (4-bits) 
            
            assign test_display_format[CH2]                    = local_registers_out_array[250][5];
            assign generate_test_pattern[CH2]                  = local_registers_out_array[250][4];
            assign test_format[CH2]                            = local_registers_out_array[250][3:0];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="chanNum">The channel number for which to enable or 
            disable test pattern generation.</param>
            <param name="enableTestPattern">Indicates whether to enable or 
            disable test pattern generation for the specified channel.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.ToggleTestPatternFormatDisplay(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable onscreen display of the 
            format of the generated test pattern.
            </summary>
            <remarks>
            assign test_display_format[CH1]                    = local_registers_out_array[249][5];    // DISPLAY the format of the video 
            assign generate_test_pattern[CH1]                  = local_registers_out_array[249][4];    // Activate the test pattern
            assign test_format[CH1]                            = local_registers_out_array[249][3:0];  // Set the test pattern format (4-bits) 
            
            assign test_display_format[CH2]                    = local_registers_out_array[250][5];
            assign generate_test_pattern[CH2]                  = local_registers_out_array[250][4];
            assign test_format[CH2]                            = local_registers_out_array[250][3:0];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="chanNum">The channel number for which to enable or 
            disable test pattern format display.</param>
            <param name="enableFormatDisplay">Indicates whether to enable or 
            disable test pattern format display for the specified channel.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.AssignTestPatternFormat(System.Int32,Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.HdmTestPatternFormat)">
            <summary>
            Requests the FPGA to assign the specified test pattern for
            the specified channel.  Note that the test pattern must be manually
            enabled by calling <see cref="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.ToggleTestPatternGeneration(System.Int32,System.Boolean)"/>.
            </summary>
            <remarks>
            assign test_display_format[CH1]                    = local_registers_out_array[249][5];    // DISPLAY the format of the video 
            assign generate_test_pattern[CH1]                  = local_registers_out_array[249][4];    // Activate the test pattern
            assign test_format[CH1]                            = local_registers_out_array[249][3:0];  // Set the test pattern format (4-bits) 
            
            assign test_display_format[CH2]                    = local_registers_out_array[250][5];
            assign generate_test_pattern[CH2]                  = local_registers_out_array[250][4];
            assign test_format[CH2]                            = local_registers_out_array[250][3:0];
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="chanNum">The channel number for which to assign the 
            specified test pattern.</param>
            <param name="format">The test pattern format to assign.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.ToggleOnBoardSerDataChanges(System.Boolean)">
            <summary>
            New code added on 07_11_2011
            Requests the FPGA to enable or disable on-board serial data changes
            </summary>
            <remarks>
            enable_ob_sd_changes[3]       = local_registers_out_array[244][3]; // write reg 243 to EEPROM
            enable_ob_sd_changes[2]       = local_registers_out_array[244][2]; // write reg 242 to EEPROM
            enable_ob_sd_changes[1]       = local_registers_out_array[244][1]; // write reg 241 to EEPROM
            enable_ob_sd_changes[0]       = local_registers_out_array[244][0]; // write reg 240 to EEPROM 
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="enableOnBoardSerDataChanges">Indicates whether to enable or 
            disable the on-board serial data for the specified serial channel.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.SetVideoQualityMode2(Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.HdmVideoQualityMode)">
            <summary>
            Sets video quality setting for Ch1 and Ch2 on the HDM2 Dual Mode
            module.
            </summary>
            <remarks>
            RawData[248][3:1]. 
            000 = balanced quality, 9-bit 4:1:1 on both channels
            001 = Channel 1 high quality (9-bit 4:2:2); channel 2 low quality (6-bit 4:1:1)
            111 = Channel 2 high quality (9-bit 4:2:2); channel 1 low quality (6-bit 4:1:1)
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="qualityMode">The quality setting to write to the FPGA.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.ToggleVideoQualityModeDisplay2(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to display the current video mode onscreen.
            </summary>
            <remarks>
            248[4] = Display video quality for channel 1 (0 = off, 1 = on)
            248[5] = Display video quality for channel 2 (0 = off, 1 = on)
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="chanNum">The channel number for which to toggle the 
            onscreen quality display.</param>
            <param name="enableDisplay">Indicates whether to turn the quality
            display ON or OFF.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.TogglePixelAveraging2(Focal.Model907.Diagnostics.Models.LinkSide,System.Boolean)">
            <summary>
            Requests the FPGA to turn on or off pixel averaging for the 
            specified channel.
            </summary>
            <remarks>
            register[248][bit-6] = MUX_PIXEL_AVERAGING
            register[248][bit-7] = DEMUX_PIXEL_AVERAGING
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="linkSide">The link side for which to toggle pixel averaging.</param>
            <param name="enableAveraging">Indicates whether to turn pixel averaging
            ON or OFF for the specified link side.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.TriggerSaveConfigToEeprom(Focal.Model907.Diagnostics.Models.LinkSide,System.Boolean)">
            <summary>
            Requests the FPGA to save the current video settings in EEPROM
            </summary>
            <remarks>
            register[247][bit-0] = enable the settings stored in register[248] to be saved to EEPROM
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="linkSide">The link side for which to toggle pixel averaging.</param>
            <param name="saveConfig"> a logic 1 saves the current video settings
            and a logic 0 does not save the settings.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.VerifyAndWriteData(System.Byte,System.Int32,System.Boolean)">
            <summary>
            Verify that the requested change has been made as expected,
            otherwise try one more time before returning a 'failed' command.
            </summary>
            <remarks>
            
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="regNum">The register number to verify.</param>
            <param name="bitNum"> The bit number in the specified register to verify.</param>
            <param name="setOrClear">The action/value to verify, set == true, clear == false.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.CopyAllVideoQualitySettings">
            <summary>
            Copies the upper 7 bits of registers 1E (30) to registers F8 (248)
            Used to 'refresh/get' the current EEPROM video quality status of the 907-HDM2 with FPGA Ver. A9
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.SetSerializerTxClk(System.Int32,System.Byte)">
            <summary>
            Requests the FPGA to change the TXCLK (transmit clock) delay of the National Semi Serializer.
            </summary>
            <remarks>
            Reg[251][2:0] = CH1 TXCLK Delay
            Reg[252][2:0] = CH2 TXCLK Delay
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData"/> 
            has not been assigned.</exception>
            <param name="chanNum">The channel number for which to enable or 
            disable test pattern generation.</param>
            <param name="txClkDelay">Serializer TXCLK delay values (3-bits, 0d~7d). 
            </param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <!-- Badly formed XML comment ignored for member "M:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.AssignPacketLengthAndSampleRate(System.String,System.String)" -->
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.VideoChannelsSerializer">
            <summary>
            Gets the list of Video Channel status for the Serializer.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.VideoChannelsDeserializer">
            <summary>
            Gets the list of Video Channel status for the Deserializer.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.DeserializerVideoChannelSelect">
            <summary>
            Gets the current input video channel selection for the Deserializer. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.VideoQualityMode">
            <summary>
            Gets the current video quality mode. 
            </summary>
            <remarks>
            248[3:1] = vid_quality_balance (0 = med/med, 1 = ch1 high / ch2 low, 7 = ch1 low / ch2 high
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.VideoQualityModeDisplayActive">
            <summary>
            Gets a list where each element indicates whether the onscreen display
            of that channel's current video mode is enabled.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.PixelAveragingActive">
            <summary>
            Gets a list where the first element indicates whether pixel 
            averaging is enabled for the Mux, and the second element
            indicates the same for the Demux.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.TestPatternFormats">
            <summary>
            Gets an enumerable of possible test pattern format.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.TestPatternFormat">
            <summary>
            Gets a list of the current test pattern formats for Ch1 and Ch2.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.TestPatternGenerationActive">
            <summary>
            Gets a list where each element indicates whether test pattern
            generation is enabled for that particular channel.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.TestPatternFormatDisplayActive">
            <summary>
            Gets a list where each element indicates whether the onscreen display
            of that channel's test pattern is enabled.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.VideoQualityMode2">
            <summary>
            Gets the current video quality mode. 
            </summary>
            <remarks>
            248[3:1] = vid_quality_balance (0 = med/med, 1 = ch1 high / ch2 low, 7 = ch1 low / ch2 high
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.VideoQualityModeSelected">
            <summary>
            Gets the current video quality mode. 
            </summary>
            <remarks>
            248[3:1] = vid_quality_balance (0 = med/med, 1 = ch1 high / ch2 low, 7 = ch1 low / ch2 high
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.VideoQualityModeDisplayActive2">
            <summary>
            Gets a list where each element indicates whether the onscreen display
            of that channel's current video mode is enabled. (from reg 248)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.PixelAveragingActive2">
            <summary>
            Gets a list where the first element indicates whether pixel 
            averaging is enabled for the Mux, and the second element
            indicates the same for the Demux. (from reg 248)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.VisibleIfNewVer">
            <summary>
            Gets the current firmware version and
            returns true if the FW version is >= 0xA9 (false otherwise)
            This logic is used to display specific information for the
            907-HDM2 card with FW version 0xA9 and above.
            </summary>                
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.VideoQualitySettingsRegsBool">
            <summary>
            Gets the current status of the Video Quality Settings registers 30 and 248 (0x1E and 0xF8)
            returns 0 if the register values are the same 
            returns 1 if the registers are not the same
            </summary>                
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.DipSwitchSettings">
            <summary>
            Gets the currently active dip switch settings (1 = ON, 0 = OFF)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.IsDiagnosticMaster">
            <summary>
            Gets whether the card is currently configured as a Diagnostic Master.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.DiagnosticMode">
            <summary>
            Gets the current diagnostic mode configuration.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.IsConsole">
            <summary>
            Gets whether the HDM2 is configured as a Console device or
            as a Remote Device.  
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.BackplaneChannels">
            <summary>
            Gets the list of backplane channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.OnboardSerialDataChannels">
            <summary>
            Gets the list of onboard serial data channel statuses.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.HdmVideoQualityMode">
            <summary>
            Enumerates the possible video quality setting modes for the HDM2
            Dual Mode FPGA.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907Hdm2DualMode.HdmTestPatternFormat">
            <summary>
            Enumerates test pattern formats for the HDM2 Dual mode FPGA.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907E">
            <summary>
            Represents a Focal Technologies Model 907-E Ethernet, Video and Serial Data FPGA.
            </summary>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.Fpga907E.ADCWarningLevel">
            <summary> 
            Gets the voltages readings of the 907-Es on-board 8-bit ADC (AD7999)
            The information is read in the followin order:
            From ADC to FPGA then From FPGA to Diagnostic Software
            The 
             +---------------------------------------------------------------------------------------------------+
             |FPGA memory map                                                   | Valid Voltage                  |
             |                                                                  |  8-bit values                  |
             |------------------------------------------------------------------+--------------------------------|
             |5V   | assign local_registers_in_array[216]  = adc_data[  7:  0]; | [11:4]  (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[217]  = adc_data[ 15:  8]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |3.3V | assign local_registers_in_array[218]  = adc_data[ 23: 16]; | [27:20] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[219]  = adc_data[ 31: 24]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |12V  | assign local_registers_in_array[220]  = adc_data[ 39: 32]; | [43:36] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[221]  = adc_data[ 47: 40]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |1.2V | assign local_registers_in_array[222]  = adc_data[ 55: 48]; | [59:52] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[223]  = adc_data[ 63: 56]; |                                |
             +---------------------------------------------------------------------------------------------------+
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.#ctor">
            <summary>
            Constructs a new 907-E FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.ScaleAnalogValue(System.Double,System.Double,System.Int32)">
            <summary>
            Scales an onboard a/d value from the diagnostics card.
            </summary>
            <param name="adCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.DecodeSerialTriMode(System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            Decodes the serial communications mode based on the supplied bit values.
            </summary>       
            <param name="swBit1">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 1, 3, 5 or 7 from SW2 on the 907-E).</param>
            <param name="swBit2">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 0, 2, 4 or 6  from SW2 on the 907-E).</param>
            <param name="swBit3">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit 6  from SW1 on the 907-E).
            this is to indicate whether the configuration is loaded from EEPROM or SW2
            and it is only applicable to RS-485 for user timeout configuration</param>/// 
            <returns>The serial communications mode corresponding to the bit values.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.TogglePhySettingsControl(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable Control of PHY Settings
            </summary>
            <remarks>
            Name	                 Description	                                                           Register
            Enable GUI Control    1 – Enable control of PHY status from GUI and write settings to EEPROM  PHY0 =REG[240][5]
            of PHY Settings       0 – Use settings in EEPROM                                              PHY1 =REG[241][5]
                                                                                                          PHY2 =REG[242][5]
                                                                                                          PHY3 =REG[243][5]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyControl">Indicates whether to enable or 
            disable control of Phy settings for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.TogglePhyChangeMasterSlave(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable "Change Master/Slave Status"
            </summary>
            <remarks>
            Name	                 Description	                           Register
            Change Master/Slave    1 – Enable change to master slave status    PHY0 =REG[240][4]
            status                 0 – Leave status as is from EEPROM          PHY1 =REG[241][4]
                                                                               PHY2 =REG[242][4]
                                                                               PHY3 =REG[243][4]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyChangeMasterSlave">Indicates whether to enable or 
            disable change to master/slave status for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.TogglePhyMasterSlave(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable "Master/Slave Status"
            </summary>
            <remarks>
            Name	                 Description	         Register
            Master/Slave          1 – Master                PHY0 =REG[240][3]
            Status                0 – Slave                 PHY1 =REG[241][3]
                                                            PHY2 =REG[242][3]
                                                            PHY3 =REG[243][3]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyMasterSlave">Indicates whether to enable or 
            disable change to master/slave status for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.TogglePhy1000BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 1000 Base-T
            </summary>
            <remarks>
            Name	                 Description	                      Register
            Disable 1000 BASE-T     1 – 1000 BASE-T is disabled           PHY0 =REG[240][2]
                                    0 – 1000 BASE-T is enabled            PHY1 =REG[241][2]
                                                                          PHY2 =REG[242][2]
                                                                          PHY3 =REG[243][2]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy1000BT">Indicates whether to enable or 
            disable 1000 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.TogglePhy100BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 100 Base-T
            </summary>
            <remarks>
            Name	                  Description	                      Register
            Disable 100 BASE-T      1 – 100 BASE-T is disabled           PHY0 =REG[240][1]
                                    0 – 100 BASE-T is enabled            PHY1 =REG[241][1]
                                                                         PHY2 =REG[242][1]
                                                                         PHY3 =REG[243][1]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy100BT">Indicates whether to enable or 
            disable 100 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.TogglePhy10BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 10 Base-T
            </summary>
            <remarks>
            Name	                  Description	                      Register
            Disable 10 BASE-T       1 – 10 BASE-T is disabled           PHY0 =REG[240][0]
                                    0 – 10 BASE-T is enabled            PHY1 =REG[241][0]
                                                                        PHY2 =REG[242][0]
                                                                        PHY3 =REG[243][0]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907E.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy10BT">Indicates whether to enable or 
            disable 10 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.ToggleResetStatistics(System.Boolean)">
            <summary>
            Requests the FPGA to reset all statistcs counters
            </summary>
            <remarks>
            Address: FC (Hex) = 252 (dec)
            Bit[0]: reset_statistics
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.CopyAllPortSettings">
            <summary>
            Copies the first 5 bits of register 0x90 (144[4:0]) to registers 0xF0 (240[4:0])
            Used to 'refresh/get' the last saved port settings in EEPROM such as:
            enable 10/100/1000 Mbps, prefer master or slave and change master slave status
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.WriteDataToPhy(System.Byte,System.UInt16)">
            <summary>
            Writes new data to the Ethernet PHY at the specified address.        
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.WriteDataToPhyTrigger(System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Provides a positive edge to the FPGA to trigger write for PHY.
            </summary>
            <remarks>
            Address: 247 (dec)
            Bit[0]: trigger PHY write
            verify: true = verify enabled, false verify disable
            timeout: maximum time in ms to wait before considering a fail write.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.VerifyWriteData(System.Byte,System.Int32,System.Boolean,System.Int64)">
            <summary>
            Verifies if the bit value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms..
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="expectedValue"> The expected value of bitNum in regNum (true or false). </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907E.ToString">
            <summary>
            override string ToString
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.DipSw1">
            <summary>
            Gets the DIP switch 1 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.DipSw2">
            <summary>
            Gets the DIP switch 2 status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.IsConsole">
            <summary>
            Gets whether the 907-E is configured as a Console or Remote.  
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.VideoChannels">
            <summary>
            Gets the list of Video Channel status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.OnboardSerialDataChannels">
            <summary>
            Gets the list of onboard serial data channel statuses.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.ActiveSwitchSettings1">
            <summary>
            Gets the currently active switch 1 setting used by hardware.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.ActiveSwitchSettings2">
            <summary>
            Gets the currently active switch 2 setting used by hardware.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.OpticalLinkSpeed">
            <summary>
            Gets the Optical Link Speed.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.LinkFault">
            <summary>
            Gets the Link Fault Led indicator.
            Address: 06 (hex)
            Bits[2]
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.OpticalSpeedIndicator">
            <summary>
            Gets the optical speed indicator.
            Address: 03 (hex)
            Bits[5:6]
            a.	625 MBaud (SW1[5:6] == off, off)
            b.	1.250 GBaud (SW1[5:6] == off, on)
            c.	2.500 GBaud (SW1[5:6] == on, off)
            d.	3.125 GBaud (SW1[5:6] == on, on)
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.ThroughputMode">
            <summary>
            Gets the fair and maximum throughput mode.
            Address: 03 (hex)
            Bit[6]        
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.SfpStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.SfpStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.SfpStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.DipSwitch1">
            <summary>
            Gets the On-Board DIP Switch 1 status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.DipSwitch2">
            <summary>
            Gets the On-Board DIP Switch 2 status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhyStatus">
            <summary>
            Gets the list of Port statuses.
            </summary>
            <remarks>
            <para>See Micrel datasheet KSZ9021RL/RN October 20009 for PHY register map.</para>
            <para>Note that the 907-E card provides data for registers all 31 registers 0 to 31
            for the on-board PHY</para>
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettingsControlActive">
            <summary>
            Gets a list where each element indicates whether the "Control of PHY Settings"
            of that port is enabled.  Source: FPGA reg 240[5]
            
            1 – Enable control of PHY status from GUI and write settings to EEPROM
            0 – Use settings in EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettingsChangeMasterSlaveActive">
            <summary>
            Gets a list where each element indicates whether the "Change Master / Slave" status
            of that port is enabled.  Source: FPGA reg 240[4]
            
            1 – Enable change to master slave status
            0 – Leave status as is from EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettingsMasterSlaveActive">
            <summary>
            Gets a list where each element indicates whether the "Master" or "Slave" status
            of that port is enabled.  Source: FPGA reg 240[3]
            
            1 – Master
            0 – Slave
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettings1000BTActive">
            <summary>
            Gets a list where each element indicates whether the "1000 BASE-T" 
            of that port is enabled.  Source: FPGA reg 240[2]
            
            1 – 1000 BASE-T is disabled
            0 – 1000 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettings100BTActive">
            <summary>
            Gets a list where each element indicates whether the "100 BASE-T" 
            of that port is enabled.  Source: FPGA reg 240[1]
            
            1 – 100 BASE-T is disabled
            0 – 100 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettings10BTActive">
            <summary>
            Gets a list where each element indicates whether the "10 BASE-T" 
            of that port is enabled. Source: FPGA reg 240[0]
            
            1 – 10 BASE-T is disabled
            0 – 10 BASE-T is enabled
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettingsControlActiveE">
            <summary>
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Control of PHY Settings"
            of that port is enabled. (Data read from on-board EEPROM)
            
            1 – Enable control of PHY status from GUI and write settings to EEPROM
            0 – Use settings in EEPROM
            
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettingsChangeMasterSlaveActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Change Master / Slave" status
            of that port is enabled.
            
            1 – Enable change to master slave status
            0 – Leave status as is from EEPROM        /// 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettingsMasterSlaveActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Master" or "Slave" status
            of that port is enabled.
            
            1 – Master
            0 – Slave
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettings1000BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "1000 BASE-T" 
            of that port is enabled.
            
            1 – 1000 BASE-T is disabled
            0 – 1000 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettings100BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "100 BASE-T" 
            of that port is enabled.
            
            1 – 100 BASE-T is disabled
            0 – 100 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettings10BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "10 BASE-T" 
            of that port is enabled.
            
            1 – 10 BASE-T is disabled
            0 – 10 BASE-T is enabled
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhySettingsChanged">
            <summary> 
            Gets the complete PHY register status 0x90 (144) and 0xF0 (240)
            used to determine if changes made in the GUI have been saved in EEPROM or not.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhyStatisticsPacketLoss">
            <summary> 
            Gets the packet loss count of each port        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.BackplaneEnable">
            <summary> 
            Gets the backplane enable/disable status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.BackplaneRxError">
            <summary> 
            Gets the backplane data receive underflow/overflow erros (Rx error)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.BackplaneTxError">
            <summary> 
            Gets the backplane data transmit underflow/overflow erros (Tx error)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhyPacketDropped">
            <summary> 
            Gets the Packet Dropped LED information
            Address 05 Hex
            Bit [3:0]: packet_dropped_led_n (active low)
            Per copper Ethernet port packet dropped indicator
            Corresponds to LEDs D4,D5,D6,D7
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhyEthernetCuActivityRx">
            <summary> 
            Gets the Ethernet Copper Recive Activity Port information
            Address 04 Hex
            Bit [3:0]: Ethernet Copper Receive Activity Ports [3:0] (active low)        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.PhyEthernetCuActivityTx">
            <summary> 
            Gets the Ethernet Copper Transmit Activity Port information
            Address 04 Hex
            Bit [7:4]: Ethernet Copper Transmit Activity Ports [3:0] (active low)        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.Voltage12">
            <summary>
            Gets the voltage reading from the 1.2VDC rail on the card. Bytes[0-1].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.Voltage12V">
            <summary>
            Gets the voltage reading from the 12VDC rail on the diagnostics card (V). Bytes[4-5].
            The actual voltage going into the ADC is 12V/5.02 = 2.39V. Vadc=12V/((4.02K+1K)/1K)=2.39V
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.Voltage33">
            <summary>
            Gets the voltage reading from the 3.3VDC rail on card (V). Bytes[2-3].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907E.Voltage5">
            <summary>
            Gets the voltage reading from the 5VDC rail on the card (V). Bytes[6-7].
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "T:Focal.Model907.Diagnostics.Models.DiagFlexCard" -->
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.#ctor(System.String,Focal.Model907.Diagnostics.Models.LinkSide,System.UInt16,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig,Focal.Model907.Diagnostics.Models.I2CDeviceConfig)">
            <summary>
            Constructs a new Diagnostic Slave.
            </summary>
            <remarks>
            A Diagnostic Flex in a 907 system can have the following I2C devices:
            4xSFPs (MSA and/or NON-MSA) + 1xEEPROM
            </remarks>
            <param name="description">The description of the card.</param>
            <param name="linkSide">The side of the optical link on which the card resides.</param>        
            <param name="cardConfig">The 907-FLEX diagnostic backplane configuration. 0 = card configured to use main BP line. 1 = 907-FLEX configured to use AUX 1-4 BP lines.</param>
            <param name="eepromM0">The i2c device configuration for the EEPROM device.</param>
            <param name="sfp1A0">The i2c device configuration for the A0 SFP 1 device.</param>
            <param name="sfp1A2">The i2c device configuration for the A2 SFP 1 device.</param>
            <param name="sfp1XX">The i2c device configuration for the XX SFP 1 device.</param>
            <param name="sfp2A0">The i2c device configuration for the A0 SFP 2 device.</param>
            <param name="sfp2A2">The i2c device configuration for the A2 SFP 2 device.</param>
            <param name="sfp2XX">The i2c device configuration for the XX SFP 2 device.</param>
            <param name="sfp3A0">The i2c device configuration for the A0 SFP 3 device.</param>
            <param name="sfp3A2">The i2c device configuration for the A2 SFP 3 device.</param>
            <param name="sfp3XX">The i2c device configuration for the XX SFP 3 device.</param>
            <param name="sfp4A0">The i2c device configuration for the A0 SFP 4 device.</param>
            <param name="sfp4A2">The i2c device configuration for the A2 SFP 4 device.</param>
            <param name="sfp4XX">The i2c device configuration for the XX SFP 4 device.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.GetSfpId(System.Byte[])">
            <summary>
            Gets the SFP id from address 0xA0
            byte 0 = sfpIdCode
            byte 1 = sfpConnector
            byte 2 = Vendor Name Byte 0
            </summary>
            <remarks>
            This method is typically called after the raw data in the i2c
            device configuration has been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.CreateAnSfp(System.Int32)">
            <summary>
            Creates an SFP.
            </summary>
            <remarks>
            This method is typically called after the raw data in the i2c
            device configuration has been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.RemapI2CAddressIfRequired(System.Byte,System.Byte[])">
            <summary>
            Changes the default I2C device address as required depending on the type of SFP detected
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.ChangeI2CCommandIfRequired(System.UInt16,System.Byte[])">
            <summary>
            Changes the default I2C device read command if required
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.CreateMsaOrNonMsaSfp(System.Byte[],System.Byte[],System.Byte[],System.Int32)">
            <summary>
            Creates the proper type of SfpMsaAndNonMsa object using the raw data from the
            i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data in the i2c
            device configuration has been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.CreateMediaConverter">
            <summary>
            Creates the proper type of MediaConverter object using the raw data from the
            i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data in the i2c
            device configuration has been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.CreateEeprom">
            <summary>
            Creates the EEPROM object using the raw data from the i2c device configuration.
            </summary>
            <remarks>
            This method is typically called after the raw data arrays in the EEPROM 
            i2c device configurations have been updated for the first time, or 
            when the stack configuration needs to be (re)determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.InitDevicesAfterNextRefresh">
            <summary>
            Inidcates that the appropriate factory method to (re)initialize the card
            device types (i.e. the fpga and sfp) should be called after the next 
            refresh of data is received.
            </summary>
            <remarks>
            This method is typically called when the stack configuration
            needs to be determined.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.RefreshData(System.Boolean)">
            <summary>
            Refreshes data from all on-card devices.
            </summary>
            <returns>
            True if all data was successfully refreshed, False otherwise.
            </returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.SfpNonMsaMemLocation">
            <summary>
            THIS MAY NOT BE USED OR REQUIRED, BUT IT IS HERE JUST IN CASE IS NEEDED IN THE FUTURE
            Gets the current SFP NON-MSA memory location from which the data should be read.
            By default the FPGA read from B2
            </summary>
            <returns>
            0xB2 = Default Non-MSA memory location
            0xC2 = Non-MSA memory location for special SFPs such Ethernet SFPs
            </returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.EepromM0I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of eeprom that answered (if we don't already
            know), or to update the eeprom's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp1A0I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp1A2I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp1XXI2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP2 that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp2A0I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp2A2I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp2XXI2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP2 that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp3A0I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp3A2I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp3XXI2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP2 that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp4A0I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp4A2I2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp4XXI2CDeviceConfig_PropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
            <summary>
            This event is raised when the raw data in the I2C Device Configuration
            is updated, meaning that we have the 'go-ahead' to determine
            the type of SFP2 that answered (if we don't already
            know), or to update the sfp's raw data if we do.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.DiagFlexCard.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.DiagFlexCard.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Description">
            <summary>
            The description of the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.LinkSide">
            <summary>
            The side of the optical link on which the card resides.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.CardConfiguration">
            <summary>
            The type of 907-FLEX card.
            0 = 907-FLEX configured to use main BP channels
            1 = 907-FLEX configured to use AUX 1-4 BP channels
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp1MsaAndNonMsa">
            <summary>
            The Sfp1MsaAndNonMsa on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp2MsaAndNonMsa">
            <summary>
            The Sfp2MsaAndNonMsa on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp3MsaAndNonMsa">
            <summary>
            The Sfp3MsaAndNonMsa on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp4MsaAndNonMsa">
            <summary>
            The Sfp4MsaAndNonMsa on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.MediaConverter">
            <summary>
            The Media Converter on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp">
            <summary>
            The SFP optical transceiver on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.SfpMsa">
            <summary>
            The SFP Msa optical transceiver on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp2">
            <summary>
            The SFP2 optical transceiver on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Eeprom">
            <summary>
            The EEPROM on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.DetectedCardDescription">
            <summary>
            Gets the description of the detected card type.  
            This property is basically just a wrapper for SfpxMsaAndNonMsa.Id
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.DetectedDescriptionSfp1">
            <summary>
            Gets the description of the detected SFP 1        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.DetectedDescriptionSfp2">
            <summary>
            Gets the description of the detected SFP 2        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.DetectedDescriptionSfp3">
            <summary>
            Gets the description of the detected SFP 3        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.DetectedDescriptionSfp4">
            <summary>
            Gets the description of the detected SFP 4        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.DetectedDescriptionSfp">
            <summary>
            Gets a list where each element indicates the description of each SFP detected.
            Returns a list of strings
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.SfpIdentifierNum">
            <summary>
            Get the Identifier Value of the SFP
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.SfpIdentifierEnumNum">
            <summary>
            Get the Identifier Enum Value of the SFP
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp1Detected">
            <summary>
            Get whether a supported a Standard Optical Sfp1 (Msa) has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp2Detected">
            <summary>
            Get whether a supported a Standard Optical Sfp2 (Msa) has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp3Detected">
            <summary>
            Get whether a supported a Standard Optical Sfp3 (Msa) has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.Sfp4Detected">
            <summary>
            Get whether a supported a Standard Optical Sfp4 (Msa) has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.SfpMsaDetected">
            <summary>
            Get whether a supported SfpMsa has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.SfpNonMsaDetected">
            <summary>
            Get whether a supported SfpNonMsa has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.MediaConverterDetected">
            <summary>
            Get whether a supported Media Converter has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.SfpDetected">
            <summary>
            Get whether an SFP has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.EepromDetected">
            <summary>
            Get whether an EEPROM has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.SfpOrEepromDetected">
            <summary>
            Get whether an SFP or EEPROM has been detected.  
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            Also, this property is used to 'hide' or 'show' and media converter card with SFPs or just with Serial EEPROM but no SFP.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.I2CDeviceAddresses">
            <summary>
            Gets a dictionary of the card's I2C device addresses where the key is the
            device address and the value is the device description.        
            </summary> 
            <remarks>
            We expose this property to provide an easy means to enumerate the 
            i2c devices in a 907 system, particularly for custom LED configuration
            on the diagnostic card.
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.DiagFlexCard.FpgaDetected">
            <summary>
            Get whether a supported FPGA has been detected.
            THIS PROPERTY IS NOT IMPLEMENTED
            </summary>
            <remarks>
            This property is typically set after the first refresh of data has been received.
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.OnboardSerialDataConverter">
            <summary>
            
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.BackplaneChannelConverter">
            <summary>
            
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.VideoChannelConverter">
            <summary>
            
            </summary>
        </member>
        <member name="T:Focal.Utilities.EventArgs`1">
            <summary>
            Enables creation of an event that can return any type of object.
            </summary>
            <example>
            First, declare the event using the appropriate type
            (in this example, a string):
            <code>
            <![CDATA[event EventHandler<EventArgs<String>>_stringEvent;]]>
            </code>
            Then fire the event like so:
            <code>
            <![CDATA[
            void RaiseStringEvent(string msg){
                if(_stringEvent != null){
                    _stringEvent(this, new EventArgs<String>(msg));
                }
            }
            ]]>
            </code>
            </example>
            <typeparam name="T">The return object type.</typeparam>
        </member>
        <member name="T:Focal.Utilities.EventArgs`2">
            <summary>
            Enables the creation of an event with two typed return values.
            </summary>
            <typeparam name="T">The first return object type.</typeparam>
            <typeparam name="U">The second return object type.</typeparam>
        </member>
        <member name="T:Focal.Utilities.EventArgs`3">
            <summary>
            Enables the creation of an event with three typed return values.
            </summary>
            <typeparam name="T">The first return object type.</typeparam>
            <typeparam name="U">The second return object type.</typeparam>
            <typeparam name="V">The third return object type.</typeparam>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.HdmDeserializer">
            <summary>
            Encapsulates data from an HDM Video deserializer module (LMH0031).
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.HdmDeserializer.#ctor">
            <summary>
            Constructs a new HDM Deserializer.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmDeserializer.Format">
            <summary>
            Gets the format of the incoming video data.
            See LMH0031 data sheet for register details.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmDeserializer.Specification">
            <summary>
            Gets the specification of the incoming video data.
            See LMH0031 data sheet for register details.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmDeserializer.FrameRate">
            <summary>
            Gets the frame rate of the incoming video data.
            See LMH0031 data sheet for register details.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmDeserializer.Lines">
            <summary>
            Gets the lines of the incoming video data.
            See LMH0031 data sheet for register details.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.HdmDeserializer.ActiveLines">
            <summary>
            Gets the active lines of the incoming video data.
            See LMH0031 data sheet for register details.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907Serial">
            <summary>
            Represents a Focal Technologies Model 907-SER FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.#ctor">
            <summary>
            Constructs a new 907 Serial FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.DecodeSerialMode(System.Boolean,System.Boolean)">
            <summary>
            Decodes the serial communications mode based on the supplied bit values.
            </summary>       
            <param name="switchSetting">The switch setting corresponding to the channel for which
            to decode the serial communications mode. (i.e a bit from SW3 or SW4).</param>
            <param name="is422mode"> The bool value that indicates whether the card is hardware configured for 422 or not.
            True indicates that 422 mode is enabled. False indicates that 422 mode is disabled.</param>
            <returns>The serial communications mode corresponding to the bit values.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.DecodeSW2">
            <summary>
            Decodes the backplane configuration settings, as defined by SW2 on the card.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.DecodeSwitchStatus(System.Boolean)">
            <summary>        
            Decodes the dip switch state based on the supplied bit value. 1=ON, 0=OFF
            </summary>       
            <param name="swBitSetting">The switch setting corresponding to SW#[N] 
            where DIP Switch #=1,2,3,etc and switch number N=1to4 or 1to8 typically.</param>
            <returns>The dip switch state (ON or OFF).</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.WriteSwSetting(System.Int32,System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to turn a dip switch ON or OFF
            </summary>
            <remarks>
            See 907-SER Memory map registers F0-F8
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.WriteData"/> 
            has not been assigned.</exception>
            <param name="dipSwNum">The dip switch number (e.g. 1,2,3,...) for which the operation will be performed.</param>
            <param name="swPin"> The switch pin (0-7) for which the operation will be performed.</param>
            <param name="swState"> The desired state of the switch (On=1 or Off=0).</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.WriteSerialProtocol(System.Int32)">
            <summary>
            A method used to set the register bits needed for IO serial protocol selection
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.WriteSerialProtocolReg">
            <summary>
            A method used to set the register needed for IO serial protocol selection
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.WriteBpMode(Focal.Model907.Diagnostics.Models.Fpga907Serial.SerBackplaneMode)">
            <summary>
            A method used to set the register needed for BP mode selection
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.WriteBpModeReg(System.Byte)">
            <summary>
            A method used to set the register needed for BP mode selection
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.SerialDataChannelsBitsToByte">
            <summary>
            A method used to convert bit values to a byte
            </summary>   
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.ReloadSerialDataChannelMode(System.Byte)">
            <summary>
            A method used to load a byte value to SerialDataChannel mode
            </summary>   
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.SaveAllSwSettings">
            <summary>
            A method used to indicate the FPGA to save in EEPROM the Pre-Saved DIP switch settings
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.WriteDataToFpgaTrigger(System.Byte,System.Int32,System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Provides a positive or negative edge to the FPGA to trigger a write.
            </summary>
            <remarks>
            Address: E.g. 247 (dec)
            Bit[0]: E.g. trigger EEPROM write
            verify: true = verify enabled, false verify disable
            timeout: maximum time in ms to wait before considering a fail write.
            </remarks>
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="OneOrZero"> true=One=Positive Edge to FPGA. false=Zero=Negative Edge to FPGA </param>
            <param name="verify"> true=perform a verification of the written data and wait X timeout before to give up. false=Do not perform verification, just assume that the data was written in time. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.VerifyWriteDataBit(System.Byte,System.Int32,System.Boolean,System.Int64)">
            <summary>
            Verifies if the bit value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms..
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="expectedValue"> The expected value of bitNum in regNum (true or false). </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.VerifyWriteData(System.Byte,System.Byte,System.Int64)">
            <summary>
            Verifies if the byte value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms.
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>        
            <param name="expectedValue"> The expected value of the byte in regNum. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Serial.TransactionDelay(System.Int64)">
            <summary>
            Adds a delay between transactions for up to the time specified. The 'delay' value is expressed in (long) ms.        
            Typically this method is used after the WriteData method is called.
            </summary>        
            <param name="delay"> Required delay in ms. E.g. 1000 = 1sec.</param>
            <remarks>                
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.FwVersion">
            <summary>
            Gets the FPGA implementation version value (from string).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.BoardMode">
            <summary>
            Gets the board mode setting as defined by SW1 (Remote or Console).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.FPGATransactionDelay">
            <summary>
            Gets the FPGA write FPGATransactionDelay (ms) to be used for the remote or console card
            The remote 907-SER needs 2x longer delay than the console end.
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.IsDataRefreshRequired">
            <summary>
            Gets whether data refresh is required or not        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.BackplaneMode">
            <summary>
            Gets the backplane mode setting, as defined by SW2 on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.ActiveIOChannels">
            <summary>
            Gets the active IO channels, as defined by SW2 on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.BackplaneChannels">
            <summary>
            Gets the backplane channels in use, as defined by SW2 on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.MaxBaudRate">
            <summary>
            Gets the maximum baud rate, as defined by SW2 on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.SampleRate">
            <summary>
            Gets the sample rate, as defined by SW2 on the card.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.OnboardSerialDataChannels">
            <summary>
            Gets the list of onboard serial data channel statuses.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.BackplaneModes">
            <summary>
            Gets an enumerable of possible test pattern format.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.BackplaneModeActive">
            <summary>
            Gets the current active backplane mode.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.IsBoardPhysicalSwCtr">
            <summary>
            Gets the board control state. 1 - Physical Switch Control, 0 - EEPROM Control
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.DipSw">
            <summary>
            Gets the DIP switches status. [0]=SW1, [1]=SW2, etc
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.OnboardDipSw">
            <summary>
            Gets the list of onboard SW3 switch status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.PreEepromDipSw">
            <summary>
            Gets the UI user selected DIP switch state
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.PreSavedEepromDipSw">
            <summary>
            Gets the pre-EEPROM DIP switch status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.EepromDipSw">
            <summary>
            Gets the EEPROM DIP switch status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.Sw1SettingControl">
            <summary>
            SW1
            Gets a list where each element indicates whether a switch (from EEPROM) has been selected to be ON or OFF
            0 – Switch ON, 1 – Switch OFF
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.Sw2SettingControl">
            <summary>
            SW2
            Gets a list where each element indicates whether a switch (from EEPROM) has been selected to be ON or OFF
            1 – Switch ON, 0 – Switch OFF
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.Sw3SettingControl">
            <summary>
            SW3
            Gets a list where each element indicates whether a switch (from EEPROM) has been selected to be ON or OFF
            1 – Switch ON, 0 – Switch OFF
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.Sw4SettingControl">
            <summary>
            SW4
            Gets a list where each element indicates whether a switch (from EEPROM) has been selected to be ON or OFF
            1 – Switch ON, 0 – Switch OFF
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.EepromDipSwitchChanged">
            <summary> 
            Compares PreSavedEepromDipSw vs EepromDipSw
            To determine if changes made in the GUI have been saved in EEPROM or not.
            Returns false if there are no changes, true if there are changes
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.SetSerialProtocolCommand">
            <summary>
            RelayCommand to set serial protocol IO
            0xDipSwNum.Pin.OnOff = p
            -------------------
            0x300 = CH1, RS-232
            0x310 = CH2, RS-232
            0x320 = CH3, RS-232
            0x330 = CH4, RS-232
            0x301 = CH1, RS-485
            0x311 = CH2, RS-485
            0x321 = CH3, RS-485
            0x331 = CH4, RS-485
            -------------------
            0x400 = CH5, RS-232
            0x410 = CH6, RS-232
            0x420 = CH7, RS-232
            0x430 = CH8, RS-232
            0x401 = CH5, RS-485
            0x411 = CH6, RS-485
            0x421 = CH7, RS-485
            0x431 = CH8, RS-485
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Serial.SetBpModeCommand">
            <summary>
            RelayCommand to set backplane mode
            SW2[4:1], where 4:1 = value (hex) = p. 
            -------------------
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907Serial.SerBackplaneMode">
            <summary>
            Enumerates backplane modes.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.BackplaneChannel">
            <summary>
            Encapsulates the status for a single FPGA backplane channel.
            </summary>
            <remarks>
            <para>A typical 907 FPGA contains a number of backplane channels, each of which
            contains a number of ports used to transfer data.</para>
            <para>For example, a 907+ FPGA has 6 backplane channels, each of which has
            8 ports.</para>
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.BackplaneChannel.#ctor(System.String,System.Int32)">
            <summary>
            Constructs a new BackplaneChannel with the specified number of ports.
            </summary>
            <exception cref="T:System.ArgumentOutOfRangeException"></exception>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.BackplaneChannel.ValidatePortNumber(System.Int32)">
            <summary>
            Validates that the specified port number exists in the list of port activity.
            </summary>
            <exception cref="T:System.ArgumentOutOfRangeException"></exception>
            <param name="portNum">The port number to verify</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.BackplaneChannel.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.BackplaneChannel.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.BackplaneChannel.ChannelName">
            <summary>
            Gets the name of this backplane channel.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.BackplaneChannel.ExpansionCardActive">
            <summary>
            Gets or Sets a flag to indicate that activity from an expansion card
            has been detected on this channel.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.BackplaneChannel.PortActive">
            <summary>
            Gets or Sets the list of port activity.  Each item in the list indicates 
            whether activity has been detected on the port at that index.
            </summary>
            <exception cref="T:System.ArgumentOutOfRangeException"></exception>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.BackplaneChannel.Item(System.Int32)">
            <summary>
            Gets or Sets a flag indicating that activity has been detected on 
            the specified port number.
            </summary>
            <exception cref="T:System.ArgumentOutOfRangeException"></exception>
            <param name="portNum">The port number (0-based).</param>
            <returns>TRUE indicates activity on the specified port, FALSE indicates
            no activity on the port.</returns>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.Fpga907Gem">
            <summary>
            Represents a Focal Technologies Model 907 Four Port Gigabit Ethernet FPGA.
            </summary>
        </member>
        <member name="F:Focal.Model907.Diagnostics.Models.Fpga907Gem.ADCWarningLevel">
            <summary> 
            Gets the voltages readings of the 907-GEM's on-board 8-bit ADC (AD7999)
            The information is read in the followin order:
            From ADC to FPGA then From FPGA to Diagnostic Software
            The 
             +---------------------------------------------------------------------------------------------------+
             |FPGA memory map                                                   | Valid Voltage                  |
             |                                                                  |  8-bit values                  |
             |------------------------------------------------------------------+--------------------------------|
             |5V   | assign local_registers_in_array[208]  = adc_data[  7:  0]; | [11:4]  (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[209]  = adc_data[ 15:  8]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |3.3V | assign local_registers_in_array[210]  = adc_data[ 23: 16]; | [27:20] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[211]  = adc_data[ 31: 24]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |2.5V | assign local_registers_in_array[212]  = adc_data[ 39: 32]; | [43:36] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[213]  = adc_data[ 47: 40]; |                                |
             |-----+------------------------------------------------------------+--------------------------------|
             |1.2V | assign local_registers_in_array[214]  = adc_data[ 55: 48]; | [59:52] (Valid 8-bit [11:4])   |
             |     | assign local_registers_in_array[215]  = adc_data[ 63: 56]; |                                |
             +---------------------------------------------------------------------------------------------------+
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.#ctor">
            <summary>
            Constructs a new 907-GEM FPGA.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.ScaleAnalogValue(System.Double,System.Double,System.Int32)">
            <summary>
            Scales an onboard a/d value from the diagnostics card.
            </summary>
            <param name="adCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.FpgaMemoryMapReferenceRefresh">
            <summary>
            907-GEM cards with FPGA code B0 and above have a different memory map.
            The new and old mapping will be handled in this section
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.TogglePhySettingsControl(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable Control of PHY Settings
            </summary>
            <remarks>
            Name	                 Description	                                                           Register
            Enable GUI Control    1 – Enable control of PHY status from GUI and write settings to EEPROM  PHY0 =REG[240][5]
            of PHY Settings       0 – Use settings in EEPROM                                              PHY1 =REG[241][5]
                                                                                                          PHY2 =REG[242][5]
                                                                                                          PHY3 =REG[243][5]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyControl">Indicates whether to enable or 
            disable control of Phy settings for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.TogglePhyChangeMasterSlave(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable "Change Master/Slave Status"
            </summary>
            <remarks>
            Name	                 Description	                           Register
            Change Master/Slave    1 – Enable change to master slave status    PHY0 =REG[240][4]
            status                 0 – Leave status as is from EEPROM          PHY1 =REG[241][4]
                                                                               PHY2 =REG[242][4]
                                                                               PHY3 =REG[243][4]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyChangeMasterSlave">Indicates whether to enable or 
            disable change to master/slave status for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.TogglePhyMasterSlave(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable "Master/Slave Status"
            </summary>
            <remarks>
            Name	                 Description	         Register
            Master/Slave          1 – Master                PHY0 =REG[240][3]
            Status                0 – Slave                 PHY1 =REG[241][3]
                                                            PHY2 =REG[242][3]
                                                            PHY3 =REG[243][3]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhyMasterSlave">Indicates whether to enable or 
            disable change to master/slave status for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.TogglePhy1000BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 1000 Base-T
            </summary>
            <remarks>
            Name	                 Description	                      Register
            Disable 1000 BASE-T     1 – 1000 BASE-T is disabled           PHY0 =REG[240][2]
                                    0 – 1000 BASE-T is enabled            PHY1 =REG[241][2]
                                                                          PHY2 =REG[242][2]
                                                                          PHY3 =REG[243][2]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy1000BT">Indicates whether to enable or 
            disable 1000 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.TogglePhy100BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 100 Base-T
            </summary>
            <remarks>
            Name	                  Description	                      Register
            Disable 100 BASE-T      1 – 100 BASE-T is disabled           PHY0 =REG[240][1]
                                    0 – 100 BASE-T is enabled            PHY1 =REG[241][1]
                                                                         PHY2 =REG[242][1]
                                                                         PHY3 =REG[243][1]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy100BT">Indicates whether to enable or 
            disable 100 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.TogglePhy10BT(System.Int32,System.Boolean)">
            <summary>
            Requests the FPGA to enable or disable 10 Base-T
            </summary>
            <remarks>
            Name	                  Description	                      Register
            Disable 10 BASE-T       1 – 10 BASE-T is disabled           PHY0 =REG[240][1]
                                    0 – 10 BASE-T is enabled            PHY1 =REG[241][1]
                                                                        PHY2 =REG[242][1]
                                                                        PHY3 =REG[243][1]
            </remarks>
            <exception cref="T:System.ArgumentNullException">Thrown if <see cref="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.WriteData"/> 
            has not been assigned.</exception>
            <param name="portNum">The port number for which to enable or 
            disable control of PHY settings.</param>
            <param name="enablePhy10BT">Indicates whether to enable or 
            disable 10 Base-T for the specified port.</param>
            <returns>True if the command succeeded, False otherwise.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.ToggleResetStatistics(System.Boolean)">
            <summary>
            Requests the FPGA to reset all statistcs counters
            </summary>
            <remarks>
            Address: FC (Hex) = 252 (dec)
            Bit[0]: reset_statistics
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.CopyAllPortSettings">
            <summary>
            Copies the first 5 bits of registers E0-E3 (224-227) to registers F0-F3 (240-243)
            Used to 'refresh/get' the current EEPROM status in the port settings view of the 907-GEM
            </summary>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.ClearLinkLossErrorCounter">
            <summary>
            A method used to ClearLinkLossErrorCounter
            </summary>
            <returns>True if the command succeeded, False otherwise.</returns>        
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.WriteDataToFpgaTrigger(System.Byte,System.Int32,System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Provides a positive or negative edge to the FPGA to trigger a write.
            </summary>
            <remarks>
            Address: 247 (dec)
            Bit[0]: trigger PHY write
            verify: true = verify enabled, false verify disable
            timeout: maximum time in ms to wait before considering a fail write.
            </remarks>
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="OneOrZero"> true=One=Positive Edge to FPGA. false=Zero=Negative Edge to FPGA </param>
            <param name="verify"> true=perform a verification of the written data and wait X timeout before to give up. false=Do not perform verification, just assume that the data was written in time. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.VerifyWriteDataBit(System.Byte,System.Int32,System.Boolean,System.Int64)">
            <summary>
            Verifies if the bit value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms..
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>
            <param name="bitNum"> bit number (int value from 0 to 7). </param>
            <param name="expectedValue"> The expected value of bitNum in regNum (true or false). </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.VerifyWriteData(System.Byte,System.Byte,System.Int64)">
            <summary>
            Verifies if the byte value of the specified I2C register are the same.
            returns true if they are the same. If the values are not the same, then it waits
            for up to the time specified to return the final value. False if the values are not equal
            after X number of ms.
            </summary>        
            <param name="regNum"> I2C register number (8-bit value e.g. 240). </param>        
            <param name="expectedValue"> The expected value of the byte in regNum. </param>
            <param name="timeout"> Timeout in ms. Max time to wait before the command is considered 'fail'.</param>
            <remarks>        
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.TransactionDelay(System.Int64)">
            <summary>
            Adds a delay between transactions for up to the time specified. The 'delay' value is expressed in (long) ms.        
            Typically this method is used after the WriteData method is called.
            </summary>        
            <param name="delay"> Required delay in ms. E.g. 1000 = 1sec.</param>
            <remarks>                
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.Fpga907Gem.ToString">
            <summary>
            override string ToString
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.Id">
            <summary>
            Gets the FPGA ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.Version">
            <summary>
            Gets the FPGA implementation version.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.SerialNumber">
            <summary>
            Gets the board's Serial Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.DateCode">
            <summary>
            Gets the board's Date Code.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.AssemblyNumber">
            <summary>
            Gets the board's Assembly Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PcbNumber">
            <summary>
            Gets the board's PCB Number.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.ActiveSwitchSettings1">
            <summary>
            Gets the currently active switch 1 setting used by hardware.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.ActiveSwitchSettings2">
            <summary>
            Gets the currently active switch 2 setting used by hardware.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.LinkReady">
            <summary>
            Gets the Link Ready status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.OpticalLinkSpeed">
            <summary>
            Gets the Optical Link Speed.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.LinkFault">
            <summary>
            Gets the Link Fault Led indicator.
            Address: 06 (hex)
            Bits[2]
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.OpticalSpeedIndicator">
            <summary>
            Gets the optical speed indicator.
            Address: 03 (hex)
            Bits[5:6]
            a.	625 MBaud (SW1[5:6] == off, off)
            b.	1.250 GBaud (SW1[5:6] == off, on)
            c.	2.500 GBaud (SW1[5:6] == on, off)
            d.	3.125 GBaud (SW1[5:6] == on, on)
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.ThroughputMode">
            <summary>
            Gets the fair and maximum throughput mode.
            Address: 03 (hex)
            Bit[6]        
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.LinkLossCounter">
            <summary>
            Gets the Link Loss Counts
            Address: 11 (dec)
            Bits[7:0] 
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.IsExtendedFpgaDiagSupported">
            <summary>
            Gets the FPGA FW version and returns true if
            FPGA Ver >= B0; false otherwise.
            Extended Fpga Diagnostics includes:
            1. Optical link loss counter
            </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.SfpStatusTxDisable">
            <summary>
            Gets the SFP Tx Disabled status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.SfpStatusLOS">
            <summary>
            Gets the SFP LOS (Loss of Signal) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.SfpStatusGnd">
            <summary>
            Gets the SFP GND (Ground) status as reported by the FPGA.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.DipSwitch1">
            <summary>
            Gets the DIP switch 1 status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.DipSwitch2">
            <summary>
            Gets the DIP switch 2 status.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PortStatus">
            <summary>
            Gets the list of Port statuses.
            </summary>
            <remarks>
            <para>See Marvell doc MV-S100649-00, Rev. H for PHY register map.</para>
            <para>Note that the 907 Dual GbE FPGA provides data for registers 1,2,3,10,15,17,25
            starting at <b>0x90-0x9D for PHY1</b>, and <b>0xA0-0xAD for PHY2</b></para>
            </remarks>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettingsControlActive">
            <summary>
            Gets a list where each element indicates whether the "Control of PHY Settings"
            of that port is enabled.
            
            1 – Enable control of PHY status from GUI and write settings to EEPROM
            0 – Use settings in EEPROM
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettingsChangeMasterSlaveActive">
            <summary>
            Gets a list where each element indicates whether the "Change Master / Slave" status
            of that port is enabled.
            
            1 – Enable change to master slave status
            0 – Leave status as is from EEPROM
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettingsMasterSlaveActive">
            <summary>
            Gets a list where each element indicates whether the "Master" or "Slave" status
            of that port is enabled.
            
            1 – Master
            0 – Slave
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettings1000BTActive">
            <summary>
            Gets a list where each element indicates whether the "1000 BASE-T" 
            of that port is enabled.
            
            1 – 1000 BASE-T is disabled
            0 – 1000 BASE-T is enabled
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettings100BTActive">
            <summary>
            Gets a list where each element indicates whether the "100 BASE-T" 
            of that port is enabled.
            
            1 – 100 BASE-T is disabled
            0 – 100 BASE-T is enabled
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettings10BTActive">
            <summary>
            Gets a list where each element indicates whether the "10 BASE-T" 
            of that port is enabled.
            
            1 – 10 BASE-T is disabled
            0 – 10 BASE-T is enabled
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettingsControlActiveE">
            <summary>
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Control of PHY Settings"
            of that port is enabled. (Data read from on-board EEPROM)
            
            1 – Enable control of PHY status from GUI and write settings to EEPROM
            0 – Use settings in EEPROM
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettingsChangeMasterSlaveActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Change Master / Slave" status
            of that port is enabled.
            
            1 – Enable change to master slave status
            0 – Leave status as is from EEPROM
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettingsMasterSlaveActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "Master" or "Slave" status
            of that port is enabled.
            
            1 – Master
            0 – Slave
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettings1000BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "1000 BASE-T" 
            of that port is enabled.
            
            1 – 1000 BASE-T is disabled
            0 – 1000 BASE-T is enabled
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettings100BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "100 BASE-T" 
            of that port is enabled.
            
            1 – 100 BASE-T is disabled
            0 – 100 BASE-T is enabled
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettings10BTActiveE">
            <summary> 
            (Data read from on-board EEPROM)
            Gets a list where each element indicates whether the "10 BASE-T" 
            of that port is enabled.
            
            1 – 10 BASE-T is disabled
            0 – 10 BASE-T is enabled
            
            FPGA REG[224] = PHY 0 status with the same bit mapping as REG[240]
            FPGA REG[225] = PHY 1 status with the same bit mapping as REG[241]
            FPGA REG[226] = PHY 2 status with the same bit mapping as REG[242]
            FPGA REG[227] = PHY 3 status with the same bit mapping as REG[243]
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhySettingsChanged">
            <summary> 
            Gets the complete PHY register status E0-E3 (224-227) and F0-F3 (240-243)
            used to determine if changes made in the GUI have been saved in EEPROM or not.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhyStatisticsPacketLoss">
            <summary> 
            Gets the packet loss count of each port        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.BackplaneEnable">
            <summary> 
            Gets the backplane enable/disable status
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.BackplaneRxError">
            <summary> 
            Gets the backplane data receive underflow/overflow erros (Rx error)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.BackplaneTxError">
            <summary> 
            Gets the backplane data transmit underflow/overflow erros (Tx error)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhyPacketDropped">
            <summary> 
            Gets the Packet Dropped LED information
            Address 05 Hex
            Bit [3:0]: packet_dropped_led_n (active low)
            Per copper Ethernet port packet dropped indicator
            Corresponds to LEDs D4,D5,D6,D7
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhyEthernetCuActivityRx">
            <summary> 
            Gets the Ethernet Copper Recive Activity Port information
            Address 04 Hex
            Bit [3:0]: Ethernet Copper Receive Activity Ports [3:0] (active low)        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.PhyEthernetCuActivityTx">
            <summary> 
            Gets the Ethernet Copper Transmit Activity Port information
            Address 04 Hex
            Bit [7:4]: Ethernet Copper Transmit Activity Ports [3:0] (active low)        
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.Voltage12">
            <summary>
            Gets the voltage reading from the 1.2VDC rail on the 907-GEM card (V). Bytes[0-1].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.Voltage25">
            <summary>
            Gets the voltage reading from the 2.5VDC rail on the diagnostics card (V). Bytes[4-5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.Voltage33">
            <summary>
            Gets the voltage reading from the 3.3VDC rail on the 907-GEM card (V). Bytes[2-3].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.Fpga907Gem.Voltage5">
            <summary>
            Gets the voltage reading from the 5VDC rail on the 907-GEM card (V). Bytes[6-7].
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.VideoIOChannel">
            <summary>
            Encapsulates the status for a single video channel.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.VideoIOChannel.#ctor(System.String)">
            <summary>
            Constructs a new VideoIOChannel.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.VideoIOChannel.OnPropertyChanged(System.String)">
            <summary>
            Raises <see cref="E:Focal.Model907.Diagnostics.Models.VideoIOChannel.PropertyChanged"/> for the specified object property. 
            </summary>        
            <param name="propertyName">The name of the property that has
            changed.</param>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.VideoIOChannel.ChannelName">
            <summary>
            Gets the name of this video channel.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.VideoIOChannel.VideoInputActive">
            <summary>
            Gets or Sets the flag indicating that video input is active.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.VideoIOChannel.VideoOutputActive">
            <summary>
            Gets or Sets the flag indicating that video output is active.
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpMsaAndNonMsaTypeAttribute">
            <summary>
            Specifies the type of SfpMsaAndNonMsa of the target element.
            </summary>
            <remarks>
            Typically we apply this attribute to each element in the enumeration
            of supported SfpMsaAndNonMsa Id's so that we know which type of SfpMsaAndNonMsa object to
            instantiate after the Id has been retrieved.
            </remarks>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.#ctor">
            <summary>
            Constructs a new SfpDualRxVideoSdi.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.Id">
            <summary>
            Gets the SFP unique ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            NOTE: THIS IS A PLACE HOLER AND IT IS NOT IMPLEMENTED YET
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.Identifier">
            <summary>
             Gets the SFP Identifier. Table A0, Byte[0].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.SfpConnectorCode">
            <summary>
             Gets the SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.SfpConnectorDescription">
            <summary>
             Gets the SFP Connector Description from SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.TransceiverCode">
            <summary>
             Gets SFP Code for electronic compatibility or optical compatibility. Table A0, Bytes[3-10].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.SfpSubId">
            <summary>
             Gets a sub-ID used to separate SFPs that have the same ID code and the same connector code but are actually not the same SFP.        
             subId = 1 = 3Gbps SDI SFP Coaxial Dual Receiver Medium Reach, Non‐MSA, HD‐BNC
             subId = 2 = SDI SFP Coaxial Dual Receiver Medium Reach, Non‐MSA, HD‐BNC
             subId = 0 = Uknonwn 
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.SfpDescription">
            <summary>
             Gets the SFP Description.
             For now, it will be based on the Sfp Identifier but it could be based in more parameters.
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.VideoActiveCh1">
            <summary>
             Gets the Active Video status for Video Channel 1
             1 = No input Detected
             0 = Input Detected
             Ch1 = Table A2, Byte[110][1]        
             </summary>         
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.VideoActiveCh2">
            <summary>
             Gets the Active Video status for Video Channel 2
             1 = No input Detected
             0 = Input Detected
             Ch2 = Table B2, Byte[110][1] 
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.Wavelength">
            <summary>
             Gets (nm) nominal laser wavelength. Table A0h, Bytes[60-61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpDualRxVideoSdi.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo">
            <summary>
            
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.#ctor">
            <summary>
            Constructs a new SfpSingleSdiToHdmiDviVideo.
            </summary>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.InitializeAnalogTagList">
            <summary>
            Initializes the list of analog tags.
            </summary>        
            <remarks>
            Typically this list is lazily-initialized when someone requests
            the 'alarm active' or 'warning active' property.
            </remarks>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.CalculateExternallylCalibratedSlope(System.Int32)">
            <summary>
            Calculates the slope for a calibration constant at the specified
            offset in the A2 data array using the formula specified in SFF-8472.        
            </summary>
            <remarks>
            Slope is calculated as follows:
            The most significant byte is the integer portion in the range 0 to +255. 
            The least significant byte represents the fractional portion in the
            range of 0.00391 (1/256) to 0.9961 (255/256). 
            </remarks>
            <param name="startIndex"></param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.CalculateExternallyCalibratedRxPower(System.UInt16)">
            <summary>
            Calculates RxPwr (dBm) from the supplied A/D counts using the equation specified in SFF-8472.
            </summary>
            <remarks>
            The equation to calculate an externally calibrated RxPwr is specified in SFF-8472 as:
            <![CDATA[
            RxPwr (uW) = (RxPwr4 * adCounts^4) + (RxPwr3 * adCounts^3) + (RxPwr2 * adCounts^2) + (RxPwr1 * adCounts) + RxPwr0
            ]]>
            The result is in units of 0.1uW.  
            This method converts the uW result to mW.
            </remarks>
            <param name="adCounts">The raw RxPwr A/D counts.</param>
            <returns>RxPwr in mW.</returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.ScaleAnalogValue(System.Double,System.Double,System.Double,System.Double,System.Int32)">
            <summary>
            Scales an a/d value from the sfp (internally calibrated).
            </summary>
            <param name="ADCounts">The A/D counts to scale.</param>
            <param name="scaleFactor"></param>
            <param name="slope"></param>
            <param name="offset"></param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns></returns>
        </member>
        <member name="M:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.ConvertTodBm(System.Double,System.Int32)">
            <summary>
            Converts mW to dBm.
            </summary>
            <param name="mW">The value to convert (milliwatts).</param>
            <param name="numDecimals">The number of decimal points to round the result.</param>
            <returns>The converted dBm value.</returns>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.Id">
            <summary>
            Gets the SFP unique ID.
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.WriteData">
            <summary>
            A means to write data back to the FPGA.
            (typically via I2C... byte startIndex, byte[] dataToWrite).
            NOTE: THIS IS A PLACE HOLER AND IT IS NOT IMPLEMENTED YET
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.Identifier">
            <summary>
             Gets the SFP Identifier. Table A0, Byte[0].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.SfpDescription">
            <summary>
             Gets the SFP Description.
             For now, it will be based on the Sfp Identifier but it could be based in more parameters.
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.SfpConnectorCode">
            <summary>
             Gets the SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.SfpConnectorDescription">
            <summary>
             Gets the SFP Connector Description from SFP Connector Code. Table A0, Byte[2]. From Table 3.3 of Small Form-factor Pluggable (SFP) Transceiver MultiSource Agreement (MSA)
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.VideoMValue">
            <summary>
             Gets the SFP SDI Input detected M value.
             Table A2, Byte[128].
             [128][4] = SDI Input detected M value (1.001 for 23.98, 29.97 or 59.94Hz frame rate)
             0 = 1.000
             1 = 1.001
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.VideoFormatLock">
            <summary>
             Gets the SFP Video Format Lock Status (a.k.a. VIDEO LOCK).
             Table A2, Byte[128].
             [128][3] = VDO_FORMAT_LOCK SDI Input video format supported and synchronised by SDI deserialiser
             0 = Format Unlock or unsupported
             1 = Format Lock
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.VideoIntOrProg">
            <summary>
             Gets the SFP Video I or P type.        
             [128][2] = SDI Input Interlaced or Progressive
             0 = Progressive
             1 = Interlaced
             </summary>        
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.VideoStandardFormat">
            <summary>
             Gets the Video Standard detected by the SFP. A list is used in case more channels are supported in the future.        
             [129][5:0] = See "SfpVideoStandardFormat" enum for actual video standards
             </summary>                
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.VendorName">
            <summary>
             Gets SFP Vendor Name. Table A0, Bytes[20-35].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.VendorPN">
            <summary>
             Gets SFP Vendor Part Number. Table A0h, Bytes[40-55].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.Wavelength">
            <summary>
             Gets (nm) nominal laser wavelength. Table A0h, Bytes[60-61].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.VendorSN">
            <summary>
             Gets SFP Vendor Serial Number. Table A0h, Bytes[68-83].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.DateCode">
            <summary>
             Gets Vendor's manufacturing date code. Table 01h, Bytes[84-91].
             </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.InternallyCalibrated">
            <summary>
            Gets the flag indicating that the SFP reports calibrated diagnostic
            values as opposed to A/D counts. Byte[92:5].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.Temperature">
            <summary>
            Gets the internally measured module temperature (°C). Bytes[96-97].
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.Voltage">
            <summary>
            Gets the internally measured tranceiver supply voltage (V). Bytes[98-99]".
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.AnalogAlarmActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in alarm. 
            </summary>
        </member>
        <member name="P:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.AnalogWarningActive">
            <summary>
            Gets the flag indicating whether one or more of the analog tags is 
            currently in warning. 
            </summary>
        </member>
        <member name="T:Focal.Model907.Diagnostics.Models.SfpSingleSdiToHdmiDviVideo.SfpVideoStandardFormat">
            <summary>
            Enumerates video standard formats supported by the SFP.
            </summary>
        </member>
    </members>
</doc>
