// Store a new price update (use Symbol as key) public void Update(PriceUpdate update) { if (m_map.ContainsKey(update.Symbol)) { update.CopyTo(m_map[update.Symbol]); } else { m_map[update.Symbol] = new PriceUpdate(update); } }
public void CopyTo(PriceUpdate update) { update.Symbol = Symbol; update.LastTradePrice = LastTradePrice; update.LastTradeSize = LastTradeSize; update.LastTradeTime = LastTradeTime; update.Bid = Bid; update.BidSize = BidSize; update.Ask = Ask; update.AskSize = AskSize; update.TotalVolume = TotalVolume; update.OpenPrice = OpenPrice; update.HighPrice = HighPrice; update.LowPrice = LowPrice; update.ClosePrice = ClosePrice; }
// Copy Constructor public PriceUpdate(PriceUpdate update) { Symbol = update.Symbol; LastTradePrice = update.LastTradePrice; LastTradeSize = update.LastTradeSize; LastTradeTime = update.LastTradeTime; Bid = update.Bid; BidSize = update.BidSize; Ask = update.Ask; AskSize = update.AskSize; TotalVolume = update.TotalVolume; OpenPrice = update.OpenPrice; HighPrice = update.HighPrice; LowPrice = update.LowPrice; ClosePrice = update.ClosePrice; }