/* fsoresource.h generated by valac 0.16.1, the Vala compiler, do not modify */


#ifndef __FSORESOURCE_H__
#define __FSORESOURCE_H__

#include <glib.h>
#include <fsobasics.h>
#include <freesmartphone.h>
#include <gio/gio.h>
#include <stdlib.h>
#include <string.h>
#include <fsoframework.h>

G_BEGIN_DECLS


#define FSO_FRAMEWORK_TYPE_ABSTRACT_DBUS_RESOURCE (fso_framework_abstract_dbus_resource_get_type ())
#define FSO_FRAMEWORK_ABSTRACT_DBUS_RESOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FSO_FRAMEWORK_TYPE_ABSTRACT_DBUS_RESOURCE, FsoFrameworkAbstractDBusResource))
#define FSO_FRAMEWORK_ABSTRACT_DBUS_RESOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FSO_FRAMEWORK_TYPE_ABSTRACT_DBUS_RESOURCE, FsoFrameworkAbstractDBusResourceClass))
#define FSO_FRAMEWORK_IS_ABSTRACT_DBUS_RESOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FSO_FRAMEWORK_TYPE_ABSTRACT_DBUS_RESOURCE))
#define FSO_FRAMEWORK_IS_ABSTRACT_DBUS_RESOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FSO_FRAMEWORK_TYPE_ABSTRACT_DBUS_RESOURCE))
#define FSO_FRAMEWORK_ABSTRACT_DBUS_RESOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FSO_FRAMEWORK_TYPE_ABSTRACT_DBUS_RESOURCE, FsoFrameworkAbstractDBusResourceClass))

typedef struct _FsoFrameworkAbstractDBusResource FsoFrameworkAbstractDBusResource;
typedef struct _FsoFrameworkAbstractDBusResourceClass FsoFrameworkAbstractDBusResourceClass;
typedef struct _FsoFrameworkAbstractDBusResourcePrivate FsoFrameworkAbstractDBusResourcePrivate;

struct _FsoFrameworkAbstractDBusResource {
	FsoFrameworkAbstractObject parent_instance;
	FsoFrameworkAbstractDBusResourcePrivate * priv;
};

struct _FsoFrameworkAbstractDBusResourceClass {
	FsoFrameworkAbstractObjectClass parent_class;
	void (*enableResource) (FsoFrameworkAbstractDBusResource* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*enableResource_finish) (FsoFrameworkAbstractDBusResource* self, GAsyncResult* _res_, GError** error);
	void (*disableResource) (FsoFrameworkAbstractDBusResource* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*disableResource_finish) (FsoFrameworkAbstractDBusResource* self, GAsyncResult* _res_);
	void (*suspendResource) (FsoFrameworkAbstractDBusResource* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*suspendResource_finish) (FsoFrameworkAbstractDBusResource* self, GAsyncResult* _res_);
	void (*resumeResource) (FsoFrameworkAbstractDBusResource* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*resumeResource_finish) (FsoFrameworkAbstractDBusResource* self, GAsyncResult* _res_);
	void (*dependencies) (FsoFrameworkAbstractDBusResource* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	GHashTable* (*dependencies_finish) (FsoFrameworkAbstractDBusResource* self, GAsyncResult* _res_);
	FreeSmartphoneUsageResourcePolicy (*default_policy) (FsoFrameworkAbstractDBusResource* self);
};


GType fso_framework_abstract_dbus_resource_get_type (void) G_GNUC_CONST;
FsoFrameworkAbstractDBusResource* fso_framework_abstract_dbus_resource_construct (GType object_type, const gchar* name, FsoFrameworkSubsystem* subsystem);
void fso_framework_abstract_dbus_resource_registerWithUsage (FsoFrameworkAbstractDBusResource* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
void fso_framework_abstract_dbus_resource_registerWithUsage_finish (FsoFrameworkAbstractDBusResource* self, GAsyncResult* _res_);
void fso_framework_abstract_dbus_resource_enableResource (FsoFrameworkAbstractDBusResource* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
void fso_framework_abstract_dbus_resource_enableResource_finish (FsoFrameworkAbstractDBusResource* self, GAsyncResult* _res_, GError** error);
void fso_framework_abstract_dbus_resource_disableResource (FsoFrameworkAbstractDBusResource* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
void fso_framework_abstract_dbus_resource_disableResource_finish (FsoFrameworkAbstractDBusResource* self, GAsyncResult* _res_);
void fso_framework_abstract_dbus_resource_suspendResource (FsoFrameworkAbstractDBusResource* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
void fso_framework_abstract_dbus_resource_suspendResource_finish (FsoFrameworkAbstractDBusResource* self, GAsyncResult* _res_);
void fso_framework_abstract_dbus_resource_resumeResource (FsoFrameworkAbstractDBusResource* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
void fso_framework_abstract_dbus_resource_resumeResource_finish (FsoFrameworkAbstractDBusResource* self, GAsyncResult* _res_);
void fso_framework_abstract_dbus_resource_dependencies (FsoFrameworkAbstractDBusResource* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
GHashTable* fso_framework_abstract_dbus_resource_dependencies_finish (FsoFrameworkAbstractDBusResource* self, GAsyncResult* _res_);
FreeSmartphoneUsageResourcePolicy fso_framework_abstract_dbus_resource_default_policy (FsoFrameworkAbstractDBusResource* self);
const gchar* fso_framework_abstract_dbus_resource_get_name (FsoFrameworkAbstractDBusResource* self);


G_END_DECLS

#endif
