void * _cogl_renderer_get_proc_address (CoglRenderer *renderer, const char *name, CoglBool in_core) { const CoglWinsysVtable *winsys = _cogl_renderer_get_winsys (renderer); return winsys->renderer_get_proc_address (renderer, name, in_core); }
static void _cogl_renderer_free (CoglRenderer *renderer) { const CoglWinsysVtable *winsys = _cogl_renderer_get_winsys (renderer); winsys->renderer_disconnect (renderer); #ifndef HAVE_DIRECTLY_LINKED_GL_LIBRARY if (renderer->libgl_module) g_module_close (renderer->libgl_module); #endif g_slist_foreach (renderer->event_filters, (GFunc) native_filter_closure_free, NULL); g_slist_free (renderer->event_filters); g_free (renderer); }
static void _cogl_renderer_free (CoglRenderer *renderer) { const CoglWinsysVtable *winsys = _cogl_renderer_get_winsys (renderer); _cogl_closure_list_disconnect_all (&renderer->idle_closures); if (winsys) winsys->renderer_disconnect (renderer); if (renderer->libgl_module) g_module_close (renderer->libgl_module); g_slist_foreach (renderer->event_filters, (GFunc) native_filter_closure_free, NULL); g_slist_free (renderer->event_filters); g_array_free (renderer->poll_fds, TRUE); g_free (renderer); }
gboolean cogl_renderer_check_onscreen_template (CoglRenderer *renderer, CoglOnscreenTemplate *onscreen_template, GError **error) { CoglDisplay *display; const CoglWinsysVtable *winsys = _cogl_renderer_get_winsys (renderer); if (!winsys->renderer_connect (renderer, error)) return FALSE; display = cogl_display_new (renderer, onscreen_template); if (!cogl_display_setup (display, error)) { cogl_object_unref (display); return FALSE; } cogl_object_unref (display); return TRUE; }