/// <summary> /// --------------------------------------------------------------------------------- /// -- Message Header -- /// --------------------------------------------------------------------------------- /// -- MessageID | Message Property | SimNum | Order ID | Package Top -- /// -- 0000 | 0000 | 0000 0000 0000 | 0000 | -- /// --------------------------------------------------------------------------------- /// --------------------------------------------------------------------------------- /// </summary> /// <param name="messageName"></param> /// <param name="realBody">assume no subpackage</param> /// <returns></returns> private byte[] GetHeader(UpMessageID messageName, byte[] realBody, out ushort headerOrderID) { var messageId = encoder.Encode((ushort)messageName); var messageProperty = encoder.Encode((ushort)realBody.Length); var simnumData = encoder.EncodeBCD(simnum, 12); headerOrderID = orderID; var orderIDData = encoder.Encode(orderID++); IList <byte[]> lst = new List <byte[]>(); lst.Add(messageId); lst.Add(messageProperty); lst.Add(simnumData); lst.Add(orderIDData); return(GetFullData(lst)); }
public void EncodeBCD(string input, byte[] except) { var output = encoder.EncodeBCD(input, input.Length); for (int i = 0; i < except.Length; i++) { Assert.Equal(except[i], output[i]); } }