A playground for writing realtime graphs in Gtk
C
Pull request Compare This branch is 11 commits behind chergert:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
build
demos
src
.gitignore
Makefile
Makefile.am
README
autogen.sh
configure.ac
libuber.pc.in

README

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.

        Example:

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

           or

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