diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/Makefile.am | 2 | ||||
| -rw-r--r-- | src/gtk_fb.c | 36 | ||||
| -rw-r--r-- | src/main.c | 62 | 
3 files changed, 50 insertions, 50 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 2ae0baf..35f8fd3 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -3,4 +3,4 @@ glimmer_SOURCES = \  	main.c	\  	gtk_fb.c  glimmer_CPPFLAGS = -I@top_srcdir@/rototiller/src -glimmer_LDADD = @top_builddir@/rototiller/src/.libs/librototiller.a -lm +glimmer_LDADD = @top_builddir@/rototiller/src/.libs/libtil.a -lm diff --git a/src/gtk_fb.c b/src/gtk_fb.c index 1e4fdf5..2306db5 100644 --- a/src/gtk_fb.c +++ b/src/gtk_fb.c @@ -19,8 +19,8 @@  #include <inttypes.h>  #include <stdlib.h> -#include "fb.h" -#include "settings.h" +#include <til_fb.h> +#include <til_settings.h>  /* glimmer's GTK+-3.0 backend fb for rototiller */ @@ -64,7 +64,7 @@ static gboolean resized(GtkWidget *widget, GdkEvent *event, gpointer user_data)  /* parse settings and get the output window realized before   * attempting to create any pages "similar" to it.   */ -static int gtk_fb_init(const settings_t *settings, void **res_context) +static int gtk_fb_init(const til_settings_t *settings, void **res_context)  {  	const char	*fullscreen;  	const char	*size; @@ -74,11 +74,11 @@ static int gtk_fb_init(const settings_t *settings, void **res_context)  	assert(settings);  	assert(res_context); -	fullscreen = settings_get_value(settings, "fullscreen"); +	fullscreen = til_settings_get_value(settings, "fullscreen");  	if (!fullscreen)  		return -EINVAL; -	size = settings_get_value(settings, "size"); +	size = til_settings_get_value(settings, "size");  	if (!size && !strcasecmp(fullscreen, "off"))  		return -EINVAL; @@ -102,7 +102,7 @@ static int gtk_fb_init(const settings_t *settings, void **res_context)  } -static void gtk_fb_shutdown(fb_t *fb, void *context) +static void gtk_fb_shutdown(til_fb_t *fb, void *context)  {  	gtk_fb_t	*c = context; @@ -120,9 +120,9 @@ static void gtk_fb_shutdown(fb_t *fb, void *context)   */  static gboolean draw_cb(GtkWidget *widget, cairo_t *cr, gpointer user_data)  { -	fb_t	*fb = user_data; +	til_fb_t	*fb = user_data; -	fb_flip(fb); +	til_fb_flip(fb);  	return FALSE;  } @@ -138,7 +138,7 @@ static gboolean queue_draw_cb(GtkWidget *widget, GdkFrameClock *frame_clock, gpo  } -static int gtk_fb_acquire(fb_t *fb, void *context, void *page) +static int gtk_fb_acquire(til_fb_t *fb, void *context, void *page)  {  	gtk_fb_t	*c = context;  	gtk_fb_page_t	*p = page; @@ -153,7 +153,7 @@ static int gtk_fb_acquire(fb_t *fb, void *context, void *page)  } -static void gtk_fb_release(fb_t *fb, void *context) +static void gtk_fb_release(til_fb_t *fb, void *context)  {  	gtk_fb_t	*c = context; @@ -161,7 +161,7 @@ static void gtk_fb_release(fb_t *fb, void *context)  } -static void * gtk_fb_page_alloc(fb_t *fb, void *context, fb_page_t *res_page) +static void * gtk_fb_page_alloc(til_fb_t *fb, void *context, til_fb_page_t *res_page)  {  	gtk_fb_t	*c = context;  	gtk_fb_page_t	*p; @@ -192,7 +192,7 @@ static void * gtk_fb_page_alloc(fb_t *fb, void *context, fb_page_t *res_page)  } -static int gtk_fb_page_free(fb_t *fb, void *context, void *page) +static int gtk_fb_page_free(til_fb_t *fb, void *context, void *page)  {  	gtk_fb_t	*c = context;  	gtk_fb_page_t	*p = page; @@ -205,11 +205,11 @@ static int gtk_fb_page_free(fb_t *fb, void *context, void *page)  /* XXX: due to gtk's event-driven nature, this isn't a vsync-synchronous page flip, - * so fb_flip() must be scheduled independently to not just spin. - * The "draw" signal on the image is used to drive fb_flip() on frameclock "ticks", + * so til_fb_flip() must be scheduled independently to not just spin. + * The "draw" signal on the image is used to drive til_fb_flip() on frameclock "ticks",   * a method suggested by Christian Hergert, thanks!   */ -static int gtk_fb_page_flip(fb_t *fb, void *context, void *page) +static int gtk_fb_page_flip(til_fb_t *fb, void *context, void *page)  {  	gtk_fb_t	*c = context;  	gtk_fb_page_t	*p = page; @@ -219,14 +219,14 @@ static int gtk_fb_page_flip(fb_t *fb, void *context, void *page)  	if (c->resized) {  		c->resized = 0; -		fb_rebuild(fb); +		til_fb_rebuild(fb);  	}  	return 0;  } -fb_ops_t gtk_fb_ops = { +til_fb_ops_t gtk_fb_ops = {  	/* TODO: .setup may not be necessary in the gtk frontend, unless maybe  	 * it learns to use multiple fb backends, and would like to do the whole dynamic  	 * settings iterative dance established by rototiller. @@ -234,7 +234,7 @@ fb_ops_t gtk_fb_ops = {  	 */  	/* everything else seems to not be too far out of wack for the new frontend as-is, -	 * I only had to plumb down the fb_t *fb, which classic rototiller didn't need to do. +	 * I only had to plumb down the til_fb_t *fb, which classic rototiller didn't need to do.  	 */  	.init = gtk_fb_init,  	.shutdown = gtk_fb_shutdown, @@ -18,11 +18,11 @@  #include <pthread.h>  #include <sys/time.h> -#include "rototiller.h" +#include <til.h>  /* glimmer is a GTK+-3.0 frontend for rototiller */ -extern fb_ops_t gtk_fb_ops; +extern til_fb_ops_t gtk_fb_ops;  #define DEFAULT_WIDTH	320  #define DEFAULT_HEIGHT	480 @@ -31,17 +31,17 @@ extern fb_ops_t gtk_fb_ops;  #define NUM_FB_PAGES	3  static struct glimmer_t { -	GtkWidget			*modules_list; +	GtkWidget		*modules_list; -	fb_t				*fb; -	settings_t			*fb_settings; +	til_fb_t		*fb; +	til_settings_t		*fb_settings; -	settings_t			*module_settings; -	const rototiller_module_t	*module; -	void				*module_context; -	pthread_t			thread; -	struct timeval			start_tv; -	unsigned			ticks_offset;	/* XXX: this isn't leveraged currently */ +	til_settings_t		*module_settings; +	const til_module_t	*module; +	void			*module_context; +	pthread_t		thread; +	struct timeval		start_tv; +	unsigned		ticks_offset;	/* XXX: this isn't leveraged currently */  } glimmer; @@ -51,20 +51,20 @@ static unsigned get_ticks(const struct timeval *start, const struct timeval *now  } -/* TODO: this should probably move into librototiller */ +/* TODO: this should probably move into libtil */  static void * glimmer_thread(void *foo)  {  	struct timeval	now;  	for (;;) { -		fb_page_t	*page; +		til_fb_page_t	*page;  		unsigned	ticks; -		page = fb_page_get(glimmer.fb); +		page = til_fb_page_get(glimmer.fb);  		gettimeofday(&now, NULL);  		ticks = get_ticks(&glimmer.start_tv, &now, glimmer.ticks_offset); -		rototiller_module_render(glimmer.module, glimmer.module_context, ticks, &page->fragment); -		fb_page_put(glimmer.fb, page); +		til_module_render(glimmer.module, glimmer.module_context, ticks, &page->fragment); +		til_fb_page_put(glimmer.fb, page);  	}  } @@ -76,11 +76,11 @@ static void glimmer_go(GtkButton *button, gpointer user_data)  	if (glimmer.fb) {  		pthread_cancel(glimmer.thread);  		pthread_join(glimmer.thread, NULL); -		rototiller_quiesce(); +		til_quiesce(); -		glimmer.fb = fb_free(glimmer.fb); -		glimmer.fb_settings = settings_free(glimmer.fb_settings); -		glimmer.module_settings = settings_free(glimmer.module_settings); +		glimmer.fb = til_fb_free(glimmer.fb); +		glimmer.fb_settings = til_settings_free(glimmer.fb_settings); +		glimmer.module_settings = til_settings_free(glimmer.module_settings);  	}  	/* TODO: translate the GTK+ settings panel values into @@ -91,18 +91,18 @@ static void glimmer_go(GtkButton *button, gpointer user_data)  	 * simply don't do any module setup (those *should* have static builtin  	 * defaults that at least work on some level.  	 */ -	glimmer.fb_settings = settings_new("fullscreen=off,size=640x480"); -	glimmer.module_settings = settings_new("TODO"); +	glimmer.fb_settings = til_settings_new("fullscreen=off,size=640x480"); +	glimmer.module_settings = til_settings_new("TODO"); -	r = fb_new(>k_fb_ops, glimmer.fb_settings, NUM_FB_PAGES, &glimmer.fb); +	r = til_fb_new(>k_fb_ops, glimmer.fb_settings, NUM_FB_PAGES, &glimmer.fb);  	if (r < 0) {  		puts("fb no go!");  		return;  	}  	gettimeofday(&glimmer.start_tv, NULL); -	glimmer.module = rototiller_lookup_module(gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(glimmer.modules_list))); -	r = rototiller_module_create_context( +	glimmer.module = til_lookup_module(gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(glimmer.modules_list))); +	r = til_module_create_context(  					glimmer.module,  					get_ticks(  						&glimmer.start_tv, @@ -120,11 +120,11 @@ static void glimmer_go(GtkButton *button, gpointer user_data)  static void activate(GtkApplication *app, gpointer user_data)  { -	GtkWidget			*window, *vbox, *settings, *button; -	const rototiller_module_t	**modules; -	size_t				n_modules; +	GtkWidget		*window, *vbox, *settings, *button; +	const til_module_t	**modules; +	size_t			n_modules; -	rototiller_get_modules(&modules, &n_modules); +	til_get_modules(&modules, &n_modules);  	window = gtk_application_window_new(app);  	gtk_window_set_title(GTK_WINDOW(window), "glimmer"); @@ -176,12 +176,12 @@ int main(int argc, char **argv)  	GtkApplication	*app;  	int		status; -	rototiller_init(); +	til_init();  	app = gtk_application_new("com.pengaru.glimmer", G_APPLICATION_FLAGS_NONE);  	g_signal_connect(app, "activate", G_CALLBACK(activate), NULL);  	status = g_application_run(G_APPLICATION(app), argc, argv);  	g_object_unref(app); -	rototiller_shutdown(); +	til_shutdown();  	return status;  }  | 
