Skip to content
A playground for writing realtime graphs in Gtk
C Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Some of this code is good. Some of this code is very bad. It is a prototype,
nothing more, nothing less.

Particularly bad/nasty/unreadable code is in main.c. It is also Linux specific.

UberGraph - A realtime graph similar to that found in Gnome System Monitor.
            However, it is much faster and smoother. It runs at a higher
            framerate with less X bandwidth.

            It uses multiple pixmaps on the server-side and shifts data between
            them to lower the X bandwidth.  New data is rendered and clipped so
            that the transfer is small.  If frame movement is < 1 pixel, the
            framerate is dynamically reduced.

UberHeatMap - This is going to eventually be similar to UberGraph but as a
              heat map.  It's not very far yet, however.

GRing - A small circular buffer meant for values in the realtime graphs.  This
        is most definitely not meant to be used as a byte buffer, so don't use
        it as such.


           GRing *ring = g_ring_sized_new(sizeof(gdouble), 60, NULL);


           static void free_array_func (gpointer data) {
           	GArray **ar = data;
           GRing *ring = g_ring_sized_new(sizeof(GArray*), 60, free_array_func);

Something went wrong with that request. Please try again.