Imports _485_BurningTool.CommunicationFlow Public MustInherit Class Transmitter Public mCommunicationFlow As CommunicationProtocol ' 发送数据方法 Public MustOverride Sub SendData(data As Cmdconfig) Public MustOverride Function SendData(data As Byte()) As Boolean '获取发送器接收数据 Public MustOverride Function ReceiveData(g_comfig As Cmdconfig) As Cmdconfig '判断发送器实体化没有 Public MustOverride Function IsTransmitter() As Boolean '打开发送器 Public MustOverride Function OpenTransmitter() As Boolean '关闭发送器 Public MustOverride Sub CloseTransmitter() '获取发送器状态 Public MustOverride Function GetTransmitterStatus() As Boolean '设置发送器参数 Public MustOverride Function SetTransmitterParameter(ParamArray params() As Object) As Boolean ' 清楚发送数据 Public MustOverride Sub ClearSendData() Public MustOverride Sub ClearReadData() Public CommunicationTypeindex As Integer '创建发送器对象 Public Shared Function CreateTransmitter(TransmitterType As CommunicationType, gControl As Control) As Transmitter 'CommunicationTypeindex = TransmitterType Select Case TransmitterType Case CommunicationType.SerialPort Return New SerialController(gControl) Case CommunicationType.Udp Return New DevNetworkCommunication(gControl) Case Else Return Nothing End Select End Function Public Sub AddQueue(c As Control, rl As RuningLogConfig, Optional lev As Integer = 0) If IsNothing(mCommunicationFlow) OrElse IsNothing(mCommunicationFlow.UpdateUIqueue) OrElse IsNothing(c) OrElse IsNothing(rl) Then Return mCommunicationFlow.UpdateUIqueue.Enqueue((c, rl, lev)) End Sub End Class