/* input-capabilities.c generated by valac 0.36.12.13-3ae08, the Vala compiler
 * generated from input-capabilities.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_INPUT_CAPABILITIES (games_input_capabilities_get_type ())
#define GAMES_INPUT_CAPABILITIES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GAMES_TYPE_INPUT_CAPABILITIES, GamesInputCapabilities))
#define GAMES_IS_INPUT_CAPABILITIES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GAMES_TYPE_INPUT_CAPABILITIES))
#define GAMES_INPUT_CAPABILITIES_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GAMES_TYPE_INPUT_CAPABILITIES, GamesInputCapabilitiesIface))

typedef struct _GamesInputCapabilities GamesInputCapabilities;
typedef struct _GamesInputCapabilitiesIface GamesInputCapabilitiesIface;

struct _GamesInputCapabilitiesIface {
	GTypeInterface parent_iface;
	gboolean (*get_allow_classic_gamepads) (GamesInputCapabilities* self, GError** error);
	gboolean (*get_allow_analog_gamepads) (GamesInputCapabilities* self, GError** error);
};



GType games_input_capabilities_get_type (void) G_GNUC_CONST;
gboolean games_input_capabilities_get_allow_classic_gamepads (GamesInputCapabilities* self, GError** error);
gboolean games_input_capabilities_get_allow_analog_gamepads (GamesInputCapabilities* self, GError** error);


gboolean games_input_capabilities_get_allow_classic_gamepads (GamesInputCapabilities* self, GError** error) {
	g_return_val_if_fail (self != NULL, FALSE);
	return GAMES_INPUT_CAPABILITIES_GET_INTERFACE (self)->get_allow_classic_gamepads (self, error);
}


gboolean games_input_capabilities_get_allow_analog_gamepads (GamesInputCapabilities* self, GError** error) {
	g_return_val_if_fail (self != NULL, FALSE);
	return GAMES_INPUT_CAPABILITIES_GET_INTERFACE (self)->get_allow_analog_gamepads (self, error);
}


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


GType games_input_capabilities_get_type (void) {
	static volatile gsize games_input_capabilities_type_id__volatile = 0;
	if (g_once_init_enter (&games_input_capabilities_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (GamesInputCapabilitiesIface), (GBaseInitFunc) games_input_capabilities_base_init, (GBaseFinalizeFunc) NULL, (GClassInitFunc) NULL, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
		GType games_input_capabilities_type_id;
		games_input_capabilities_type_id = g_type_register_static (G_TYPE_INTERFACE, "GamesInputCapabilities", &g_define_type_info, 0);
		g_type_interface_add_prerequisite (games_input_capabilities_type_id, G_TYPE_OBJECT);
		g_once_init_leave (&games_input_capabilities_type_id__volatile, games_input_capabilities_type_id);
	}
	return games_input_capabilities_type_id__volatile;
}



