private void UnregisterSessionEvents(IProfilingSession session) { if (this.session == null) { return; } this.session.SessionStarted -= this.OnSessionStarted; this.session.SessionEnded -= this.OnSessionEnded; this.session.SessionCleared -= this.OnSessionCleared; this.session.DataAdded -= this.OnDataAdded; this.session.DataRemoved -= this.OnDataRemoved; }
private void RegisterSession(IProfilingSession session) { this.UnregisterSessionEvents(this.session); this.session = session; this.SessionName = session?.Name; this.NodeProfilingData = new ChartValues <ProfilingDataPoint>(); if (this.session != null && this.session.ProfilingData.Any()) { var dataPoints = this.session.ProfilingData.Select(data => new ProfilingDataPoint(data)); this.NodeProfilingData.AddRange(dataPoints); } this.RegisterSessionEvents(this.session); }
private void OnSessionChanged(IProfilingSession session) => this.SessionChanged?.Invoke(session);