/* waf.h generated by valac 0.12.1, the Vala compiler, do not modify */


#ifndef __DEFAULT_PLUGINS_WAF_WAF_H__
#define __DEFAULT_PLUGINS_WAF_WAF_H__

#include <glib.h>
#include <glib-object.h>
#include <valide-0.0.h>
#include <stdlib.h>
#include <string.h>
#include <gtk/gtk.h>

G_BEGIN_DECLS


#define VALIDE_TYPE_WAF_BUILDER_OPTIONS (valide_waf_builder_options_get_type ())
#define VALIDE_WAF_BUILDER_OPTIONS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALIDE_TYPE_WAF_BUILDER_OPTIONS, ValideWafBuilderOptions))
#define VALIDE_WAF_BUILDER_OPTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALIDE_TYPE_WAF_BUILDER_OPTIONS, ValideWafBuilderOptionsClass))
#define VALIDE_IS_WAF_BUILDER_OPTIONS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VALIDE_TYPE_WAF_BUILDER_OPTIONS))
#define VALIDE_IS_WAF_BUILDER_OPTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VALIDE_TYPE_WAF_BUILDER_OPTIONS))
#define VALIDE_WAF_BUILDER_OPTIONS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VALIDE_TYPE_WAF_BUILDER_OPTIONS, ValideWafBuilderOptionsClass))

typedef struct _ValideWafBuilderOptions ValideWafBuilderOptions;
typedef struct _ValideWafBuilderOptionsClass ValideWafBuilderOptionsClass;
typedef struct _ValideWafBuilderOptionsPrivate ValideWafBuilderOptionsPrivate;

#define TYPE_WAF_EXECUTABLE (waf_executable_get_type ())
#define WAF_EXECUTABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_WAF_EXECUTABLE, WafExecutable))
#define WAF_EXECUTABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_WAF_EXECUTABLE, WafExecutableClass))
#define IS_WAF_EXECUTABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_WAF_EXECUTABLE))
#define IS_WAF_EXECUTABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_WAF_EXECUTABLE))
#define WAF_EXECUTABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_WAF_EXECUTABLE, WafExecutableClass))

typedef struct _WafExecutable WafExecutable;
typedef struct _WafExecutableClass WafExecutableClass;
typedef struct _WafExecutablePrivate WafExecutablePrivate;

#define TYPE_WAF_BUILDER_PREFERENCES (waf_builder_preferences_get_type ())
#define WAF_BUILDER_PREFERENCES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_WAF_BUILDER_PREFERENCES, WafBuilderPreferences))
#define WAF_BUILDER_PREFERENCES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_WAF_BUILDER_PREFERENCES, WafBuilderPreferencesClass))
#define IS_WAF_BUILDER_PREFERENCES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_WAF_BUILDER_PREFERENCES))
#define IS_WAF_BUILDER_PREFERENCES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_WAF_BUILDER_PREFERENCES))
#define WAF_BUILDER_PREFERENCES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_WAF_BUILDER_PREFERENCES, WafBuilderPreferencesClass))

typedef struct _WafBuilderPreferences WafBuilderPreferences;
typedef struct _WafBuilderPreferencesClass WafBuilderPreferencesClass;
typedef struct _WafBuilderPreferencesPrivate WafBuilderPreferencesPrivate;

#define TYPE_WAF_BUILDER (waf_builder_get_type ())
#define WAF_BUILDER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_WAF_BUILDER, WafBuilder))
#define WAF_BUILDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_WAF_BUILDER, WafBuilderClass))
#define IS_WAF_BUILDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_WAF_BUILDER))
#define IS_WAF_BUILDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_WAF_BUILDER))
#define WAF_BUILDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_WAF_BUILDER, WafBuilderClass))

typedef struct _WafBuilder WafBuilder;
typedef struct _WafBuilderClass WafBuilderClass;
typedef struct _WafBuilderPrivate WafBuilderPrivate;

struct _ValideWafBuilderOptions {
	GObject parent_instance;
	ValideWafBuilderOptionsPrivate * priv;
};

struct _ValideWafBuilderOptionsClass {
	GObjectClass parent_class;
};

struct _WafExecutable {
	ValideCompiler parent_instance;
	WafExecutablePrivate * priv;
	ValideBuildingStep step;
};

struct _WafExecutableClass {
	ValideCompilerClass parent_class;
};

struct _WafBuilderPreferences {
	GtkTable parent_instance;
	WafBuilderPreferencesPrivate * priv;
};

struct _WafBuilderPreferencesClass {
	GtkTableClass parent_class;
};

struct _WafBuilder {
	GObject parent_instance;
	WafBuilderPrivate * priv;
};

struct _WafBuilderClass {
	GObjectClass parent_class;
};


GType valide_waf_builder_options_get_type (void) G_GNUC_CONST;
gchar* valide_waf_builder_options_to_string (ValideWafBuilderOptions* self, ValideBuildingStep step);
ValideWafBuilderOptions* valide_waf_builder_options_new (void);
ValideWafBuilderOptions* valide_waf_builder_options_construct (GType object_type);
const gchar* valide_waf_builder_options_get_build_dir (ValideWafBuilderOptions* self);
void valide_waf_builder_options_set_build_dir (ValideWafBuilderOptions* self, const gchar* value);
const gchar* valide_waf_builder_options_get_prefix (ValideWafBuilderOptions* self);
void valide_waf_builder_options_set_prefix (ValideWafBuilderOptions* self, const gchar* value);
const gchar* valide_waf_builder_options_get_configure_options (ValideWafBuilderOptions* self);
void valide_waf_builder_options_set_configure_options (ValideWafBuilderOptions* self, const gchar* value);
const gchar* valide_waf_builder_options_get_build_options (ValideWafBuilderOptions* self);
void valide_waf_builder_options_set_build_options (ValideWafBuilderOptions* self, const gchar* value);
const gchar* valide_waf_builder_options_get_install_options (ValideWafBuilderOptions* self);
void valide_waf_builder_options_set_install_options (ValideWafBuilderOptions* self, const gchar* value);
const gchar* valide_waf_builder_options_get_dist_options (ValideWafBuilderOptions* self);
void valide_waf_builder_options_set_dist_options (ValideWafBuilderOptions* self, const gchar* value);
const gchar* valide_waf_builder_options_get_clean_options (ValideWafBuilderOptions* self);
void valide_waf_builder_options_set_clean_options (ValideWafBuilderOptions* self, const gchar* value);
const gchar* valide_waf_builder_options_get_distclean_options (ValideWafBuilderOptions* self);
void valide_waf_builder_options_set_distclean_options (ValideWafBuilderOptions* self, const gchar* value);
const gchar* valide_waf_builder_options_get_uninstall_options (ValideWafBuilderOptions* self);
void valide_waf_builder_options_set_uninstall_options (ValideWafBuilderOptions* self, const gchar* value);
GType waf_executable_get_type (void) G_GNUC_CONST;
WafExecutable* waf_executable_new (ValideProject* project);
WafExecutable* waf_executable_construct (GType object_type, ValideProject* project);
guint waf_executable_get_nb_task (WafExecutable* self);
void waf_executable_set_nb_task (WafExecutable* self, guint value);
guint waf_executable_get_current_task (WafExecutable* self);
void waf_executable_set_current_task (WafExecutable* self, guint value);
GType waf_builder_preferences_get_type (void) G_GNUC_CONST;
WafBuilderPreferences* waf_builder_preferences_new (ValideProject* project);
WafBuilderPreferences* waf_builder_preferences_construct (GType object_type, ValideProject* project);
ValideProject* waf_builder_preferences_get_project (WafBuilderPreferences* self);
GType waf_builder_get_type (void) G_GNUC_CONST;
WafBuilder* waf_builder_new (ValideExecutableManager* executables, ValideProject* project);
WafBuilder* waf_builder_construct (GType object_type, ValideExecutableManager* executables, ValideProject* project);
GType register_plugin (GTypeModule* module);


G_END_DECLS

#endif
