Posts Tagged ‘C++’


NetDebugPlot: Real-time charts for debugging

September 8, 2012

I just released NetDebugPlot, a tool to debug and visualize program internals. It’s a basic real-time line chart viewer that can get connected to a local or remote program via NetDebugLog.

NetDebugPlot: real-time chart for debugging

Here is the feature list:

  • Real-time line charts
  • Scale time and Y axis with scroll mouse or text boxes
  • Each series has its own color
  • Pause chart (data continues to be received)
  • Save chart to .jpg image
  • Change client’s port number

NetDebugLog is an open source C++ client for NetDebugPlot (GitHub project page). There are 1 .cpp and 1 .h files to include in a project to make it all work. It consists of a TCP client, a couple configuration and logging functions. It’s currently implemented with Winsock and QueryPerformanceCounter (high resolution timer) and could easily be ported to other platforms.

Here is how to use it:

#include <iostream>
#include "NetDebugLog/NetDebugLog.h"

int main(int argc, char* argv[])
	static int delay = 33;

	// Those are default

	while (true)
		float val1 = (float)((rand() % 25)*(rand() % 2 == 0?1:-1));
		float val2 = val1 + (float)(rand() % 25);

		NetLog("test", val2);


	return 0;

More screenshots with various series and zoom levels / time scales:

NetDebugPlot: real-time chart and data series

NetDebugPlot: real-time chart and zooming screenshot

Download and more info here