public void SendNoReply(int slaveAddress, BufferFrame message) { if (slaveAddress == linkLayer.GetBroadcastAddress()) { if (nextBroadcastMessage != null) { throw new LinkLayerBusyException("Broadcast message pending"); } else { nextBroadcastMessage = message; } } else { SlaveConnection slave = GetSlaveConnection(slaveAddress); if (slave != null) { if (slave.IsMessageWaitingToSend()) { throw new LinkLayerBusyException("Message pending"); } else { slave.nextMessage = message; slave.requireConfirmation = false; } } } }
public bool IsChannelAvailable(int slaveAddress) { SlaveConnection slave = GetSlaveConnection(slaveAddress); if (slave != null) { if (slave.IsMessageWaitingToSend() == false) { return(true); } } return(false); }
public void RequestClass2Data(int slaveAddress) { SlaveConnection slave = GetSlaveConnection(slaveAddress); if (slave != null) { if (slave.IsMessageWaitingToSend()) { throw new LinkLayerBusyException("Message pending"); } else { slave.requestClass2Data = true; } } }