Example #1
0
		public bool Initialize(ProfilerWindowBase mainWindow, Connection connection, Snapshot snapshot)
		{
			if(mainWindow == null)
				throw new ArgumentNullException("mainWindow");
			if(connection == null)
				throw new ArgumentNullException("connection");

			m_mainWindow = mainWindow;
			m_connection = connection;
			m_snapshot = snapshot;

			Graph.GraphPane.Title.Text = "Performance Counters";
			Graph.GraphPane.XAxis.Title.Text = "Time";
			Graph.GraphPane.YAxis.Title.Text = "Value";

			try
			{
				UpdateCounters();
				m_refreshTimer.Enabled = true;
				return true;
			}
			catch
			{
				MessageBox.Show("This connection does not have any performance counter data.", "Performance Counter Visualizer",
					MessageBoxButtons.OK, MessageBoxIcon.Error);
				return false;
			}
		}
Example #2
0
		public bool Initialize(ProfilerWindowBase mainWindow, Connection connection, Snapshot snapshot)
		{
			if(connection == null)
				throw new ArgumentNullException("connection");

			m_connection = connection;
			this.Text = Utilities.GetStandardCaption(connection);

			return true;
		}
Example #3
0
		public bool Initialize(ProfilerWindowBase mainWindow, Connection connection, Snapshot snapshot)
		{
			if(mainWindow == null)
				throw new ArgumentNullException("mainWindow");
			if(connection == null)
				throw new ArgumentNullException("connection");

			m_mainWindow = mainWindow;
			m_connection = connection;
			m_snapshot = snapshot;

			UpdateHotspots();
			return true;
		}
Example #4
0
		public bool Initialize(ProfilerWindowBase mainWindow, Connection connection, Snapshot snapshot)
		{
			if(mainWindow == null)
				throw new ArgumentNullException("mainWindow");
			if(connection == null)
				throw new ArgumentNullException("connection");

			m_mainWindow = mainWindow;
			m_connection = connection;
			m_snapshot = snapshot;
			m_refreshTimer.Enabled = m_connection.IsConnected;

			UpdateFunctionList();
			return true;
		}
Example #5
0
		public VisualizerToolbar(Snapshot snapshot, IVisualizer visualizer)
		{
			if(snapshot == null)
				throw new ArgumentNullException("snapshot");
			if(visualizer == null)
				throw new ArgumentNullException("visualizer");

			m_snapshot = snapshot;
			m_visualizer = visualizer;

			InitializeComponent();

			m_visualizer.Refreshed += new EventHandler(m_visualizer_Refreshed);
			if(m_snapshot.Id == 0 && m_visualizer.SupportsRefresh)
			{
				RefreshButton.Visible = true;
			}
			else
			{
				RefreshButton.Visible = false;
			}

			UpdateSnapshotText();
		}
Example #6
0
		public void Snapshot(string name)
		{
			lock(m_lock)
			{
				Flush();

				using(var session = OpenSession())
				using(var tx = session.BeginTransaction(IsolationLevel.Serializable))
				{
					Snapshot snapshot = new Snapshot();
					snapshot.Name = name;
					snapshot.TimeStamp = DateTime.Now.ToFileTime();
					session.Save(snapshot);

					string sampleQuery = string.Format("insert into Sample (ThreadId, FunctionId, Time, SnapshotId) select s.ThreadId, s.FunctionId, s.Time, {0} from Sample s where SnapshotId = 0", snapshot.Id);
					session.CreateQuery(sampleQuery).ExecuteUpdate();
					string callQuery = string.Format("insert into Call (ThreadId, ParentId, ChildId, Time, SnapshotId) select ThreadId, ParentId, ChildId, Time, {0} from Call where SnapshotId = 0", snapshot.Id);
					session.CreateQuery(callQuery).ExecuteUpdate();

					tx.Commit();
				}
			}
		}
Example #7
0
		public bool Initialize(ProfilerWindowBase mainWindow, Connection connection, Snapshot snapshot)
		{
			if(mainWindow == null)
				throw new ArgumentNullException("mainWindow");
			if(connection == null)
				throw new ArgumentNullException("connection");

			m_mainWindow = mainWindow;
			m_connection = connection;
			m_snapshot = snapshot;

			var toolstrip = mainWindow.GetToolStrip(this);
			m_toolstripButton = new ToolStripSplitButton("Filters");
			m_toolstripButton.Image = new Bitmap(SlimTuneUI.CoreVis.Properties.Resources.FiltersButtonImage);

			m_filters = GetFilters();
			RefreshFilters();

			toolstrip.Items.Add(m_toolstripButton);

			UpdateTopLevel();
			return true;
		}