/* uri-iterator.c generated by valac 0.36.12.13-3ae08, the Vala compiler
 * generated from uri-iterator.vala, do not modify */

/* This file is part of GNOME Games. License: GPL-3.0+.*/

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


#define GAMES_TYPE_URI_ITERATOR (games_uri_iterator_get_type ())
#define GAMES_URI_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GAMES_TYPE_URI_ITERATOR, GamesUriIterator))
#define GAMES_IS_URI_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GAMES_TYPE_URI_ITERATOR))
#define GAMES_URI_ITERATOR_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GAMES_TYPE_URI_ITERATOR, GamesUriIteratorIface))

typedef struct _GamesUriIterator GamesUriIterator;
typedef struct _GamesUriIteratorIface GamesUriIteratorIface;

#define GAMES_TYPE_URI (games_uri_get_type ())
#define GAMES_URI(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GAMES_TYPE_URI, GamesUri))
#define GAMES_URI_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GAMES_TYPE_URI, GamesUriClass))
#define GAMES_IS_URI(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GAMES_TYPE_URI))
#define GAMES_IS_URI_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GAMES_TYPE_URI))
#define GAMES_URI_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GAMES_TYPE_URI, GamesUriClass))

typedef struct _GamesUri GamesUri;
typedef struct _GamesUriClass GamesUriClass;

struct _GamesUriIteratorIface {
	GTypeInterface parent_iface;
	GamesUri* (*get) (GamesUriIterator* self);
	gboolean (*next) (GamesUriIterator* self);
};



gpointer games_uri_ref (gpointer instance);
void games_uri_unref (gpointer instance);
GParamSpec* games_param_spec_uri (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void games_value_set_uri (GValue* value, gpointer v_object);
void games_value_take_uri (GValue* value, gpointer v_object);
gpointer games_value_get_uri (const GValue* value);
GType games_uri_get_type (void) G_GNUC_CONST;
GType games_uri_iterator_get_type (void) G_GNUC_CONST;
GamesUri* games_uri_iterator_get (GamesUriIterator* self);
gboolean games_uri_iterator_next (GamesUriIterator* self);


GamesUri* games_uri_iterator_get (GamesUriIterator* self) {
	g_return_val_if_fail (self != NULL, NULL);
	return GAMES_URI_ITERATOR_GET_INTERFACE (self)->get (self);
}


gboolean games_uri_iterator_next (GamesUriIterator* self) {
	g_return_val_if_fail (self != NULL, FALSE);
	return GAMES_URI_ITERATOR_GET_INTERFACE (self)->next (self);
}


static void games_uri_iterator_base_init (GamesUriIteratorIface * iface) {
	static gboolean initialized = FALSE;
	if (!initialized) {
		initialized = TRUE;
	}
}


GType games_uri_iterator_get_type (void) {
	static volatile gsize games_uri_iterator_type_id__volatile = 0;
	if (g_once_init_enter (&games_uri_iterator_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (GamesUriIteratorIface), (GBaseInitFunc) games_uri_iterator_base_init, (GBaseFinalizeFunc) NULL, (GClassInitFunc) NULL, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
		GType games_uri_iterator_type_id;
		games_uri_iterator_type_id = g_type_register_static (G_TYPE_INTERFACE, "GamesUriIterator", &g_define_type_info, 0);
		g_type_interface_add_prerequisite (games_uri_iterator_type_id, G_TYPE_OBJECT);
		g_once_init_leave (&games_uri_iterator_type_id__volatile, games_uri_iterator_type_id);
	}
	return games_uri_iterator_type_id__volatile;
}



