Xylem.Common.Hardware.Interfaces.Ports.PortCore
Marker for incoming record at time of the PC
Interface for port data event arguments
Read data
Write data
Reading received time
Writing received time
Setting the data marker
Getting the data marker
Interface for Ports
event for record received, either bytes or string
event for record received, either bytes or string
set specific mark
and flush or delete all incoming byte from buffer when SyncMarkRecord is or
if the port needs stuff to open, always open for better logical handling
close and dispose all connections
indicates if the Port is open (also on Ports that did not have an open state)
Write byte[] to the Stream/Port on Child Class
wrapped with base class error handling
Array of bytes to write
discard all buffers
Return the port name
name of the port as string
Collection of port settings
Assigns a port name and creates the serial port object
Port name e.g. "COM2"
setup of port type from name (referenced as "Type" in config file)
using dotNets for connection
using dotNets for connection
Container for port configuration
Slot number
Request port settings
Streaming port settings
Streaming port settings
Definition of type for slot
Cordonel used as DUT with two serial ports
Cordonel used as temperature meter with one serial port streaming the temperature
Store Port settings set most likely from transmit protocol
The transmission protocol needs to inform the communication port how to set up,
this is the data container.
- String delimiter for ASCII to support others than LF "\n",
- Flexible DataBits,
- Flexible parity.
String delimiter for ASCII to support others than LF "\n"
Flexible DataBits to support 7 bits.
Flexible parity
start of receiving synchronization byte at byte receive routine
syncByte == null: use the readLine routine (ASCII) and NOT the BYTE routine,
lengthPosition and additionalLength are not used
position of length information field in received BYTE record
lengthIndex == null: take the constant receive length of additionalLength
because the record doesn't contain length information
additional record length NOT covert by the record length information field
lengthIndex == null: constant length for received record
Being used for the BYTE records indicated by a valid syncByte,
not being used for ASCII records.
Response time out in milliseconds
BaudRate for Port
lower threshold for buffer flushing if dataMarker != SkipDecoding
receiveBufferFlushThreshold == null: never flush the communication buffer
receiveBufferFlushThreshold == 0: flush always the communication buffer
receiveBufferFlushThreshold == x: flush communication buffer if it exceeds x Byte
waste old records if an up-to-date record is being needed for start/stop synchronization
of a measurement. This is the level at which the old data have to be flushed because the
data have been dammed up in the communication port input buffer which means they are to
old for synchronization purposes.
///
a special implementation may require the doubling of the sync byte to re-synchronize