public static SoftFX.Extended.SymbolInfo[] ReadSymbolInfoArray(this MemoryBuffer buffer) { int length = buffer.ReadCount(); var result = new SoftFX.Extended.SymbolInfo[length]; for(int index = 0; index < length; ++index) { result[index] = buffer.ReadSymbolInfo(); } return result; }
public static SoftFX.Extended.SymbolInfo ReadSymbolInfo(this MemoryBuffer buffer) { var result = new SoftFX.Extended.SymbolInfo(); result.Name = buffer.ReadAString(); result.Currency = buffer.ReadAString(); result.SettlementCurrency = buffer.ReadAString(); result.ContractMultiplier = buffer.ReadDouble(); result.Precision = buffer.ReadInt32(); result.RoundLot = buffer.ReadDouble(); result.MinTradeVolume = buffer.ReadDouble(); result.MaxTradeVolume = buffer.ReadDouble(); result.TradeVolumeStep = buffer.ReadDouble(); result.ProfitCalcMode = buffer.ReadProfitCalcMode(); result.MarginCalcMode = buffer.ReadMarginCalcMode(); result.MarginHedge = buffer.ReadDouble(); result.MarginFactor = buffer.ReadInt32(); result.MarginFactorFractional = buffer.ReadNullDouble(); result.Color = buffer.ReadInt32(); result.CommissionType = buffer.ReadCommissionType(); result.CommissionChargeType = buffer.ReadCommissionChargeType(); result.CommissionChargeMethod = buffer.ReadCommissionChargeMethod(); result.LimitsCommission = buffer.ReadDouble(); result.Commission = buffer.ReadDouble(); result.SwapSizeShort = buffer.ReadNullDouble(); result.SwapSizeLong = buffer.ReadNullDouble(); result.IsTradeEnabled = buffer.ReadBoolean(); result.GroupSortOrder = buffer.ReadInt32(); result.SortOrder = buffer.ReadInt32(); result.CurrencySortOrder = buffer.ReadInt32(); result.SettlementCurrencySortOrder = buffer.ReadInt32(); result.CurrencyPrecision = buffer.ReadInt32(); result.SettlementCurrencyPrecision = buffer.ReadInt32(); return result; }