InterfaceSettings Class

This class allows users to set the configuration of a network interface for the NL2 component.

Namespace:  IntervalZero.MaxRT.NL2.Config
Assembly:  IntervalZero.MaxRT.NL2.Config (in IntervalZero.MaxRT.NL2.Config.dll) Version: 1.0.0.0 (File version: 1.0.1)

Syntax

Copy
public class InterfaceSettings : MaxRT.InterfaceSettings, INotifyPropertyChanged

 

The InterfaceSettings type exposes the following members:

Constructors

 

Name Description

Public method

InterfaceSettings (String)

This constructor initializes a new instance of the InterfaceSettings class to represent an existing NL2 interface.

Methods

  Name Description

Public method

AddMsixMessage

Users must use this method to add an MsixMessage object to the NL2 InterfaceSettings object. This method returns the object added to the list. Using the standard List.Add function will not update the NL2 InterfaceSettings object.

Public method

AddRxQueue

Users must use this method to add an RxQueue object to the NL2 InterfaceSettings object. This method returns the object added to the list. Using the standard List.Add function will not update the NL2 InterfaceSettings object.

Public method

AddTxQueue

Users must use this method to add a TxQueue object to the NL2 InterfaceSettings object. This method returns the object added to the list. Using the standard List.Add function will not update the NL2 InterfaceSettings object.

Public method

CreateInterfaceSettings

A static method to create an NL2 interface.

Public method

DeleteInterface

Deletes the NL2 interface.

Note: This operation is irreversible and results in losing all configuration data associated with the deleted network interface.

Public method

GetAllInterfaceSettings

Returns a list of interfaces that are configured on the system for the TCP/IP component.

Public method

RemoveMsixMessage

Users must use this method to remove an MsixMessage object from the NL2 InterfaceSettings object. Using the standard List.Remove function will not update the NL2 InterfaceSettings object.

Public method

RemoveRxQueue

Users must use this method to remove an RxQueue object from the NL2 InterfaceSettings object. Using the standard List.Remove function will not update the NL2 InterfaceSettings object.

Public method

RemoveTxQueue

Users must use this method to remove a TxQueue object from the NL2 InterfaceSettings object. Using the standard List.Remove function will not update the NL2 InterfaceSettings object.

Properties

  Name Description

DeviceInstanceID

Accesses the device Instance ID used by this NL2 interface. This property is optional and can be set to the empty string without altering the behavior of this class.

Driver

Accesses the driver's name for this NL2 interface. This property is either an absolute pathname or a file name of the RTDLL driver for this NL2 device.

Enabled

Controls whether the interface is enabled or disabled. To enable the interface, set this property to true. To disable the interface, set it to false. New interfaces are enabled by default.

FlowControl

Accesses the FlowControlType enumeration specifying the flow control type used by this interface.

HardwareTimestampingEnabled

Controls whether the interface is HardwareTimestampingEnabled. To enable hardware timestamping, set this property to true. To disable hardware timestamping, set it to false. This property is disabled by default.

IngressTimestampingEtherType

Gets or sets the EtherType if HardwareTimestampingEnabled is true.

IngressTimestampingRule

Accesses the IngressTimeStampingRuleType enumeration specifying the Ingress Timestamp rule type used by this interface.

IngressTimestampingUDPPort

Gets or sets the UDP port if HardwareTimestampingEnabled is true.

Interrupt

Accesses the InterruptType enumeration specifying the interrupt type used by this interface.

IsVirtualNic

Gets or sets a value indicating whether this interface is the wRTOS virtual network.

JumboEnabled

Controls whether jumbo frames are enabled for the interface.

JumboMaxPacketSize

If jumbo frames are enabled, specify the maximum jumbo packet size in bytes. The allowed range depends on the NIC.

MsixMessages

Gets or sets the MsixMessages list populated by the NL2 InterfaceSettings object.

MsixNonQueueMessageId

Gets or sets the message ID for non-queue (frame transmission or frame reception) interrupts if InterruptType is RTIN_MSIX. This property will be ignored if InterruptType is not RTIN_MSIX.

Name

Accesses the unique interface name of this NL2 interface. Case is preserved in the value assigned to this property, but case is ignored when comparing this property value to any string.

NonMsixIstIdealProcessor

Gets or sets the non-MSIX Interrupt Service Thread (IST) ideal processor if InterruptType is RTIN_MSIX. This property will be ignored if InterruptType is not RTIN_MSIX.

NonMsixIstPriority

Gets or sets the Interrupt Service Thread (IST) priority for non-MSI-X interrupt types if InterruptType is RTIN_MSIX. This property will be ignored if InterruptType is not RTIN_MSIX

PciBusLocation

Accesses the PCI bus location for this NL2 interface. This property value is a string in the form "X;Y;Z", where X, Y, and Z represent the bus, device, and function values, respectively, for the device.

RxQueues

Gets or sets the RxQueues list populated by the NL2 InterfaceSettings object.

SpeedDuplex

Accesses the SpeedDuplexType enumeration specifying the speed/duplex type used by this interface.

TxQueues

Gets or sets the TxQueue list populated by the NL2 InterfaceSettings object.

Events

  Name Description

Public method

PropertyChanged

An event is triggered when a property value changes.

See Also: