using Edge.Core.Parser.BinaryParser;
using Edge.Core.Parser.BinaryParser.MessageEntity;
using PressureGage_3051.MessageEntity.Incoming;

namespace PressureGage_3051
{
    public class MessageTemplateLookup : IMessageTemplateLookup
    {
        /// <summary>
        /// 
        /// </summary>
        /// <param name="bytes"> msg </param>
        /// <returns></returns>
        public MessageTemplateBase GetMessageTemplateByRawBytes(byte[] bytes)
        {
            if (bytes[1] == 0x03)
            {
                if (bytes[2] == 0x0A)
                    return new ReadUnit_Response();
                else if (bytes[2] == 0x12)
                    return new ReadView_Response();
            }
            else if (bytes[1] == 0x04)
            {
                if (bytes[2] == 0x10)
                    return new ReadPressure_Response();
                else if (bytes[2] == 0x08)
                    return new ReadAlarm_Response();
            }
            else if (bytes[1] == 0x06)
                return new PresetRegisters_Response();
            return null;
        }
    }
}