Beispiel #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ProfilingProgressWindow"/> class.
        /// </summary>
        public ProfilingProgressWindow() : base(null)
        {
            _listener = new ProfileSessionListener {
                OnStateChanged = StateChangedHandler
            };

            Caption = "Profiling Progress";

            // This is the user control hosted by the tool window; Note that, even if this class implements IDisposable,
            // we are not calling Dispose on this object. This is because ToolWindowPane calls Dispose on
            // the object returned by the Content property.

            // ReSharper disable once VirtualMemberCallInConstructor
            Content = new ProfilingProgressWindowContent();
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="ProfilingProgressWindowContent"/> class.
        /// </summary>
        public ProfilingProgressWindowContent()
        {
            _sessionListener = new ProfileSessionListener
            {
                OnStateChanged      = ProcessStateChange,
                OnSysInfoRead       = EnqueueTargetSysInfo,
                OnProfilerEvent     = EnqueueProfilerEvent,
                OnDebugStateChanged = ProcessDebugStateChange
            };

            _jitEventProcessor = new ProfilerEventProcessor(this);
            _gcEventProcessor  = new ProfilerEventProcessor(this);

            InitializeComponent();

            InitialiseChart();

            InitializeControlComponents();

            DataContext = this;
        }