UniPRT SDK  v1.0.0.0
UniPRT.Sdk.Comm.AComm Class Referenceabstract

Abstract class that implements default functionality for IComm interface class. More...

Inheritance diagram for UniPRT.Sdk.Comm.AComm:
UniPRT.Sdk.Comm.IComm UniPRT.Sdk.Comm.TcpConnection

Public Member Functions

abstract void Close ()
 Closes a connection.
 
abstract void Open ()
 Opens a connection.
 
abstract byte[] Read ()
 Read all bytes available.
 
virtual void Read (BinaryWriter binDataIn)
 Reads all bytes available into the stream passed in.
 
virtual void WaitForData (int msTimeOut)
 Waits until data available BytesAvailable in current thread. Current thread sleeps until data received or timeout reached. Blocking call.
More...
 
virtual void Write (BinaryReader binReader)
 Write from input stream to output stream
More...
 
abstract void Write (byte[] dataOut)
 Writes all bytes from the array passed in.
 
virtual void WriteAndWaitForResponse (BinaryWriter binDataIn, BinaryReader binDataOut, int responseStartTimeOut, int responseEndTimeOut, string completetionToken)
 Write binDataOut stream data to output stream and return data received in binDataIn stream. Data returned is any data received or up to completion token if received. Wait for response timeout before returning. More...
 
virtual byte[] WriteAndWaitForResponse (byte[] dataOut, int responseStartTimeOut, int responseEndTimeOut, string completetionToken)
 Write byte data to output stream and return data received. Data returned is any data received or up to completion token if received. Wait for response timeout before returning. More...
 

Properties

abstract int BytesAvailable [get]
 
abstract bool Connected [get]
 
abstract string Descriptor [get]
 

Detailed Description

Abstract class that implements default functionality for IComm interface class.

Member Function Documentation

◆ WaitForData()

virtual void UniPRT.Sdk.Comm.AComm.WaitForData ( int  msTimeOut)
virtual

Waits until data available BytesAvailable in current thread. Current thread sleeps until data received or timeout reached. Blocking call.

Parameters
[in]msTimeOutMillisecond timeout before return if no data received.

Implements UniPRT.Sdk.Comm.IComm.

◆ Write()

virtual void UniPRT.Sdk.Comm.AComm.Write ( BinaryReader  binReader)
virtual

Write from input stream to output stream

Parameters
[in]binReaderSource data to send

Implements UniPRT.Sdk.Comm.IComm.

◆ WriteAndWaitForResponse() [1/2]

virtual void UniPRT.Sdk.Comm.AComm.WriteAndWaitForResponse ( BinaryWriter  binDataIn,
BinaryReader  binDataOut,
int  responseStartTimeOut,
int  responseEndTimeOut,
string  completetionToken 
)
virtual

Write binDataOut stream data to output stream and return data received in binDataIn stream. Data returned is any data received or up to completion token if received. Wait for response timeout before returning.

Parameters
[out]binDataInDestination stream to store response received from connection.
[in]binDataOut
Source stream data to write to connection.
[in]responseStartTimeOutTimeout, milliseconds, to wait for first data to be received. Time to first byte.
[in]responseEndTimeOutTimeout, milliseconds, of no new data received. Time after last byte.
[in]completetionTokenString token denoting the end of the response expected. This can be empty string if simply want to wait for response after writing data to connection.

Implements UniPRT.Sdk.Comm.IComm.

◆ WriteAndWaitForResponse() [2/2]

virtual byte [] UniPRT.Sdk.Comm.AComm.WriteAndWaitForResponse ( byte[]  dataOut,
int  responseStartTimeOut,
int  responseEndTimeOut,
string  completetionToken 
)
virtual

Write byte data to output stream and return data received. Data returned is any data received or up to completion token if received. Wait for response timeout before returning.

Return values
byte[]Array of bytes received from connection.
Data returned is any data received or up to completetionToken if token received
Parameters
[in]dataOut
Source byte array to write to connection.
[in]responseStartTimeOutTimeout, milliseconds, to wait for first data to be received. Time to first byte.
[in]responseEndTimeOutTimeout, milliseconds, of no new data received. Time after last byte.
[in]completetionTokenString token denoting the end of the response expected. This can be empty string if simply want to wait for response after writing data to connection.

Implements UniPRT.Sdk.Comm.IComm.