Initial commit
[fillmore] / src / marina / marina / AppDirs.c
diff --git a/src/marina/marina/AppDirs.c b/src/marina/marina/AppDirs.c
new file mode 100644 (file)
index 0000000..5e7effa
--- /dev/null
@@ -0,0 +1,363 @@
+/* AppDirs.c generated by valac, the Vala compiler
+ * generated from AppDirs.vala, do not modify */
+
+/* Copyright 2009-2010 Yorba Foundation
+ *
+ * This software is licensed under the GNU LGPL (version 2.1 or later).
+ * See the COPYING file in this distribution. 
+ */
+
+#include <glib.h>
+#include <glib-object.h>
+#include <gio/gio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gobject/gvaluecollector.h>
+
+
+#define TYPE_APP_DIRS (app_dirs_get_type ())
+#define APP_DIRS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_APP_DIRS, AppDirs))
+#define APP_DIRS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_APP_DIRS, AppDirsClass))
+#define IS_APP_DIRS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_APP_DIRS))
+#define IS_APP_DIRS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_APP_DIRS))
+#define APP_DIRS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_APP_DIRS, AppDirsClass))
+
+typedef struct _AppDirs AppDirs;
+typedef struct _AppDirsClass AppDirsClass;
+typedef struct _AppDirsPrivate AppDirsPrivate;
+#define _g_free0(var) (var = (g_free (var), NULL))
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+typedef struct _ParamSpecAppDirs ParamSpecAppDirs;
+
+struct _AppDirs {
+       GTypeInstance parent_instance;
+       volatile int ref_count;
+       AppDirsPrivate * priv;
+};
+
+struct _AppDirsClass {
+       GTypeClass parent_class;
+       void (*finalize) (AppDirs *self);
+};
+
+struct _ParamSpecAppDirs {
+       GParamSpec parent_instance;
+};
+
+
+static GFile* app_dirs_exec_dir;
+static GFile* app_dirs_exec_dir = NULL;
+static char* app_dirs_program_name;
+static char* app_dirs_program_name = NULL;
+static gpointer app_dirs_parent_class = NULL;
+
+gpointer app_dirs_ref (gpointer instance);
+void app_dirs_unref (gpointer instance);
+GParamSpec* param_spec_app_dirs (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
+void value_set_app_dirs (GValue* value, gpointer v_object);
+void value_take_app_dirs (GValue* value, gpointer v_object);
+gpointer value_get_app_dirs (const GValue* value);
+GType app_dirs_get_type (void);
+enum  {
+       APP_DIRS_DUMMY_PROPERTY
+};
+void app_dirs_init (const char* arg0, const char* program_name);
+void app_dirs_terminate (void);
+GFile* app_dirs_get_exec_dir (void);
+static GFile* app_dirs_get_install_dir (void);
+GFile* app_dirs_get_resources_dir (void);
+AppDirs* app_dirs_new (void);
+AppDirs* app_dirs_construct (GType object_type);
+static void app_dirs_finalize (AppDirs* obj);
+
+
+
+#line 14 "AppDirs.vala"
+void app_dirs_init (const char* arg0, const char* program_name) {
+#line 78 "AppDirs.c"
+       char* _tmp0_;
+       GFile* _tmp1_;
+       GFile* exec_file;
+       GFile* _tmp2_;
+       char* _tmp3_;
+#line 14 "AppDirs.vala"
+       g_return_if_fail (arg0 != NULL);
+#line 14 "AppDirs.vala"
+       g_return_if_fail (program_name != NULL);
+#line 15 "AppDirs.vala"
+       exec_file = (_tmp1_ = g_file_new_for_path (_tmp0_ = g_find_program_in_path (arg0)), _g_free0 (_tmp0_), _tmp1_);
+#line 16 "AppDirs.vala"
+       app_dirs_exec_dir = (_tmp2_ = g_file_get_parent (exec_file), _g_object_unref0 (app_dirs_exec_dir), _tmp2_);
+#line 17 "AppDirs.vala"
+       app_dirs_program_name = (_tmp3_ = g_strdup (program_name), _g_free0 (app_dirs_program_name), _tmp3_);
+#line 94 "AppDirs.c"
+       _g_object_unref0 (exec_file);
+}
+
+
+#line 20 "AppDirs.vala"
+void app_dirs_terminate (void) {
+#line 101 "AppDirs.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+       return self ? g_object_ref (self) : NULL;
+}
+
+
+#line 23 "AppDirs.vala"
+GFile* app_dirs_get_exec_dir (void) {
+#line 112 "AppDirs.c"
+       GFile* result = NULL;
+       result = _g_object_ref0 (app_dirs_exec_dir);
+#line 24 "AppDirs.vala"
+       return result;
+#line 117 "AppDirs.c"
+}
+
+
+#line 27 "AppDirs.vala"
+GFile* app_dirs_get_resources_dir (void) {
+#line 123 "AppDirs.c"
+       GFile* result = NULL;
+       GFile* exec_dir;
+       GFile* install_dir;
+       GFile* return_value;
+#line 28 "AppDirs.vala"
+       exec_dir = app_dirs_get_exec_dir ();
+#line 29 "AppDirs.vala"
+       install_dir = app_dirs_get_install_dir ();
+#line 132 "AppDirs.c"
+       return_value = NULL;
+#line 31 "AppDirs.vala"
+       if (install_dir != NULL) {
+#line 136 "AppDirs.c"
+               GFile* _tmp1_;
+               GFile* _tmp0_;
+#line 32 "AppDirs.vala"
+               return_value = (_tmp1_ = g_file_get_child (_tmp0_ = g_file_get_child (install_dir, "share"), app_dirs_program_name), _g_object_unref0 (return_value), _tmp1_);
+#line 141 "AppDirs.c"
+               _g_object_unref0 (_tmp0_);
+       } else {
+               GFile* _tmp2_;
+#line 34 "AppDirs.vala"
+               return_value = (_tmp2_ = _g_object_ref0 (exec_dir), _g_object_unref0 (return_value), _tmp2_);
+#line 147 "AppDirs.c"
+       }
+       result = g_file_get_child (return_value, "resources");
+       _g_object_unref0 (exec_dir);
+       _g_object_unref0 (install_dir);
+       _g_object_unref0 (return_value);
+#line 36 "AppDirs.vala"
+       return result;
+#line 155 "AppDirs.c"
+}
+
+
+#line 39 "AppDirs.vala"
+static GFile* app_dirs_get_install_dir (void) {
+#line 161 "AppDirs.c"
+       GFile* result = NULL;
+       GFile* prefix_dir;
+       GFile* _tmp0_;
+#line 40 "AppDirs.vala"
+       prefix_dir = g_file_new_for_path (_PREFIX);
+#line 167 "AppDirs.c"
+       _tmp0_ = NULL;
+#line 41 "AppDirs.vala"
+       if (g_file_has_prefix (app_dirs_exec_dir, prefix_dir)) {
+#line 41 "AppDirs.vala"
+               _tmp0_ = prefix_dir;
+#line 173 "AppDirs.c"
+       } else {
+#line 41 "AppDirs.vala"
+               _tmp0_ = NULL;
+#line 177 "AppDirs.c"
+       }
+       result = _g_object_ref0 (_tmp0_);
+       _g_object_unref0 (prefix_dir);
+#line 41 "AppDirs.vala"
+       return result;
+#line 183 "AppDirs.c"
+}
+
+
+#line 10 "AppDirs.vala"
+AppDirs* app_dirs_construct (GType object_type) {
+#line 189 "AppDirs.c"
+       AppDirs* self;
+       self = (AppDirs*) g_type_create_instance (object_type);
+       return self;
+}
+
+
+#line 10 "AppDirs.vala"
+AppDirs* app_dirs_new (void) {
+#line 10 "AppDirs.vala"
+       return app_dirs_construct (TYPE_APP_DIRS);
+#line 200 "AppDirs.c"
+}
+
+
+static void value_app_dirs_init (GValue* value) {
+       value->data[0].v_pointer = NULL;
+}
+
+
+static void value_app_dirs_free_value (GValue* value) {
+       if (value->data[0].v_pointer) {
+               app_dirs_unref (value->data[0].v_pointer);
+       }
+}
+
+
+static void value_app_dirs_copy_value (const GValue* src_value, GValue* dest_value) {
+       if (src_value->data[0].v_pointer) {
+               dest_value->data[0].v_pointer = app_dirs_ref (src_value->data[0].v_pointer);
+       } else {
+               dest_value->data[0].v_pointer = NULL;
+       }
+}
+
+
+static gpointer value_app_dirs_peek_pointer (const GValue* value) {
+       return value->data[0].v_pointer;
+}
+
+
+static gchar* value_app_dirs_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
+       if (collect_values[0].v_pointer) {
+               AppDirs* object;
+               object = collect_values[0].v_pointer;
+               if (object->parent_instance.g_class == NULL) {
+                       return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
+               } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
+                       return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
+               }
+               value->data[0].v_pointer = app_dirs_ref (object);
+       } else {
+               value->data[0].v_pointer = NULL;
+       }
+       return NULL;
+}
+
+
+static gchar* value_app_dirs_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
+       AppDirs** object_p;
+       object_p = collect_values[0].v_pointer;
+       if (!object_p) {
+               return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
+       }
+       if (!value->data[0].v_pointer) {
+               *object_p = NULL;
+       } else if (collect_flags && G_VALUE_NOCOPY_CONTENTS) {
+               *object_p = value->data[0].v_pointer;
+       } else {
+               *object_p = app_dirs_ref (value->data[0].v_pointer);
+       }
+       return NULL;
+}
+
+
+GParamSpec* param_spec_app_dirs (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) {
+       ParamSpecAppDirs* spec;
+       g_return_val_if_fail (g_type_is_a (object_type, TYPE_APP_DIRS), NULL);
+       spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
+       G_PARAM_SPEC (spec)->value_type = object_type;
+       return G_PARAM_SPEC (spec);
+}
+
+
+gpointer value_get_app_dirs (const GValue* value) {
+       g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_APP_DIRS), NULL);
+       return value->data[0].v_pointer;
+}
+
+
+void value_set_app_dirs (GValue* value, gpointer v_object) {
+       AppDirs* old;
+       g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_APP_DIRS));
+       old = value->data[0].v_pointer;
+       if (v_object) {
+               g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_APP_DIRS));
+               g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
+               value->data[0].v_pointer = v_object;
+               app_dirs_ref (value->data[0].v_pointer);
+       } else {
+               value->data[0].v_pointer = NULL;
+       }
+       if (old) {
+               app_dirs_unref (old);
+       }
+}
+
+
+void value_take_app_dirs (GValue* value, gpointer v_object) {
+       AppDirs* old;
+       g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_APP_DIRS));
+       old = value->data[0].v_pointer;
+       if (v_object) {
+               g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_APP_DIRS));
+               g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
+               value->data[0].v_pointer = v_object;
+       } else {
+               value->data[0].v_pointer = NULL;
+       }
+       if (old) {
+               app_dirs_unref (old);
+       }
+}
+
+
+static void app_dirs_class_init (AppDirsClass * klass) {
+       app_dirs_parent_class = g_type_class_peek_parent (klass);
+       APP_DIRS_CLASS (klass)->finalize = app_dirs_finalize;
+}
+
+
+static void app_dirs_instance_init (AppDirs * self) {
+       self->ref_count = 1;
+}
+
+
+static void app_dirs_finalize (AppDirs* obj) {
+       AppDirs * self;
+       self = APP_DIRS (obj);
+}
+
+
+GType app_dirs_get_type (void) {
+       static volatile gsize app_dirs_type_id__volatile = 0;
+       if (g_once_init_enter (&app_dirs_type_id__volatile)) {
+               static const GTypeValueTable g_define_type_value_table = { value_app_dirs_init, value_app_dirs_free_value, value_app_dirs_copy_value, value_app_dirs_peek_pointer, "p", value_app_dirs_collect_value, "p", value_app_dirs_lcopy_value };
+               static const GTypeInfo g_define_type_info = { sizeof (AppDirsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) app_dirs_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (AppDirs), 0, (GInstanceInitFunc) app_dirs_instance_init, &g_define_type_value_table };
+               static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
+               GType app_dirs_type_id;
+               app_dirs_type_id = g_type_register_fundamental (g_type_fundamental_next (), "AppDirs", &g_define_type_info, &g_define_type_fundamental_info, 0);
+               g_once_init_leave (&app_dirs_type_id__volatile, app_dirs_type_id);
+       }
+       return app_dirs_type_id__volatile;
+}
+
+
+gpointer app_dirs_ref (gpointer instance) {
+       AppDirs* self;
+       self = instance;
+       g_atomic_int_inc (&self->ref_count);
+       return instance;
+}
+
+
+void app_dirs_unref (gpointer instance) {
+       AppDirs* self;
+       self = instance;
+       if (g_atomic_int_dec_and_test (&self->ref_count)) {
+               APP_DIRS_GET_CLASS (self)->finalize (self);
+               g_type_free_instance ((GTypeInstance *) self);
+       }
+}
+
+
+
+