Click or drag to resize

MultichannelConnection Class

Base class for Link-OS printers which support separate printing and status channels.
Inheritance Hierarchy

Namespace:  Zebra.Sdk.Comm
Assembly:  SdkApi.Core (in SdkApi.Core.dll) Version: 2.15.2634
Syntax
public abstract class MultichannelConnection : ConnectionWithWriteLogging, 
	Connection

The MultichannelConnection type exposes the following members.

Properties
  NameDescription
Public propertyConnected
Returns true if the connection is open.
Public propertyMaxTimeoutForRead
Gets or sets the maximum time, in milliseconds, to wait for any data to be received.
Public propertyPrintingChannel
Gets the underlying printing Connection of this MultichannelConnection.
Public propertySimpleConnectionName
Gets a human-readable description of the connection.
Public propertyStatusChannel
Gets the underlying status StatusConnection of this MultichannelConnection.
Public propertyTimeToWaitForMoreData
Gets or sets the maximum time, in milliseconds, to wait in-between reads after the initial read.
Top
Methods
  NameDescription
Public methodAddWriteLogStream
Sets the stream to log the write data to.
Public methodBytesAvailable
Returns an estimate of the number of bytes that can be read from this connection without blocking.
Public methodClose
Closes both the printing and status channels of this MultichannelConnection.
Public methodClosePrintingChannel
Closes the printing channel of this MultichannelConnection.
Public methodCloseStatusChannel
Closes the status channel of this MultichannelConnection.
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Public methodGetConnectionReestablisher
Returns a ConnectionReestablisher which allows for easy recreation of a connection which may have been closed.
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodOpen
Opens both the printing and status channel of this Multichannel connection.
Public methodOpenPrintingChannel
Opens the printing channel of this Multichannel connection.
Public methodOpenStatusChannel
Opens the status channel of this Multichannel connection.
Public methodRead
Reads all the available data from the connection. This call is non-blocking.
Public methodRead(BinaryWriter)
Reads all the available data from the connection.
Public methodReadChar
Reads the next byte of data from the connection.
Public methodSendAndWaitForResponse(Byte, Int32, Int32, String)
Sends dataToSend and returns the response data.
Public methodSendAndWaitForResponse(BinaryWriter, BinaryReader, Int32, Int32, String)
Sends data from sourceStream and writes the response data to destinationStream.
Public methodSendAndWaitForValidResponse(Byte, Int32, Int32, ResponseValidator)
Sends dataToSend and returns the response data.
Public methodSendAndWaitForValidResponse(BinaryWriter, BinaryReader, Int32, Int32, ResponseValidator)
Sends data from sourceStream and writes the response data to destinationStream.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodWaitForData
Causes the currently executing thread to sleep until BytesAvailable > 0, or for a maximum of maxTimeout milliseconds.
Public methodWrite(Byte)
Writes data.Length bytes from the specified byte array to this output stream.
Public methodWrite(BinaryReader)
Writes all available bytes from the data source to this output stream.
Public methodWrite(Byte, Int32, Int32)
Writes length bytes from data starting at offset.
Top
Remarks
This class conforms to a standard Connection and if only the Connection methods are used, the SDK will attempt to open both the printing and status channels. A MultichannelConnection will use the raw Connection when a method is called directly. Furthermore, when using a ZebraPrinterLinkOs in conjunction with a MultichannelConnection, the ZebraPrinterLinkOs will attempt to use whichever connection is the most efficient. If you wish to only open up a specific channel, use either the OpenPrintingChannel or OpenStatusChannel method and their corresponding ClosePrintingChannel and CloseStatusChannel method.
See Also