public Subscriber(String tag, MemoryRange range, MemoryChangeHandler callback) { id = Guid.NewGuid(); this.tag = tag; this.range = range; this.callback = callback; }
public void Subscribe(string tag, MemoryRange range, MemoryChangeHandler callback) { Subscriber h; foreach (Subscriber handler in subscribers) { if (range.start == handler.range.start && range.end == handler.range.end) { h = handler; h.callback += callback; Debug.Log(string.Format("{0} subscribed to memory range {1:X8}-{2:X8} as secondary", tag, range.start, range.end)); return; } } h = new Subscriber(tag, range, callback); subscribers.Add(h); Debug.Log(string.Format("{0} subscribed to memory range {1:X8}-{2:X8}", tag, range.start, range.end)); }