/* rygel-example-server-plugin-vala.h generated by valac 0.56.19, the Vala compiler, do not modify */

#ifndef __EXAMPLES_SERVER_PLUGINS_VALA_RYGEL_EXAMPLE_SERVER_PLUGIN_VALA_H__
#define __EXAMPLES_SERVER_PLUGINS_VALA_RYGEL_EXAMPLE_SERVER_PLUGIN_VALA_H__

#include "rygel-core.h"
#include "rygel-server.h"
#include <glib-object.h>
#include <stdlib.h>
#include <string.h>
#include <glib.h>

G_BEGIN_DECLS

#define RYGEL_EXAMPLE_SERVER_PLUGIN_VALA_NAME "ExampleServerPluginVala"
#define RYGEL_EXAMPLE_SERVER_PLUGIN_VALA_TITLE "Example Server Plugin Vala"
#define RYGEL_EXAMPLE_SERVER_PLUGIN_VALA_DESCRIPTION "An example Rygel server plugin implemented in vala."
#if !defined(VALA_EXTERN)
#if defined(_MSC_VER)
#define VALA_EXTERN __declspec(dllexport) extern
#elif __GNUC__ >= 4
#define VALA_EXTERN __attribute__((visibility("default"))) extern
#else
#define VALA_EXTERN extern
#endif
#endif

#define RYGEL_EXAMPLE_TYPE_SERVER_PLUGIN_VALA (rygel_example_server_plugin_vala_get_type ())
#define RYGEL_EXAMPLE_SERVER_PLUGIN_VALA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_EXAMPLE_TYPE_SERVER_PLUGIN_VALA, RygelExampleServerPluginVala))
#define RYGEL_EXAMPLE_SERVER_PLUGIN_VALA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_EXAMPLE_TYPE_SERVER_PLUGIN_VALA, RygelExampleServerPluginValaClass))
#define RYGEL_EXAMPLE_IS_SERVER_PLUGIN_VALA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_EXAMPLE_TYPE_SERVER_PLUGIN_VALA))
#define RYGEL_EXAMPLE_IS_SERVER_PLUGIN_VALA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_EXAMPLE_TYPE_SERVER_PLUGIN_VALA))
#define RYGEL_EXAMPLE_SERVER_PLUGIN_VALA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_EXAMPLE_TYPE_SERVER_PLUGIN_VALA, RygelExampleServerPluginValaClass))

typedef struct _RygelExampleServerPluginVala RygelExampleServerPluginVala;
typedef struct _RygelExampleServerPluginValaClass RygelExampleServerPluginValaClass;
typedef struct _RygelExampleServerPluginValaPrivate RygelExampleServerPluginValaPrivate;

#define RYGEL_EXAMPLE_TYPE_ROOT_CONTAINER_VALA (rygel_example_root_container_vala_get_type ())
#define RYGEL_EXAMPLE_ROOT_CONTAINER_VALA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_EXAMPLE_TYPE_ROOT_CONTAINER_VALA, RygelExampleRootContainerVala))
#define RYGEL_EXAMPLE_ROOT_CONTAINER_VALA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_EXAMPLE_TYPE_ROOT_CONTAINER_VALA, RygelExampleRootContainerValaClass))
#define RYGEL_EXAMPLE_IS_ROOT_CONTAINER_VALA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_EXAMPLE_TYPE_ROOT_CONTAINER_VALA))
#define RYGEL_EXAMPLE_IS_ROOT_CONTAINER_VALA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_EXAMPLE_TYPE_ROOT_CONTAINER_VALA))
#define RYGEL_EXAMPLE_ROOT_CONTAINER_VALA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_EXAMPLE_TYPE_ROOT_CONTAINER_VALA, RygelExampleRootContainerValaClass))

typedef struct _RygelExampleRootContainerVala RygelExampleRootContainerVala;
typedef struct _RygelExampleRootContainerValaClass RygelExampleRootContainerValaClass;
typedef struct _RygelExampleRootContainerValaPrivate RygelExampleRootContainerValaPrivate;

struct _RygelExampleServerPluginVala {
	RygelMediaServerPlugin parent_instance;
	RygelExampleServerPluginValaPrivate * priv;
};

struct _RygelExampleServerPluginValaClass {
	RygelMediaServerPluginClass parent_class;
};

struct _RygelExampleRootContainerVala {
	RygelSimpleContainer parent_instance;
	RygelExampleRootContainerValaPrivate * priv;
};

struct _RygelExampleRootContainerValaClass {
	RygelSimpleContainerClass parent_class;
};

VALA_EXTERN void module_init (RygelPluginLoader* loader);
VALA_EXTERN GType rygel_example_server_plugin_vala_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (RygelExampleServerPluginVala, g_object_unref)
VALA_EXTERN RygelExampleServerPluginVala* rygel_example_server_plugin_vala_new (void);
VALA_EXTERN RygelExampleServerPluginVala* rygel_example_server_plugin_vala_construct (GType object_type);
VALA_EXTERN GType rygel_example_root_container_vala_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (RygelExampleRootContainerVala, g_object_unref)
VALA_EXTERN RygelExampleRootContainerVala* rygel_example_root_container_vala_new (const gchar* title);
VALA_EXTERN RygelExampleRootContainerVala* rygel_example_root_container_vala_construct (GType object_type,
                                                                            const gchar* title);

G_END_DECLS

#endif
