protected byte[] buildMessageByteArray(KLFCommon.ClientMessageID id, byte[] data, byte[] prefix = null)
{
int prefix_length = 0;
if (prefix != null)
prefix_length = prefix.Length;
int msg_data_length = 0;
if (data != null)
msg_data_length = data.Length;
byte[] message_bytes = new byte[KLFCommon.MSG_HEADER_LENGTH + msg_data_length + prefix_length];
int index = 0;
if (prefix != null)
{
prefix.CopyTo(message_bytes, index);
index += 4;
}
KLFCommon.intToBytes((int)id).CopyTo(message_bytes, index);
index += 4;
KLFCommon.intToBytes(msg_data_length).CopyTo(message_bytes, index);
index += 4;
if (data != null)
{
data.CopyTo(message_bytes, index);
index += data.Length;
}
return message_bytes;
}