public SLIPMessage getSlipMessage() { SLIPMessage message; message = new SLIPMessage(getMessage()); /* Validy if getMessage is valid or if it is null */ return(message); }
public bool encodeSLIPMessage(SLIPMessage message) { EncodeSuccess = false; MessageSize = 0; if (message == null) { return(false); } byte[] slip_message = message.RawMessage; byte message_checksum = message.MessageChecksum; int position = 0; byte tx_byte; MessageResult[position++] = SLIP_FLAG; for (int i = 0; i < (slip_message.Length + 1); i++) { if (position > (SLIP_MAX_DATA - 2)) { return(false); } if (i == slip_message.Length) { tx_byte = message_checksum; } else { tx_byte = slip_message[i]; } if (tx_byte == SLIP_FLAG) { MessageResult[position++] = SLIP_ESC; tx_byte = SLIP_ESC_FLAG; } else if (tx_byte == SLIP_ESC) { MessageResult[position++] = SLIP_ESC; tx_byte = SLIP_ESC_ESC; } else { // do nothing } MessageResult[position++] = tx_byte; } MessageResult[position++] = SLIP_FLAG; MessageSize = position; EncodeSuccess = true; return(true); }