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);
        }
Example #3
0
 private void OnSessionChanged(IProfilingSession session) => this.SessionChanged?.Invoke(session);