public byte[] GetBytes(System.IO.Endianness endian) { List <byte> data = new List <byte>(); data.Add((byte)this.Ident); for (int i = 0; i < this.ParamSpecifiers.Length; i++) { var str = this.ParamSpecifiers[i]; switch (str) { case "B": data.Add((byte)this.Parameters[i]); break; case "I": data.AddRange(BitConverter.GetBytes((int)this.Parameters[i]).Reverse()); break; case "H": data.AddRange(BitConverter.GetBytes((int)this.Parameters[i]).Reverse()); break; } } if (endian == System.IO.Endianness.Big) { return(data.ToArray().Reverse().ToArray()); } else { return(data.ToArray()); } }
public byte[] GetBytes(System.IO.Endianness endian) { List <byte> data = new List <byte>(); foreach (var cmd in this.Commands) { data.AddRange(cmd.GetBytes(endian)); } return(data.ToArray()); }