Skip to content

nzjrs/uber-graph

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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);

About

A playground for writing realtime graphs in Gtk

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 100.0%