using Edge.Core.Parser.BinaryParser.Attributes; using Edge.Core.Parser.BinaryParser.MessageEntity; using System; namespace HengShan_Pump_NonIC_Plus.MessageEntity { [Serializable] public abstract class NonICMessageTemplateResponseBase : MessageTemplateBase { public enum EnumResult : byte { 成功 = 0x55, 失败 = 0xAA } /// /// 数据包头,同步头 /// [Format(1, EncodingType.BIN, -101)] public virtual byte Prefix { get; set; } /// /// 枪号,无枪号为0x00 /// [Format(1, EncodingType.BIN, -100)] public virtual byte Nozzle { get; set; } /// /// 消息长度 /// [Format(1, EncodingType.BIN, -99)] public virtual int MessageLength { get; set; } ///// ///// fixed legth /// cmd ///// [Format(1, EncodingType.BIN, -98)] public virtual byte CMD { get; set; } //[EnumerableFormat("MessageLength", -97)] //public List MessageList { get; set; } //[Format(1, EncodingType.BIN, 1000)] //public virtual byte XRL { get; set; } public override string ToLogString() { return this.GetType().Name + " " + base.ToLogString().Replace("FrameSequenceAndControlRaw:", "(message length: 0x" + MessageLength + ", cmd: 0x" + CMD); } } [Serializable] public abstract class NonICMessageTemplateBase : MessageTemplateBase { public enum Result { 成功, 失败 } /// /// 数据包头,同步头 /// [Format(1, EncodingType.BIN, -101)] public virtual byte Prefix { get { return 0x9F; } set {; } } /// /// 枪号,无枪号为0x00 /// [Format(1, EncodingType.BIN, -100)] public virtual byte Nozzle { get; set; } /// /// 消息长度 /// [Format(1, "%OnSerializingBytesCount", EncodingType.BIN, -99)] public virtual int MessageLength { get; set; } ///// ///// fixed legth /// cmd ///// [Format(1, EncodingType.BIN, -98)] public virtual byte CMD { get; set; } [Format(1, EncodingType.BIN, 1000)] public virtual byte XRL { get; set; } public override string ToLogString() { return this.GetType().Name + " " + base.ToLogString().Replace("FrameSequenceAndControlRaw:", "(message length: 0x" + MessageLength + ", cmd: 0x" + CMD); } } }