FastQuant.ExecutionCommandStreamer.Read C# (CSharp) Method

Read() public method

public Read ( BinaryReader reader, byte version ) : object
reader System.IO.BinaryReader
version byte
return object
        public override object Read(BinaryReader reader, byte version)
        {
            var e = new ExecutionCommand();
            e.Id = reader.ReadInt32();
            e.Type = (ExecutionCommandType)reader.ReadByte();
            e.DateTime = new DateTime(reader.ReadInt64());
            e.TransactTime = new DateTime(reader.ReadInt64());
            e.OrderId = reader.ReadInt32();
            e.InstrumentId = reader.ReadInt32();
            e.ProviderId = reader.ReadByte();
            e.RouteId = reader.ReadByte();
            e.PortfolioId = reader.ReadInt32();
            e.ClientId = reader.ReadInt32();
            e.Side = (OrderSide)reader.ReadByte();
            e.OrdType = (OrderType)reader.ReadByte();
            e.TimeInForce = (TimeInForce)reader.ReadByte();
            e.ExpireTime = new DateTime(reader.ReadInt64());
            e.Price = reader.ReadDouble();
            e.StopPx = reader.ReadDouble();
            e.Qty = reader.ReadDouble();
            if (version >= 1)
            {
                e.MinQty = reader.ReadDouble();
                e.PegDifference = reader.ReadDouble();
                e.ExecInst = reader.ReadString();
            }
            e.OCA = reader.ReadString();
            e.Text = reader.ReadString();
            if (reader.ReadBoolean())
                e.Account = reader.ReadString();
            if (reader.ReadBoolean())
                e.ClientID = reader.ReadString();
            if (reader.ReadBoolean())
            {
                e.Fields = (ObjectTable)this.streamerManager.Deserialize(reader);
            }
            e.AlgoId = reader.ReadInt32();
            e.ClOrderId = reader.ReadString();
            return e;
        }