/* ellipsistype.c generated by valac 0.12.1.1-323029-dirty, the Vala compiler
 * generated from ellipsistype.vala, do not modify */

/* ellipsis.vala
 *
 * Copyright (C) 2009  Andrea Del Signore
 *
 * This library is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, either version 2.1 of the License, or
 * (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with this library.  If not, see <http://www.gnu.org/licenses/>.
 *
 * Author:
 * 	Andrea Del Signore <sejerpz@tin.it>
 */

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


#define AFRODITE_TYPE_DATA_TYPE (afrodite_data_type_get_type ())
#define AFRODITE_DATA_TYPE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), AFRODITE_TYPE_DATA_TYPE, AfroditeDataType))
#define AFRODITE_DATA_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), AFRODITE_TYPE_DATA_TYPE, AfroditeDataTypeClass))
#define AFRODITE_IS_DATA_TYPE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), AFRODITE_TYPE_DATA_TYPE))
#define AFRODITE_IS_DATA_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), AFRODITE_TYPE_DATA_TYPE))
#define AFRODITE_DATA_TYPE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), AFRODITE_TYPE_DATA_TYPE, AfroditeDataTypeClass))

typedef struct _AfroditeDataType AfroditeDataType;
typedef struct _AfroditeDataTypeClass AfroditeDataTypeClass;
typedef struct _AfroditeDataTypePrivate AfroditeDataTypePrivate;

#define AFRODITE_TYPE_ELLIPSIS_TYPE (afrodite_ellipsis_type_get_type ())
#define AFRODITE_ELLIPSIS_TYPE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), AFRODITE_TYPE_ELLIPSIS_TYPE, AfroditeEllipsisType))
#define AFRODITE_ELLIPSIS_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), AFRODITE_TYPE_ELLIPSIS_TYPE, AfroditeEllipsisTypeClass))
#define AFRODITE_IS_ELLIPSIS_TYPE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), AFRODITE_TYPE_ELLIPSIS_TYPE))
#define AFRODITE_IS_ELLIPSIS_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), AFRODITE_TYPE_ELLIPSIS_TYPE))
#define AFRODITE_ELLIPSIS_TYPE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), AFRODITE_TYPE_ELLIPSIS_TYPE, AfroditeEllipsisTypeClass))

typedef struct _AfroditeEllipsisType AfroditeEllipsisType;
typedef struct _AfroditeEllipsisTypeClass AfroditeEllipsisTypeClass;
typedef struct _AfroditeEllipsisTypePrivate AfroditeEllipsisTypePrivate;

#define AFRODITE_TYPE_SYMBOL (afrodite_symbol_get_type ())
#define AFRODITE_SYMBOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), AFRODITE_TYPE_SYMBOL, AfroditeSymbol))
#define AFRODITE_SYMBOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), AFRODITE_TYPE_SYMBOL, AfroditeSymbolClass))
#define AFRODITE_IS_SYMBOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), AFRODITE_TYPE_SYMBOL))
#define AFRODITE_IS_SYMBOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), AFRODITE_TYPE_SYMBOL))
#define AFRODITE_SYMBOL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), AFRODITE_TYPE_SYMBOL, AfroditeSymbolClass))

typedef struct _AfroditeSymbol AfroditeSymbol;
typedef struct _AfroditeSymbolClass AfroditeSymbolClass;

#define AFRODITE_TYPE_VOID_TYPE (afrodite_void_type_get_type ())
#define AFRODITE_VOID_TYPE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), AFRODITE_TYPE_VOID_TYPE, AfroditeVoidType))
#define AFRODITE_VOID_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), AFRODITE_TYPE_VOID_TYPE, AfroditeVoidTypeClass))
#define AFRODITE_IS_VOID_TYPE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), AFRODITE_TYPE_VOID_TYPE))
#define AFRODITE_IS_VOID_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), AFRODITE_TYPE_VOID_TYPE))
#define AFRODITE_VOID_TYPE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), AFRODITE_TYPE_VOID_TYPE, AfroditeVoidTypeClass))

typedef struct _AfroditeVoidType AfroditeVoidType;
typedef struct _AfroditeVoidTypeClass AfroditeVoidTypeClass;

struct _AfroditeDataType {
	GTypeInstance parent_instance;
	volatile int ref_count;
	AfroditeDataTypePrivate * priv;
};

struct _AfroditeDataTypeClass {
	GTypeClass parent_class;
	void (*finalize) (AfroditeDataType *self);
};

struct _AfroditeEllipsisType {
	AfroditeDataType parent_instance;
	AfroditeEllipsisTypePrivate * priv;
};

struct _AfroditeEllipsisTypeClass {
	AfroditeDataTypeClass parent_class;
};


static gpointer afrodite_ellipsis_type_parent_class = NULL;
extern AfroditeVoidType* afrodite_symbol_VOID;

gpointer afrodite_data_type_ref (gpointer instance);
void afrodite_data_type_unref (gpointer instance);
GParamSpec* afrodite_param_spec_data_type (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void afrodite_value_set_data_type (GValue* value, gpointer v_object);
void afrodite_value_take_data_type (GValue* value, gpointer v_object);
gpointer afrodite_value_get_data_type (const GValue* value);
GType afrodite_data_type_get_type (void) G_GNUC_CONST;
GType afrodite_ellipsis_type_get_type (void) G_GNUC_CONST;
enum  {
	AFRODITE_ELLIPSIS_TYPE_DUMMY_PROPERTY
};
AfroditeEllipsisType* afrodite_ellipsis_type_new (void);
AfroditeEllipsisType* afrodite_ellipsis_type_construct (GType object_type);
AfroditeDataType* afrodite_data_type_new (const gchar* type_name, const gchar* name);
AfroditeDataType* afrodite_data_type_construct (GType object_type, const gchar* type_name, const gchar* name);
GType afrodite_symbol_get_type (void) G_GNUC_CONST;
GType afrodite_void_type_get_type (void) G_GNUC_CONST;


AfroditeEllipsisType* afrodite_ellipsis_type_construct (GType object_type) {
	AfroditeEllipsisType* self = NULL;
	self = (AfroditeEllipsisType*) afrodite_data_type_construct (object_type, "...", NULL);
	return self;
}


AfroditeEllipsisType* afrodite_ellipsis_type_new (void) {
	return afrodite_ellipsis_type_construct (AFRODITE_TYPE_ELLIPSIS_TYPE);
}


static void afrodite_ellipsis_type_class_init (AfroditeEllipsisTypeClass * klass) {
	afrodite_ellipsis_type_parent_class = g_type_class_peek_parent (klass);
}


static void afrodite_ellipsis_type_instance_init (AfroditeEllipsisType * self) {
}


GType afrodite_ellipsis_type_get_type (void) {
	static volatile gsize afrodite_ellipsis_type_type_id__volatile = 0;
	if (g_once_init_enter (&afrodite_ellipsis_type_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (AfroditeEllipsisTypeClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) afrodite_ellipsis_type_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (AfroditeEllipsisType), 0, (GInstanceInitFunc) afrodite_ellipsis_type_instance_init, NULL };
		GType afrodite_ellipsis_type_type_id;
		afrodite_ellipsis_type_type_id = g_type_register_static (AFRODITE_TYPE_DATA_TYPE, "AfroditeEllipsisType", &g_define_type_info, 0);
		g_once_init_leave (&afrodite_ellipsis_type_type_id__volatile, afrodite_ellipsis_type_type_id);
	}
	return afrodite_ellipsis_type_type_id__volatile;
}



