Microsoft.Protocols.TestTools.StackSdk.RemoteDesktop.Rdpbcgr.SlowPathOutputPdu.EncodeOrders C# (CSharp) Method

EncodeOrders() private method

private EncodeOrders ( TS_UPDATE_ORDERS ordersData ) : byte[]
ordersData TS_UPDATE_ORDERS
return byte[]
        private byte[] EncodeOrders(TS_UPDATE_ORDERS ordersData)
        {
            List<byte> totalBuffer = new List<byte>();

            RdpbcgrEncoder.EncodeStructure(totalBuffer, ordersData.shareDataHeader);

            List<byte> buffer = new List<byte>();

            RdpbcgrEncoder.EncodeStructure(buffer, (ushort)ordersData.updateType);
            RdpbcgrEncoder.EncodeStructure(buffer, ordersData.pad2OctetA);
            RdpbcgrEncoder.EncodeStructure(buffer, ordersData.numberOrders);
            RdpbcgrEncoder.EncodeStructure(buffer, ordersData.pad2OctetsB);
            RdpbcgrEncoder.EncodeBytes(buffer, ordersData.orderData);

            if (ordersData.shareDataHeader.compressedType != compressedType_Values.None)
            {
                RdpbcgrEncoder.EncodeBytes(
                    totalBuffer, serverSessionContext.Compress(ordersData.shareDataHeader.compressedType, buffer.ToArray()));
            }
            else
            {
                RdpbcgrEncoder.EncodeBytes(totalBuffer, buffer.ToArray());
            }
            return totalBuffer.ToArray();
        }