Пример #1
0
        public static byte[] Build(
            byte Flag, byte FirstResponseFieldNumber, byte ErrRow, byte[] CmdKeySwitches)
        {
            var soh = new StartHeaderOrder(Flag, FirstResponseFieldNumber, ErrRow, CmdKeySwitches);
            var buf = soh.ToBytes();

            return(buf);
        }
Пример #2
0
        public static WtdOrderBase Factory(InputByteArray InputArray)
        {
            WtdOrderBase orderBase = null;
            var          b1        = InputArray.PeekByte(0);
            var          wtdOrder  = b1.ToWtdOrder();

            if (wtdOrder == null)
            {
                return(null);
            }

            if (wtdOrder.Value == WtdOrder.StartHeader)
            {
                orderBase = new StartHeaderOrder(InputArray);
            }

            else if (wtdOrder.Value == WtdOrder.SetBufferAddress)
            {
                orderBase = new SetBufferAddressOrder(InputArray);
            }

            else if (wtdOrder.Value == WtdOrder.RepeatToAddress)
            {
                orderBase = new RepeatToAddressOrder(InputArray);
            }

            else if (wtdOrder.Value == WtdOrder.TransparentData)
            {
                orderBase = new TransparentDataOrder(InputArray);
            }

            else if (wtdOrder.Value == WtdOrder.StartField)
            {
                orderBase = new StartFieldOrder(InputArray);
            }

            else if (wtdOrder.Value == WtdOrder.InsertCursor)
            {
                orderBase = new InsertCursorOrder(InputArray);
            }
            else if (wtdOrder.Value == WtdOrder.WriteStructuredField)
            {
                orderBase = WriteStructuredFieldOrder.Factory(InputArray);
            }
            else if (wtdOrder.Value == WtdOrder.EraseToAddress)
            {
                orderBase = new EraseToAddressOrder(InputArray);
            }

            return(orderBase);
        }