/* prerendering.c generated by valac 0.16.0, the Vala compiler
 * generated from prerendering.vala, do not modify */


#include <glib.h>
#include <glib-object.h>


#define PDFPC_VIEW_TYPE_PRERENDERING (pdfpc_view_prerendering_get_type ())
#define PDFPC_VIEW_PRERENDERING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PDFPC_VIEW_TYPE_PRERENDERING, pdfpcViewPrerendering))
#define PDFPC_VIEW_IS_PRERENDERING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PDFPC_VIEW_TYPE_PRERENDERING))
#define PDFPC_VIEW_PRERENDERING_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), PDFPC_VIEW_TYPE_PRERENDERING, pdfpcViewPrerenderingIface))

typedef struct _pdfpcViewPrerendering pdfpcViewPrerendering;
typedef struct _pdfpcViewPrerenderingIface pdfpcViewPrerenderingIface;

struct _pdfpcViewPrerenderingIface {
	GTypeInterface parent_iface;
};



GType pdfpc_view_prerendering_get_type (void) G_GNUC_CONST;


static void pdfpc_view_prerendering_base_init (pdfpcViewPrerenderingIface * iface) {
	static gboolean initialized = FALSE;
	if (!initialized) {
		initialized = TRUE;
		/**
		         * Signal emitted every time a precached slide has been created
		         *
		         * This signal should be emitted slide_count number of times during a
		         * precaching cylce.
		         */
		g_signal_new ("slide_prerendered", PDFPC_VIEW_TYPE_PRERENDERING, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
		/**
		         * Signal emitted when the precaching cycle is complete
		         */
		g_signal_new ("prerendering_completed", PDFPC_VIEW_TYPE_PRERENDERING, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
		/**
		         * Signal emitted when the precaching cycle just started
		         */
		g_signal_new ("prerendering_started", PDFPC_VIEW_TYPE_PRERENDERING, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
	}
}


/**
     * Every View may implement this interface to allow prerendering of slides
     * for display speed improvements. If however a renderer is used with the
     * view, which does not implement the Renderer.Caching interface the
     * prerender functionallity can't be used.
     */
GType pdfpc_view_prerendering_get_type (void) {
	static volatile gsize pdfpc_view_prerendering_type_id__volatile = 0;
	if (g_once_init_enter (&pdfpc_view_prerendering_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (pdfpcViewPrerenderingIface), (GBaseInitFunc) pdfpc_view_prerendering_base_init, (GBaseFinalizeFunc) NULL, (GClassInitFunc) NULL, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
		GType pdfpc_view_prerendering_type_id;
		pdfpc_view_prerendering_type_id = g_type_register_static (G_TYPE_INTERFACE, "pdfpcViewPrerendering", &g_define_type_info, 0);
		g_type_interface_add_prerequisite (pdfpc_view_prerendering_type_id, G_TYPE_OBJECT);
		g_once_init_leave (&pdfpc_view_prerendering_type_id__volatile, pdfpc_view_prerendering_type_id);
	}
	return pdfpc_view_prerendering_type_id__volatile;
}



