[libdmapsharing] Add vala/libdmapsharing-3.0.vapi to Git Signed-off-by: W. Michael Petullo <mike flyn org>



commit 193d684c84c529e05448b7734934a9999053db61
Author: W. Michael Petullo <mike flyn org>
Date:   Thu Jan 20 18:25:23 2011 -0600

    Add vala/libdmapsharing-3.0.vapi to Git
    Signed-off-by: W. Michael Petullo <mike flyn org>

 vala/libdmapsharing-3.0.vapi | 2064 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 2064 insertions(+), 0 deletions(-)
---
diff --git a/vala/libdmapsharing-3.0.vapi b/vala/libdmapsharing-3.0.vapi
new file mode 100644
index 0000000..f27166e
--- /dev/null
+++ b/vala/libdmapsharing-3.0.vapi
@@ -0,0 +1,2064 @@
+/* libdmapsharing-3.0-daap.vapi generated by vapigen, do not modify. */
+
+[CCode (cprefix = "DAAP", lower_case_cprefix = "daap_")]
+namespace DAAP {
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class Connection : DAAP.DMAPConnection {
+		[CCode (has_construct_function = false)]
+		public Connection (string name, string host, uint port, bool password_protected, DMAP.Db db, DMAP.RecordFactory factory);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPConnection : GLib.Object {
+		[CCode (has_construct_function = false)]
+		protected DMAPConnection ();
+		[CCode (cname = "dmap_connection_build_message")]
+		public virtual unowned Soup.Message build_message (DAAP.DMAPConnection connection, string path, bool need_hash, double version, int req_id, bool send_close);
+		[CCode (cname = "dmap_connection_connect")]
+		public static void connect (DAAP.DMAPConnection connection, DAAP.DMAPConnectionCallback callback);
+		[CCode (cname = "dmap_connection_disconnect")]
+		public static void disconnect (DAAP.DMAPConnection connection, DAAP.DMAPConnectionCallback callback);
+		[CCode (cname = "dmap_connection_get")]
+		public bool @get (string path, bool need_hash, DAAP.DMAPResponseHandler handler);
+		[CCode (cname = "dmap_connection_get_headers")]
+		public static unowned Soup.MessageHeaders get_headers (DAAP.DMAPConnection connection, string uri);
+		[CCode (cname = "dmap_connection_get_playlists")]
+		public static unowned GLib.SList get_playlists (DAAP.DMAPConnection connection);
+		[NoWrapper]
+		public virtual DAAP.DMAPContentCode get_protocol_version_cc (DAAP.DMAPConnection connection);
+		[NoWrapper]
+		public virtual unowned string get_query_metadata (DAAP.DMAPConnection connection);
+		[NoWrapper]
+		public virtual unowned DAAP.DMAPRecord handle_mlcl (DAAP.DMAPConnection connection, DMAP.RecordFactory factory, GLib.Node mlcl, int item_id);
+		[CCode (cname = "dmap_connection_is_connected")]
+		public static bool is_connected (DAAP.DMAPConnection connection);
+		[CCode (cname = "dmap_connection_setup")]
+		public static void setup (DAAP.DMAPConnection connection);
+		[NoAccessorMethod]
+		public void* base_uri { get; set; }
+		[NoAccessorMethod]
+		public int database_id { get; set; }
+		[NoAccessorMethod]
+		public void* db { get; construct; }
+		[NoAccessorMethod]
+		public double dmap_version { get; set; }
+		[NoAccessorMethod]
+		public void* factory { get; construct; }
+		[NoAccessorMethod]
+		public string host { owned get; construct; }
+		[NoAccessorMethod]
+		public string name { owned get; construct; }
+		[NoAccessorMethod]
+		public bool password_protected { get; construct; }
+		[NoAccessorMethod]
+		public uint port { get; construct; }
+		[NoAccessorMethod]
+		public int revision_number { get; set; }
+		[NoAccessorMethod]
+		public int session_id { get; set; }
+		public virtual signal unowned string authenticate (string name);
+		public virtual signal void connected ();
+		public virtual signal void connecting (ulong state, float progress);
+		public virtual signal void disconnected ();
+		public virtual signal void operation_done ();
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPContentCodeDefinition {
+		public DAAP.DMAPContentCode code;
+		public int32 int_code;
+		public weak string name;
+		[CCode (cname = "string")]
+		public weak string str;
+		public DAAP.DMAPType type;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPGstInputStream : GLib.InputStream, GLib.Seekable {
+		[CCode (cname = "dmap_gst_input_stream_new", type = "GInputStream*", has_construct_function = false)]
+		public DMAPGstInputStream (string transcode_mimetype, GLib.InputStream src_stream);
+		[CCode (cname = "dmap_gst_input_stream_new_buffer_cb", type = "void", has_construct_function = false)]
+		public DMAPGstInputStream.buffer_cb (Gst.Element element, DAAP.DMAPGstInputStream stream);
+		[NoWrapper]
+		public virtual void kill_pipeline (DAAP.DMAPGstInputStream p1);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMdnsBrowser : GLib.Object {
+		[CCode (cname = "dmap_mdns_browser_new", type = "DMAPMdnsBrowser*", has_construct_function = false)]
+		public DMAPMdnsBrowser (DAAP.DMAPMdnsBrowserServiceType type);
+		[CCode (cname = "dmap_mdns_browser_error_quark")]
+		public static GLib.Quark error_quark ();
+		[CCode (cname = "dmap_mdns_browser_get_service_type")]
+		public static DAAP.DMAPMdnsBrowserServiceType get_service_type (DAAP.DMAPMdnsBrowser browser);
+		[CCode (cname = "dmap_mdns_browser_get_services")]
+		public static unowned GLib.SList get_services (DAAP.DMAPMdnsBrowser browser);
+		[CCode (cname = "dmap_mdns_browser_start")]
+		public static bool start (DAAP.DMAPMdnsBrowser browser) throws GLib.Error;
+		[CCode (cname = "dmap_mdns_browser_stop")]
+		public static bool stop (DAAP.DMAPMdnsBrowser browser) throws GLib.Error;
+		public virtual signal void service_added (void* service);
+		public virtual signal void service_removed (string service);
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMdnsBrowserService {
+		public weak string host;
+		public weak string name;
+		public weak string pair;
+		public bool password_protected;
+		public uint port;
+		public weak string service_name;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMdnsPublisher : GLib.Object {
+		[CCode (cname = "dmap_mdns_publisher_new", type = "DMAPMdnsPublisher*", has_construct_function = false)]
+		public DMAPMdnsPublisher ();
+		[CCode (cname = "dmap_mdns_publisher_error_quark")]
+		public static GLib.Quark error_quark ();
+		[CCode (cname = "dmap_mdns_publisher_publish")]
+		public static bool publish (DAAP.DMAPMdnsPublisher publisher, string name, uint port, string type_of_service, bool password_required, string txt_records) throws GLib.Error;
+		[CCode (cname = "dmap_mdns_publisher_rename_at_port")]
+		public static bool rename_at_port (DAAP.DMAPMdnsPublisher publisher, uint port, string name) throws GLib.Error;
+		[CCode (cname = "dmap_mdns_publisher_withdraw")]
+		public static bool withdraw (DAAP.DMAPMdnsPublisher publisher, uint port) throws GLib.Error;
+		public virtual signal void name_collision (string name);
+		public virtual signal void published (string name);
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMetaDataMap {
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPPlaylist {
+		public int id;
+		public weak string name;
+		public weak GLib.List uris;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPShare : GLib.Object {
+		[CCode (has_construct_function = false)]
+		protected DMAPShare ();
+		[NoWrapper]
+		public virtual void add_entry_to_mlcl (void* id, DAAP.DMAPRecord record, void* mb);
+		[NoWrapper]
+		public virtual void content_codes (DAAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void ctrl_int (DAAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void databases (DAAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext context);
+		[NoWrapper]
+		public virtual void databases_browse_xxx (DAAP.DMAPShare share, Soup.Server server, Soup.Message msg, string path, GLib.HashTable query, Soup.ClientContext context);
+		[NoWrapper]
+		public virtual void databases_items_xxx (DAAP.DMAPShare share, Soup.Server server, Soup.Message msg, string path, GLib.HashTable query, Soup.ClientContext context);
+		[CCode (cname = "dmap_share_free_filter")]
+		public static void free_filter (GLib.SList filter);
+		[NoWrapper]
+		public virtual uint get_desired_port (DAAP.DMAPShare share);
+		[NoWrapper]
+		public virtual void* get_meta_data_map (DAAP.DMAPShare share);
+		[NoWrapper]
+		public virtual unowned string get_type_of_service (DAAP.DMAPShare share);
+		[NoWrapper]
+		public virtual void login (DAAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void logout (DAAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void message_add_standard_headers (DAAP.DMAPShare share, Soup.Message msg);
+		[NoWrapper]
+		public virtual void name_collision (DAAP.DMAPShare share, DAAP.DMAPMdnsPublisher publisher, string name);
+		[NoWrapper]
+		public virtual void published (DAAP.DMAPShare share, DAAP.DMAPMdnsPublisher publisher, string name);
+		[NoWrapper]
+		public virtual void server_info (DAAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void update (DAAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoAccessorMethod]
+		public uint auth_method { get; set; }
+		[NoAccessorMethod]
+		public void* container_db { get; construct; }
+		[NoAccessorMethod]
+		public void* db { get; construct; }
+		[NoAccessorMethod]
+		public string name { owned get; set; }
+		[NoAccessorMethod]
+		public string password { owned get; set; }
+		[NoAccessorMethod]
+		public uint revision_number { get; set; }
+		[NoAccessorMethod]
+		public Soup.Server server_ipv4 { owned get; }
+		[NoAccessorMethod]
+		public Soup.Server server_ipv6 { owned get; }
+		[NoAccessorMethod]
+		public string transcode_mimetype { owned get; construct; }
+		[NoAccessorMethod]
+		[CCode (array_length = false, array_null_terminated = true)]
+		public string[] txt_records { owned get; set; }
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPStructureItem {
+		public Gst.Value content;
+		public DAAP.DMAPContentCode content_code;
+		public uint size;
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class FilterDefinition {
+		public weak string key;
+		public bool negate;
+		public weak string value;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class Share : DAAP.DMAPShare {
+		[CCode (has_construct_function = false)]
+		public Share (string name, string password, DMAP.Db db, DMAP.ContainerDb container_db, string transcode_mimetype);
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class bitwise {
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPContainerDb : GLib.Object {
+		[CCode (cname = "dmap_container_db_count")]
+		public abstract int64 count (DMAP.ContainerDb db);
+		[CCode (cname = "dmap_container_db_foreach")]
+		public abstract void @foreach (DMAP.ContainerDb db, GLib.HFunc func, void* data);
+		[CCode (cname = "dmap_container_db_lookup_by_id")]
+		public abstract unowned DAAP.DMAPContainerRecord lookup_by_id (DMAP.ContainerDb db, uint id);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPContainerRecord {
+		[CCode (cname = "dmap_container_record_add_entry")]
+		public abstract void add_entry (DAAP.DMAPContainerRecord container_record, DAAP.DMAPRecord record, int id);
+		[CCode (cname = "dmap_container_record_get_entries")]
+		public abstract unowned DMAP.Db get_entries (DAAP.DMAPContainerRecord record);
+		[CCode (cname = "dmap_container_record_get_entry_count")]
+		public abstract uint64 get_entry_count (DAAP.DMAPContainerRecord record);
+		[CCode (cname = "dmap_container_record_get_id")]
+		public abstract uint get_id (DAAP.DMAPContainerRecord record);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPDb : GLib.Object {
+		[CCode (cname = "dmap_db_add")]
+		public abstract uint add (DMAP.Db db, DAAP.DMAPRecord record);
+		[CCode (cname = "dmap_db_add_path")]
+		public abstract uint add_path (DMAP.Db db, string path);
+		[CCode (cname = "dmap_db_add_with_id")]
+		public abstract uint add_with_id (DMAP.Db db, DAAP.DMAPRecord record, uint id);
+		[CCode (cname = "dmap_db_apply_filter")]
+		public static unowned GLib.HashTable apply_filter (DMAP.Db db, GLib.SList filter_def);
+		[CCode (cname = "dmap_db_count")]
+		public abstract int64 count (DMAP.Db db);
+		[CCode (cname = "dmap_db_foreach")]
+		public abstract void @foreach (DMAP.Db db, GLib.HFunc func, void* data);
+		[CCode (cname = "dmap_db_lookup_by_id")]
+		public abstract unowned DAAP.DMAPRecord lookup_by_id (DMAP.Db db, uint id);
+		[CCode (cname = "dmap_db_lookup_id_by_location")]
+		public abstract uint lookup_id_by_location (DMAP.Db db, string location);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPRecord : GLib.Object {
+		[CCode (cname = "dmap_record_set_from_blob")]
+		public abstract unowned DAAP.DMAPRecord set_from_blob (DAAP.DMAPRecord record, GLib.ByteArray blob);
+		[CCode (cname = "dmap_record_to_blob")]
+		public abstract unowned GLib.ByteArray to_blob (DAAP.DMAPRecord record);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPRecordFactory {
+		[CCode (cname = "dmap_record_factory_create")]
+		public abstract unowned DAAP.DMAPRecord create (DMAP.RecordFactory factory);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface Record {
+		public static int cmp_by_album (void* a, void* b, DMAP.Db db);
+		public abstract bool itunes_compat ();
+		public abstract unowned GLib.InputStream read () throws GLib.Error;
+	}
+	[CCode (cprefix = "DMAP_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPConnectionState {
+		GET_INFO,
+		GET_PASSWORD,
+		LOGIN,
+		GET_REVISION_NUMBER,
+		GET_DB_INFO,
+		GET_SONGS,
+		GET_PLAYLISTS,
+		GET_PLAYLIST_ENTRIES,
+		LOGOUT,
+		DONE
+	}
+	[CCode (cprefix = "DMAP_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPContentCode {
+		CC_INVALID,
+		RAW,
+		CC_MDCL,
+		CC_MSTT,
+		CC_MIID,
+		CC_MINM,
+		CC_MIKD,
+		CC_MPER,
+		CC_MCON,
+		CC_MCTI,
+		CC_MPCO,
+		CC_MSTS,
+		CC_MIMC,
+		CC_MCTC,
+		CC_MRCO,
+		CC_MTCO,
+		CC_MLCL,
+		CC_MLIT,
+		CC_MBCL,
+		CC_MSRV,
+		CC_MSAU,
+		CC_MSLR,
+		CC_MPRO,
+		CC_MSAL,
+		CC_MSUP,
+		CC_MSPI,
+		CC_MSEX,
+		CC_MSBR,
+		CC_MSQY,
+		CC_MSIX,
+		CC_MSRS,
+		CC_MSTM,
+		CC_MSDC,
+		CC_MCCR,
+		CC_MCNM,
+		CC_MCNA,
+		CC_MCTY,
+		CC_MLOG,
+		CC_MLID,
+		CC_MUPD,
+		CC_MUSR,
+		CC_MUTY,
+		CC_MUDL,
+		CC_MSMA,
+		CC_FQUESCH,
+		CC_APRO,
+		CC_AVDB,
+		CC_ABRO,
+		CC_ABAL,
+		CC_ABAR,
+		CC_ABCP,
+		CC_ABGN,
+		CC_ADBS,
+		CC_ASAL,
+		CC_ASAI,
+		CC_ASAA,
+		CC_ASAR,
+		CC_ASBT,
+		CC_ASBR,
+		CC_ASCM,
+		CC_ASCO,
+		CC_ASDA,
+		CC_ASDM,
+		CC_ASDC,
+		CC_ASDN,
+		CC_ASDB,
+		CC_ASEQ,
+		CC_ASFM,
+		CC_ASGN,
+		CC_ASDT,
+		CC_ASRV,
+		CC_ASSR,
+		CC_ASSZ,
+		CC_ASST,
+		CC_ASSP,
+		CC_ASTM,
+		CC_ASTC,
+		CC_ASTN,
+		CC_ASUR,
+		CC_ASYR,
+		CC_ASDK,
+		CC_ASUL,
+		CC_ASSU,
+		CC_ASSA,
+		CC_APLY,
+		CC_ABPL,
+		CC_APSO,
+		CC_PRSV,
+		CC_ARIF,
+		CC_MSAS,
+		CC_AGRP,
+		CC_AGAL,
+		CC_ASCP,
+		CC_PPRO,
+		CC_PASP,
+		CC_PFDT,
+		CC_PICD,
+		CC_PIMF,
+		CC_PFMT,
+		CC_PIFS,
+		CC_PLSZ,
+		CC_PHGT,
+		CC_PWTH,
+		CC_PRAT,
+		CC_PCMT,
+		CC_PRET,
+		CC_AESV,
+		CC_AEHV,
+		CC_AESP,
+		CC_AEPP,
+		CC_AEPS,
+		CC_AESG,
+		CC_AEMK,
+		CC_AEFP,
+		CC_CMPA,
+		CC_CMNM,
+		CC_CMTY,
+		CC_CMPG,
+		CC_CACI,
+		CC_CAPS,
+		CC_CASH,
+		CC_CARP,
+		CC_CAAS,
+		CC_CAAR,
+		CC_CAIA,
+		CC_CANP,
+		CC_CANN,
+		CC_CANA,
+		CC_CANL,
+		CC_CANG,
+		CC_CANT,
+		CC_CASP,
+		CC_CASS,
+		CC_CAST,
+		CC_CASU,
+		CC_CASG,
+		CC_CACR,
+		CC_CMCP,
+		CC_CMGT,
+		CC_CMIK,
+		CC_CMSP,
+		CC_CMST,
+		CC_CMSV,
+		CC_CMSR,
+		CC_CMMK,
+		CC_CMVO
+	}
+	[CCode (cprefix = "DMAP_MDNS_BROWSER_ERROR_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMdnsBrowserError {
+		NOT_RUNNING,
+		FAILED
+	}
+	[CCode (cprefix = "DMAP_MDNS_BROWSER_SERVICE_TYPE_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMdnsBrowserServiceType {
+		INVALID,
+		DAAP,
+		DPAP,
+		DACP,
+		LAST
+	}
+	[CCode (cprefix = "DMAP_MDNS_PUBLISHER_ERROR_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMdnsPublisherError {
+		NOT_RUNNING,
+		FAILED
+	}
+	[CCode (cprefix = "DMAP_MEDIA_KIND_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMediaKind {
+		MUSIC,
+		MOVIE
+	}
+	[CCode (cprefix = "DMAP_TYPE_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPType {
+		BYTE,
+		SIGNED_INT,
+		SHORT,
+		INT,
+		INT64,
+		STRING,
+		DATE,
+		VERSION,
+		CONTAINER,
+		POINTER
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public delegate bool DMAPConnectionCallback (DAAP.DMAPConnection connection, bool result, string reason);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public delegate void DMAPResponseHandler (DAAP.DMAPConnection connection, uint status, GLib.Node structure);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h", has_target = false)]
+	public delegate unowned string RecordGetValueFunc (DAAP.DMAPRecord record);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public const int DMAP_STATUS_OK;
+	[CCode (cname = "dmap_content_code_dmap_type", cheader_filename = "libdmapsharing/dmap.h")]
+	public static DAAP.DMAPType dmap_content_code_dmap_type (DAAP.DMAPContentCode code);
+	[CCode (cname = "dmap_content_code_name", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmap_content_code_name (DAAP.DMAPContentCode code);
+	[CCode (cname = "dmap_content_code_read_from_buffer", cheader_filename = "libdmapsharing/dmap.h")]
+	public static DAAP.DMAPContentCode dmap_content_code_read_from_buffer (string buf);
+	[CCode (cname = "dmap_content_code_string", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmap_content_code_string (DAAP.DMAPContentCode code);
+	[CCode (cname = "dmap_content_code_string_as_int32", cheader_filename = "libdmapsharing/dmap.h")]
+	public static int32 dmap_content_code_string_as_int32 (string str);
+	[CCode (cname = "dmap_content_codes", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned DAAP.DMAPContentCodeDefinition dmap_content_codes (uint number);
+	[CCode (cname = "dmap_hash_generate", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_hash_generate (short version_major, uchar[] url, uchar hash_select, uchar[] @out, int request_id);
+	[CCode (cname = "dmap_structure_add", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node dmap_structure_add (GLib.Node parent, DAAP.DMAPContentCode cc);
+	[CCode (cname = "dmap_structure_destroy", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_structure_destroy (GLib.Node structure);
+	[CCode (cname = "dmap_structure_find_item", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned DAAP.DMAPStructureItem dmap_structure_find_item (GLib.Node structure, DAAP.DMAPContentCode code);
+	[CCode (cname = "dmap_structure_find_node", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node dmap_structure_find_node (GLib.Node structure, DAAP.DMAPContentCode code);
+	[CCode (cname = "dmap_structure_get_size", cheader_filename = "libdmapsharing/dmap.h")]
+	public static uint dmap_structure_get_size (GLib.Node structure);
+	[CCode (cname = "dmap_structure_increase_by_predicted_size", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_structure_increase_by_predicted_size (GLib.Node structure, uint size);
+	[CCode (cname = "dmap_structure_parse", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node dmap_structure_parse (string buf, int buf_length);
+	[CCode (cname = "dmap_structure_print", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_structure_print (GLib.Node structure);
+	[CCode (cname = "dmap_structure_serialize", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmap_structure_serialize (GLib.Node structure, uint length);
+	[CCode (cname = "dmapd_input_stream_strdup_format_extension", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmapd_input_stream_strdup_format_extension (int format_code);
+}
+/* libdmapsharing-3.0-dacp.vapi generated by vapigen, do not modify. */
+
+[CCode (cprefix = "DACP", lower_case_cprefix = "dacp_")]
+namespace DACP {
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class Connection : DACP.DMAPConnection {
+		[CCode (has_construct_function = false)]
+		public Connection (string name, string host, uint port, bool password_protected, DMAP.Db db, DACP.DMAPRecordFactory factory);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DAAPConnection : DACP.DMAPConnection {
+		[CCode (cname = "daap_connection_new", type = "DAAPConnection*", has_construct_function = false)]
+		public DAAPConnection (string name, string host, uint port, bool password_protected, DMAP.Db db, DACP.DMAPRecordFactory factory);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DAAPShare : DACP.DMAPShare {
+		[CCode (cname = "daap_share_new", type = "DAAPShare*", has_construct_function = false)]
+		public DAAPShare (string name, string password, DMAP.Db db, DMAP.ContainerDb container_db, string transcode_mimetype);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPConnection : GLib.Object {
+		[CCode (has_construct_function = false)]
+		protected DMAPConnection ();
+		[CCode (cname = "dmap_connection_build_message")]
+		public virtual unowned Soup.Message build_message (DACP.DMAPConnection connection, string path, bool need_hash, double version, int req_id, bool send_close);
+		[CCode (cname = "dmap_connection_connect")]
+		public static void connect (DACP.DMAPConnection connection, DACP.DMAPConnectionCallback callback);
+		[CCode (cname = "dmap_connection_disconnect")]
+		public static void disconnect (DACP.DMAPConnection connection, DACP.DMAPConnectionCallback callback);
+		[CCode (cname = "dmap_connection_get")]
+		public bool @get (string path, bool need_hash, DACP.DMAPResponseHandler handler);
+		[CCode (cname = "dmap_connection_get_headers")]
+		public static unowned Soup.MessageHeaders get_headers (DACP.DMAPConnection connection, string uri);
+		[CCode (cname = "dmap_connection_get_playlists")]
+		public static unowned GLib.SList get_playlists (DACP.DMAPConnection connection);
+		[NoWrapper]
+		public virtual DACP.DMAPContentCode get_protocol_version_cc (DACP.DMAPConnection connection);
+		[NoWrapper]
+		public virtual unowned string get_query_metadata (DACP.DMAPConnection connection);
+		[NoWrapper]
+		public virtual unowned DACP.DMAPRecord handle_mlcl (DACP.DMAPConnection connection, DACP.DMAPRecordFactory factory, GLib.Node mlcl, int item_id);
+		[CCode (cname = "dmap_connection_is_connected")]
+		public static bool is_connected (DACP.DMAPConnection connection);
+		[CCode (cname = "dmap_connection_setup")]
+		public static void setup (DACP.DMAPConnection connection);
+		[NoAccessorMethod]
+		public void* base_uri { get; set; }
+		[NoAccessorMethod]
+		public int database_id { get; set; }
+		[NoAccessorMethod]
+		public void* db { get; construct; }
+		[NoAccessorMethod]
+		public double dmap_version { get; set; }
+		[NoAccessorMethod]
+		public void* factory { get; construct; }
+		[NoAccessorMethod]
+		public string host { owned get; construct; }
+		[NoAccessorMethod]
+		public string name { owned get; construct; }
+		[NoAccessorMethod]
+		public bool password_protected { get; construct; }
+		[NoAccessorMethod]
+		public uint port { get; construct; }
+		[NoAccessorMethod]
+		public int revision_number { get; set; }
+		[NoAccessorMethod]
+		public int session_id { get; set; }
+		public virtual signal unowned string authenticate (string name);
+		public virtual signal void connected ();
+		public virtual signal void connecting (ulong state, float progress);
+		public virtual signal void disconnected ();
+		public virtual signal void operation_done ();
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPContentCodeDefinition {
+		public DACP.DMAPContentCode code;
+		public int32 int_code;
+		public weak string name;
+		[CCode (cname = "string")]
+		public weak string str;
+		public DACP.DMAPType type;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPGstInputStream : GLib.InputStream, GLib.Seekable {
+		[CCode (cname = "dmap_gst_input_stream_new", type = "GInputStream*", has_construct_function = false)]
+		public DMAPGstInputStream (string transcode_mimetype, GLib.InputStream src_stream);
+		[CCode (cname = "dmap_gst_input_stream_new_buffer_cb", type = "void", has_construct_function = false)]
+		public DMAPGstInputStream.buffer_cb (Gst.Element element, DACP.DMAPGstInputStream stream);
+		[NoWrapper]
+		public virtual void kill_pipeline (DACP.DMAPGstInputStream p1);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMdnsBrowser : GLib.Object {
+		[CCode (cname = "dmap_mdns_browser_new", type = "DMAPMdnsBrowser*", has_construct_function = false)]
+		public DMAPMdnsBrowser (DACP.DMAPMdnsBrowserServiceType type);
+		[CCode (cname = "dmap_mdns_browser_error_quark")]
+		public static GLib.Quark error_quark ();
+		[CCode (cname = "dmap_mdns_browser_get_service_type")]
+		public static DACP.DMAPMdnsBrowserServiceType get_service_type (DACP.DMAPMdnsBrowser browser);
+		[CCode (cname = "dmap_mdns_browser_get_services")]
+		public static unowned GLib.SList get_services (DACP.DMAPMdnsBrowser browser);
+		[CCode (cname = "dmap_mdns_browser_start")]
+		public static bool start (DACP.DMAPMdnsBrowser browser) throws GLib.Error;
+		[CCode (cname = "dmap_mdns_browser_stop")]
+		public static bool stop (DACP.DMAPMdnsBrowser browser) throws GLib.Error;
+		public virtual signal void service_added (void* service);
+		public virtual signal void service_removed (string service);
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMdnsBrowserService {
+		public weak string host;
+		public weak string name;
+		public weak string pair;
+		public bool password_protected;
+		public uint port;
+		public weak string service_name;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMdnsPublisher : GLib.Object {
+		[CCode (cname = "dmap_mdns_publisher_new", type = "DMAPMdnsPublisher*", has_construct_function = false)]
+		public DMAPMdnsPublisher ();
+		[CCode (cname = "dmap_mdns_publisher_error_quark")]
+		public static GLib.Quark error_quark ();
+		[CCode (cname = "dmap_mdns_publisher_publish")]
+		public static bool publish (DACP.DMAPMdnsPublisher publisher, string name, uint port, string type_of_service, bool password_required, string txt_records) throws GLib.Error;
+		[CCode (cname = "dmap_mdns_publisher_rename_at_port")]
+		public static bool rename_at_port (DACP.DMAPMdnsPublisher publisher, uint port, string name) throws GLib.Error;
+		[CCode (cname = "dmap_mdns_publisher_withdraw")]
+		public static bool withdraw (DACP.DMAPMdnsPublisher publisher, uint port) throws GLib.Error;
+		public virtual signal void name_collision (string name);
+		public virtual signal void published (string name);
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMetaDataMap {
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPPlaylist {
+		public int id;
+		public weak string name;
+		public weak GLib.List uris;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPShare : GLib.Object {
+		[CCode (has_construct_function = false)]
+		protected DMAPShare ();
+		[NoWrapper]
+		public virtual void add_entry_to_mlcl (void* id, DACP.DMAPRecord record, void* mb);
+		[NoWrapper]
+		public virtual void content_codes (DACP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void ctrl_int (DACP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void databases (DACP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext context);
+		[NoWrapper]
+		public virtual void databases_browse_xxx (DACP.DMAPShare share, Soup.Server server, Soup.Message msg, string path, GLib.HashTable query, Soup.ClientContext context);
+		[NoWrapper]
+		public virtual void databases_items_xxx (DACP.DMAPShare share, Soup.Server server, Soup.Message msg, string path, GLib.HashTable query, Soup.ClientContext context);
+		[CCode (cname = "dmap_share_free_filter")]
+		public static void free_filter (GLib.SList filter);
+		[NoWrapper]
+		public virtual uint get_desired_port (DACP.DMAPShare share);
+		[NoWrapper]
+		public virtual void* get_meta_data_map (DACP.DMAPShare share);
+		[NoWrapper]
+		public virtual unowned string get_type_of_service (DACP.DMAPShare share);
+		[NoWrapper]
+		public virtual void login (DACP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void logout (DACP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void message_add_standard_headers (DACP.DMAPShare share, Soup.Message msg);
+		[NoWrapper]
+		public virtual void name_collision (DACP.DMAPShare share, DACP.DMAPMdnsPublisher publisher, string name);
+		[NoWrapper]
+		public virtual void published (DACP.DMAPShare share, DACP.DMAPMdnsPublisher publisher, string name);
+		[NoWrapper]
+		public virtual void server_info (DACP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void update (DACP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoAccessorMethod]
+		public uint auth_method { get; set; }
+		[NoAccessorMethod]
+		public void* container_db { get; construct; }
+		[NoAccessorMethod]
+		public void* db { get; construct; }
+		[NoAccessorMethod]
+		public string name { owned get; set; }
+		[NoAccessorMethod]
+		public string password { owned get; set; }
+		[NoAccessorMethod]
+		public uint revision_number { get; set; }
+		[NoAccessorMethod]
+		public Soup.Server server_ipv4 { owned get; }
+		[NoAccessorMethod]
+		public Soup.Server server_ipv6 { owned get; }
+		[NoAccessorMethod]
+		public string transcode_mimetype { owned get; construct; }
+		[NoAccessorMethod]
+		[CCode (array_length = false, array_null_terminated = true)]
+		public string[] txt_records { owned get; set; }
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPStructureItem {
+		public Gst.Value content;
+		public DACP.DMAPContentCode content_code;
+		public uint size;
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class FilterDefinition {
+		public weak string key;
+		public bool negate;
+		public weak string value;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class Share : DACP.DAAPShare {
+		[CCode (has_construct_function = false)]
+		public Share (string library_name, DACP.Player player, DMAP.Db db, DMAP.ContainerDb container_db);
+		public void pair (string service_name, char[] passcode);
+		public void player_updated ();
+		public void start_lookup ();
+		public void stop_lookup ();
+		[NoAccessorMethod]
+		public string library_name { owned get; set; }
+		[NoAccessorMethod]
+		public GLib.Object player { owned get; construct; }
+		public virtual signal void add_guid (string guid);
+		public virtual signal bool lookup_guid (string guid);
+		public virtual signal void remote_found (string service_name, string remote_name);
+		public virtual signal void remote_lost (string service_name);
+		public virtual signal void remote_paired (string service_name, bool connected);
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class bitwise {
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DAAPRecord {
+		[CCode (cname = "daap_record_cmp_by_album")]
+		public static int cmp_by_album (void* a, void* b, DMAP.Db db);
+		[CCode (cname = "daap_record_itunes_compat")]
+		public abstract bool itunes_compat (DAAP.Record record);
+		[CCode (cname = "daap_record_read")]
+		public abstract unowned GLib.InputStream read (DAAP.Record record) throws GLib.Error;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPContainerDb : GLib.Object {
+		[CCode (cname = "dmap_container_db_count")]
+		public abstract int64 count (DMAP.ContainerDb db);
+		[CCode (cname = "dmap_container_db_foreach")]
+		public abstract void @foreach (DMAP.ContainerDb db, GLib.HFunc func, void* data);
+		[CCode (cname = "dmap_container_db_lookup_by_id")]
+		public abstract unowned DACP.DMAPContainerRecord lookup_by_id (DMAP.ContainerDb db, uint id);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPContainerRecord {
+		[CCode (cname = "dmap_container_record_add_entry")]
+		public abstract void add_entry (DACP.DMAPContainerRecord container_record, DACP.DMAPRecord record, int id);
+		[CCode (cname = "dmap_container_record_get_entries")]
+		public abstract unowned DMAP.Db get_entries (DACP.DMAPContainerRecord record);
+		[CCode (cname = "dmap_container_record_get_entry_count")]
+		public abstract uint64 get_entry_count (DACP.DMAPContainerRecord record);
+		[CCode (cname = "dmap_container_record_get_id")]
+		public abstract uint get_id (DACP.DMAPContainerRecord record);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPDb : GLib.Object {
+		[CCode (cname = "dmap_db_add")]
+		public abstract uint add (DMAP.Db db, DACP.DMAPRecord record);
+		[CCode (cname = "dmap_db_add_path")]
+		public abstract uint add_path (DMAP.Db db, string path);
+		[CCode (cname = "dmap_db_add_with_id")]
+		public abstract uint add_with_id (DMAP.Db db, DACP.DMAPRecord record, uint id);
+		[CCode (cname = "dmap_db_apply_filter")]
+		public static unowned GLib.HashTable apply_filter (DMAP.Db db, GLib.SList filter_def);
+		[CCode (cname = "dmap_db_count")]
+		public abstract int64 count (DMAP.Db db);
+		[CCode (cname = "dmap_db_foreach")]
+		public abstract void @foreach (DMAP.Db db, GLib.HFunc func, void* data);
+		[CCode (cname = "dmap_db_lookup_by_id")]
+		public abstract unowned DACP.DMAPRecord lookup_by_id (DMAP.Db db, uint id);
+		[CCode (cname = "dmap_db_lookup_id_by_location")]
+		public abstract uint lookup_id_by_location (DMAP.Db db, string location);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPRecord : GLib.Object {
+		[CCode (cname = "dmap_record_set_from_blob")]
+		public abstract unowned DACP.DMAPRecord set_from_blob (DACP.DMAPRecord record, GLib.ByteArray blob);
+		[CCode (cname = "dmap_record_to_blob")]
+		public abstract unowned GLib.ByteArray to_blob (DACP.DMAPRecord record);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPRecordFactory {
+		[CCode (cname = "dmap_record_factory_create")]
+		public abstract unowned DACP.DMAPRecord create (DACP.DMAPRecordFactory factory);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface Player : GLib.Object {
+		public abstract void cue_clear ();
+		public abstract void cue_play (GLib.List records, uint index);
+		public abstract void next_item ();
+		public abstract unowned uchar[] now_playing_artwork (uint width, uint height);
+		public abstract unowned DAAP.Record now_playing_record ();
+		public abstract void pause ();
+		public abstract void play_pause ();
+		public abstract void prev_item ();
+		public DACP.PlayState play_state { get; set; }
+		public ulong playing_time { get; set; }
+		public DACP.RepeatState repeat_state { get; set; }
+		public bool shuffle_state { get; set; }
+		public ulong volume { get; set; }
+	}
+	[CCode (cprefix = "DMAP_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPConnectionState {
+		GET_INFO,
+		GET_PASSWORD,
+		LOGIN,
+		GET_REVISION_NUMBER,
+		GET_DB_INFO,
+		GET_SONGS,
+		GET_PLAYLISTS,
+		GET_PLAYLIST_ENTRIES,
+		LOGOUT,
+		DONE
+	}
+	[CCode (cprefix = "DMAP_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPContentCode {
+		CC_INVALID,
+		RAW,
+		CC_MDCL,
+		CC_MSTT,
+		CC_MIID,
+		CC_MINM,
+		CC_MIKD,
+		CC_MPER,
+		CC_MCON,
+		CC_MCTI,
+		CC_MPCO,
+		CC_MSTS,
+		CC_MIMC,
+		CC_MCTC,
+		CC_MRCO,
+		CC_MTCO,
+		CC_MLCL,
+		CC_MLIT,
+		CC_MBCL,
+		CC_MSRV,
+		CC_MSAU,
+		CC_MSLR,
+		CC_MPRO,
+		CC_MSAL,
+		CC_MSUP,
+		CC_MSPI,
+		CC_MSEX,
+		CC_MSBR,
+		CC_MSQY,
+		CC_MSIX,
+		CC_MSRS,
+		CC_MSTM,
+		CC_MSDC,
+		CC_MCCR,
+		CC_MCNM,
+		CC_MCNA,
+		CC_MCTY,
+		CC_MLOG,
+		CC_MLID,
+		CC_MUPD,
+		CC_MUSR,
+		CC_MUTY,
+		CC_MUDL,
+		CC_MSMA,
+		CC_FQUESCH,
+		CC_APRO,
+		CC_AVDB,
+		CC_ABRO,
+		CC_ABAL,
+		CC_ABAR,
+		CC_ABCP,
+		CC_ABGN,
+		CC_ADBS,
+		CC_ASAL,
+		CC_ASAI,
+		CC_ASAA,
+		CC_ASAR,
+		CC_ASBT,
+		CC_ASBR,
+		CC_ASCM,
+		CC_ASCO,
+		CC_ASDA,
+		CC_ASDM,
+		CC_ASDC,
+		CC_ASDN,
+		CC_ASDB,
+		CC_ASEQ,
+		CC_ASFM,
+		CC_ASGN,
+		CC_ASDT,
+		CC_ASRV,
+		CC_ASSR,
+		CC_ASSZ,
+		CC_ASST,
+		CC_ASSP,
+		CC_ASTM,
+		CC_ASTC,
+		CC_ASTN,
+		CC_ASUR,
+		CC_ASYR,
+		CC_ASDK,
+		CC_ASUL,
+		CC_ASSU,
+		CC_ASSA,
+		CC_APLY,
+		CC_ABPL,
+		CC_APSO,
+		CC_PRSV,
+		CC_ARIF,
+		CC_MSAS,
+		CC_AGRP,
+		CC_AGAL,
+		CC_ASCP,
+		CC_PPRO,
+		CC_PASP,
+		CC_PFDT,
+		CC_PICD,
+		CC_PIMF,
+		CC_PFMT,
+		CC_PIFS,
+		CC_PLSZ,
+		CC_PHGT,
+		CC_PWTH,
+		CC_PRAT,
+		CC_PCMT,
+		CC_PRET,
+		CC_AESV,
+		CC_AEHV,
+		CC_AESP,
+		CC_AEPP,
+		CC_AEPS,
+		CC_AESG,
+		CC_AEMK,
+		CC_AEFP,
+		CC_CMPA,
+		CC_CMNM,
+		CC_CMTY,
+		CC_CMPG,
+		CC_CACI,
+		CC_CAPS,
+		CC_CASH,
+		CC_CARP,
+		CC_CAAS,
+		CC_CAAR,
+		CC_CAIA,
+		CC_CANP,
+		CC_CANN,
+		CC_CANA,
+		CC_CANL,
+		CC_CANG,
+		CC_CANT,
+		CC_CASP,
+		CC_CASS,
+		CC_CAST,
+		CC_CASU,
+		CC_CASG,
+		CC_CACR,
+		CC_CMCP,
+		CC_CMGT,
+		CC_CMIK,
+		CC_CMSP,
+		CC_CMST,
+		CC_CMSV,
+		CC_CMSR,
+		CC_CMMK,
+		CC_CMVO
+	}
+	[CCode (cprefix = "DMAP_MDNS_BROWSER_ERROR_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMdnsBrowserError {
+		NOT_RUNNING,
+		FAILED
+	}
+	[CCode (cprefix = "DMAP_MDNS_BROWSER_SERVICE_TYPE_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMdnsBrowserServiceType {
+		INVALID,
+		DAAP,
+		DPAP,
+		DACP,
+		LAST
+	}
+	[CCode (cprefix = "DMAP_MDNS_PUBLISHER_ERROR_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMdnsPublisherError {
+		NOT_RUNNING,
+		FAILED
+	}
+	[CCode (cprefix = "DMAP_MEDIA_KIND_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMediaKind {
+		MUSIC,
+		MOVIE
+	}
+	[CCode (cprefix = "DMAP_TYPE_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPType {
+		BYTE,
+		SIGNED_INT,
+		SHORT,
+		INT,
+		INT64,
+		STRING,
+		DATE,
+		VERSION,
+		CONTAINER,
+		POINTER
+	}
+	[CCode (cprefix = "PLAY_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum PlayState {
+		STOPPED,
+		PAUSED,
+		PLAYING
+	}
+	[CCode (cprefix = "REPEAT_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum RepeatState {
+		NONE,
+		SINGLE,
+		ALL
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public delegate bool DMAPConnectionCallback (DACP.DMAPConnection connection, bool result, string reason);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public delegate void DMAPResponseHandler (DACP.DMAPConnection connection, uint status, GLib.Node structure);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h", has_target = false)]
+	public delegate unowned string RecordGetValueFunc (DACP.DMAPRecord record);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public const int DMAP_STATUS_OK;
+	[CCode (cname = "dmap_content_code_dmap_type", cheader_filename = "libdmapsharing/dmap.h")]
+	public static DACP.DMAPType dmap_content_code_dmap_type (DACP.DMAPContentCode code);
+	[CCode (cname = "dmap_content_code_name", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmap_content_code_name (DACP.DMAPContentCode code);
+	[CCode (cname = "dmap_content_code_read_from_buffer", cheader_filename = "libdmapsharing/dmap.h")]
+	public static DACP.DMAPContentCode dmap_content_code_read_from_buffer (string buf);
+	[CCode (cname = "dmap_content_code_string", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmap_content_code_string (DACP.DMAPContentCode code);
+	[CCode (cname = "dmap_content_code_string_as_int32", cheader_filename = "libdmapsharing/dmap.h")]
+	public static int32 dmap_content_code_string_as_int32 (string str);
+	[CCode (cname = "dmap_content_codes", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned DACP.DMAPContentCodeDefinition dmap_content_codes (uint number);
+	[CCode (cname = "dmap_hash_generate", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_hash_generate (short version_major, uchar[] url, uchar hash_select, uchar[] @out, int request_id);
+	[CCode (cname = "dmap_structure_add", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node dmap_structure_add (GLib.Node parent, DACP.DMAPContentCode cc);
+	[CCode (cname = "dmap_structure_destroy", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_structure_destroy (GLib.Node structure);
+	[CCode (cname = "dmap_structure_find_item", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned DACP.DMAPStructureItem dmap_structure_find_item (GLib.Node structure, DACP.DMAPContentCode code);
+	[CCode (cname = "dmap_structure_find_node", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node dmap_structure_find_node (GLib.Node structure, DACP.DMAPContentCode code);
+	[CCode (cname = "dmap_structure_get_size", cheader_filename = "libdmapsharing/dmap.h")]
+	public static uint dmap_structure_get_size (GLib.Node structure);
+	[CCode (cname = "dmap_structure_increase_by_predicted_size", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_structure_increase_by_predicted_size (GLib.Node structure, uint size);
+	[CCode (cname = "dmap_structure_parse", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node dmap_structure_parse (string buf, int buf_length);
+	[CCode (cname = "dmap_structure_print", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_structure_print (GLib.Node structure);
+	[CCode (cname = "dmap_structure_serialize", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmap_structure_serialize (GLib.Node structure, uint length);
+	[CCode (cname = "dmapd_input_stream_strdup_format_extension", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmapd_input_stream_strdup_format_extension (int format_code);
+}
+/* libdmapsharing-3.0-dmap.vapi generated by vapigen, do not modify. */
+
+[CCode (cprefix = "DMAP", lower_case_cprefix = "dmap_")]
+namespace DMAP {
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class Connection : GLib.Object {
+		[CCode (has_construct_function = false)]
+		protected Connection ();
+		public virtual unowned Soup.Message build_message (string path, bool need_hash, double version, int req_id, bool send_close);
+		public void connect (DMAP.ConnectionCallback callback);
+		public void disconnect (DMAP.ConnectionCallback callback);
+		public bool @get (string path, bool need_hash, DMAP.ResponseHandler handler);
+		public unowned Soup.MessageHeaders get_headers (string uri);
+		public unowned GLib.SList get_playlists ();
+		[NoWrapper]
+		public virtual DMAP.ContentCode get_protocol_version_cc ();
+		[NoWrapper]
+		public virtual unowned string get_query_metadata ();
+		[NoWrapper]
+		public virtual unowned DMAP.Record handle_mlcl (DMAP.RecordFactory factory, GLib.Node mlcl, int item_id);
+		public bool is_connected ();
+		public void setup ();
+		[NoAccessorMethod]
+		public void* base_uri { get; set; }
+		[NoAccessorMethod]
+		public int database_id { get; set; }
+		[NoAccessorMethod]
+		public void* db { get; construct; }
+		[NoAccessorMethod]
+		public double dmap_version { get; set; }
+		[NoAccessorMethod]
+		public void* factory { get; construct; }
+		[NoAccessorMethod]
+		public string host { owned get; construct; }
+		[NoAccessorMethod]
+		public string name { owned get; construct; }
+		[NoAccessorMethod]
+		public bool password_protected { get; construct; }
+		[NoAccessorMethod]
+		public uint port { get; construct; }
+		[NoAccessorMethod]
+		public int revision_number { get; set; }
+		[NoAccessorMethod]
+		public int session_id { get; set; }
+		public virtual signal unowned string authenticate (string name);
+		public virtual signal void connected ();
+		public virtual signal void connecting (ulong state, float progress);
+		public virtual signal void disconnected ();
+		public virtual signal void operation_done ();
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class ContentCodeDefinition {
+		public DMAP.ContentCode code;
+		public int32 int_code;
+		public weak string name;
+		[CCode (cname = "string")]
+		public weak string str;
+		public DMAP.Type type;
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class FilterDefinition {
+		public weak string key;
+		public bool negate;
+		public weak string value;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class GstInputStream : GLib.InputStream, GLib.Seekable {
+		[CCode (type = "GInputStream*", has_construct_function = false)]
+		public GstInputStream (string transcode_mimetype, GLib.InputStream src_stream);
+		[CCode (type = "void", has_construct_function = false)]
+		public GstInputStream.buffer_cb (Gst.Element element, DMAP.GstInputStream stream);
+		[NoWrapper]
+		public virtual void kill_pipeline ();
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class MdnsBrowser : GLib.Object {
+		[CCode (has_construct_function = false)]
+		public MdnsBrowser (DMAP.MdnsBrowserServiceType type);
+		public static GLib.Quark error_quark ();
+		public DMAP.MdnsBrowserServiceType get_service_type ();
+		public unowned GLib.SList get_services ();
+		public bool start () throws GLib.Error;
+		public bool stop () throws GLib.Error;
+		public virtual signal void service_added (void* service);
+		public virtual signal void service_removed (string service);
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class MdnsBrowserService {
+		public weak string host;
+		public weak string name;
+		public weak string pair;
+		public bool password_protected;
+		public uint port;
+		public weak string service_name;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class MdnsPublisher : GLib.Object {
+		[CCode (has_construct_function = false)]
+		public MdnsPublisher ();
+		public static GLib.Quark error_quark ();
+		public bool publish (string name, uint port, string type_of_service, bool password_required, string txt_records) throws GLib.Error;
+		public bool rename_at_port (uint port, string name) throws GLib.Error;
+		public bool withdraw (uint port) throws GLib.Error;
+		public virtual signal void name_collision (string name);
+		public virtual signal void published (string name);
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class MetaDataMap {
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class Playlist {
+		public int id;
+		public weak string name;
+		public weak GLib.List uris;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class Share : GLib.Object {
+		[CCode (has_construct_function = false)]
+		protected Share ();
+		[NoWrapper]
+		public virtual void add_entry_to_mlcl (void* id, DMAP.Record record, void* mb);
+		[NoWrapper]
+		public virtual void content_codes (Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void ctrl_int (Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void databases (Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext context);
+		[NoWrapper]
+		public virtual void databases_browse_xxx (Soup.Server server, Soup.Message msg, string path, GLib.HashTable query, Soup.ClientContext context);
+		[NoWrapper]
+		public virtual void databases_items_xxx (Soup.Server server, Soup.Message msg, string path, GLib.HashTable query, Soup.ClientContext context);
+		public static void free_filter (GLib.SList filter);
+		[NoWrapper]
+		public virtual uint get_desired_port ();
+		[NoWrapper]
+		public virtual void* get_meta_data_map ();
+		[NoWrapper]
+		public virtual unowned string get_type_of_service ();
+		[NoWrapper]
+		public virtual void login (Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void logout (Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void message_add_standard_headers (Soup.Message msg);
+		[NoWrapper]
+		public virtual void name_collision (DMAP.MdnsPublisher publisher, string name);
+		[NoWrapper]
+		public virtual void published (DMAP.MdnsPublisher publisher, string name);
+		[NoWrapper]
+		public virtual void server_info (Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void update (Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoAccessorMethod]
+		public uint auth_method { get; set; }
+		[NoAccessorMethod]
+		public void* container_db { get; construct; }
+		[NoAccessorMethod]
+		public void* db { get; construct; }
+		[NoAccessorMethod]
+		public string name { owned get; set; }
+		[NoAccessorMethod]
+		public string password { owned get; set; }
+		[NoAccessorMethod]
+		public uint revision_number { get; set; }
+		[NoAccessorMethod]
+		public Soup.Server server_ipv4 { owned get; }
+		[NoAccessorMethod]
+		public Soup.Server server_ipv6 { owned get; }
+		[NoAccessorMethod]
+		public string transcode_mimetype { owned get; construct; }
+		[NoAccessorMethod]
+		[CCode (array_length = false, array_null_terminated = true)]
+		public string[] txt_records { owned get; set; }
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class StructureItem {
+		public Gst.Value content;
+		public DMAP.ContentCode content_code;
+		public uint size;
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class bitwise {
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface ContainerDb : GLib.Object {
+		public abstract int64 count ();
+		public abstract void @foreach (GLib.HFunc func);
+		public abstract unowned DMAP.ContainerRecord lookup_by_id (uint id);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface ContainerRecord {
+		public abstract void add_entry (DMAP.Record record, int id);
+		public abstract unowned DMAP.Db get_entries ();
+		public abstract uint64 get_entry_count ();
+		public abstract uint get_id ();
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface Db : GLib.Object {
+		public abstract uint add (DMAP.Record record);
+		public abstract uint add_path (string path);
+		public abstract uint add_with_id (DMAP.Record record, uint id);
+		public unowned GLib.HashTable apply_filter (GLib.SList filter_def);
+		public abstract int64 count ();
+		public abstract void @foreach (GLib.HFunc func);
+		public abstract unowned DMAP.Record lookup_by_id (uint id);
+		public abstract uint lookup_id_by_location (string location);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface Record : GLib.Object {
+		public abstract unowned DMAP.Record set_from_blob (GLib.ByteArray blob);
+		public abstract unowned GLib.ByteArray to_blob ();
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface RecordFactory {
+		public abstract DMAP.Record create (void* user_data);
+	}
+	[CCode (cprefix = "DMAP_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum ConnectionState {
+		GET_INFO,
+		GET_PASSWORD,
+		LOGIN,
+		GET_REVISION_NUMBER,
+		GET_DB_INFO,
+		GET_SONGS,
+		GET_PLAYLISTS,
+		GET_PLAYLIST_ENTRIES,
+		LOGOUT,
+		DONE
+	}
+	[CCode (cprefix = "DMAP_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum ContentCode {
+		CC_INVALID,
+		RAW,
+		CC_MDCL,
+		CC_MSTT,
+		CC_MIID,
+		CC_MINM,
+		CC_MIKD,
+		CC_MPER,
+		CC_MCON,
+		CC_MCTI,
+		CC_MPCO,
+		CC_MSTS,
+		CC_MIMC,
+		CC_MCTC,
+		CC_MRCO,
+		CC_MTCO,
+		CC_MLCL,
+		CC_MLIT,
+		CC_MBCL,
+		CC_MSRV,
+		CC_MSAU,
+		CC_MSLR,
+		CC_MPRO,
+		CC_MSAL,
+		CC_MSUP,
+		CC_MSPI,
+		CC_MSEX,
+		CC_MSBR,
+		CC_MSQY,
+		CC_MSIX,
+		CC_MSRS,
+		CC_MSTM,
+		CC_MSDC,
+		CC_MCCR,
+		CC_MCNM,
+		CC_MCNA,
+		CC_MCTY,
+		CC_MLOG,
+		CC_MLID,
+		CC_MUPD,
+		CC_MUSR,
+		CC_MUTY,
+		CC_MUDL,
+		CC_MSMA,
+		CC_FQUESCH,
+		CC_APRO,
+		CC_AVDB,
+		CC_ABRO,
+		CC_ABAL,
+		CC_ABAR,
+		CC_ABCP,
+		CC_ABGN,
+		CC_ADBS,
+		CC_ASAL,
+		CC_ASAI,
+		CC_ASAA,
+		CC_ASAR,
+		CC_ASBT,
+		CC_ASBR,
+		CC_ASCM,
+		CC_ASCO,
+		CC_ASDA,
+		CC_ASDM,
+		CC_ASDC,
+		CC_ASDN,
+		CC_ASDB,
+		CC_ASEQ,
+		CC_ASFM,
+		CC_ASGN,
+		CC_ASDT,
+		CC_ASRV,
+		CC_ASSR,
+		CC_ASSZ,
+		CC_ASST,
+		CC_ASSP,
+		CC_ASTM,
+		CC_ASTC,
+		CC_ASTN,
+		CC_ASUR,
+		CC_ASYR,
+		CC_ASDK,
+		CC_ASUL,
+		CC_ASSU,
+		CC_ASSA,
+		CC_APLY,
+		CC_ABPL,
+		CC_APSO,
+		CC_PRSV,
+		CC_ARIF,
+		CC_MSAS,
+		CC_AGRP,
+		CC_AGAL,
+		CC_ASCP,
+		CC_PPRO,
+		CC_PASP,
+		CC_PFDT,
+		CC_PICD,
+		CC_PIMF,
+		CC_PFMT,
+		CC_PIFS,
+		CC_PLSZ,
+		CC_PHGT,
+		CC_PWTH,
+		CC_PRAT,
+		CC_PCMT,
+		CC_PRET,
+		CC_AESV,
+		CC_AEHV,
+		CC_AESP,
+		CC_AEPP,
+		CC_AEPS,
+		CC_AESG,
+		CC_AEMK,
+		CC_AEFP,
+		CC_CMPA,
+		CC_CMNM,
+		CC_CMTY,
+		CC_CMPG,
+		CC_CACI,
+		CC_CAPS,
+		CC_CASH,
+		CC_CARP,
+		CC_CAAS,
+		CC_CAAR,
+		CC_CAIA,
+		CC_CANP,
+		CC_CANN,
+		CC_CANA,
+		CC_CANL,
+		CC_CANG,
+		CC_CANT,
+		CC_CASP,
+		CC_CASS,
+		CC_CAST,
+		CC_CASU,
+		CC_CASG,
+		CC_CACR,
+		CC_CMCP,
+		CC_CMGT,
+		CC_CMIK,
+		CC_CMSP,
+		CC_CMST,
+		CC_CMSV,
+		CC_CMSR,
+		CC_CMMK,
+		CC_CMVO
+	}
+	[CCode (cprefix = "DMAP_MDNS_BROWSER_ERROR_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum MdnsBrowserError {
+		NOT_RUNNING,
+		FAILED
+	}
+	[CCode (cprefix = "DMAP_MDNS_BROWSER_SERVICE_TYPE_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum MdnsBrowserServiceType {
+		INVALID,
+		DAAP,
+		DPAP,
+		DACP,
+		LAST
+	}
+	[CCode (cprefix = "DMAP_MDNS_PUBLISHER_ERROR_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum MdnsPublisherError {
+		NOT_RUNNING,
+		FAILED
+	}
+	[CCode (cprefix = "DMAP_MEDIA_KIND_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum MediaKind {
+		MUSIC,
+		MOVIE
+	}
+	[CCode (cprefix = "DMAP_TYPE_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum Type {
+		BYTE,
+		SIGNED_INT,
+		SHORT,
+		INT,
+		INT64,
+		STRING,
+		DATE,
+		VERSION,
+		CONTAINER,
+		POINTER
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public delegate bool ConnectionCallback (DMAP.Connection connection, bool result, string reason);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h", has_target = false)]
+	public delegate unowned string RecordGetValueFunc (DMAP.Record record);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public delegate void ResponseHandler (DMAP.Connection connection, uint status, GLib.Node structure);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public const int STATUS_OK;
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static DMAP.Type content_code_dmap_type (DMAP.ContentCode code);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string content_code_name (DMAP.ContentCode code);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static DMAP.ContentCode content_code_read_from_buffer (string buf);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string content_code_string (DMAP.ContentCode code);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static int32 content_code_string_as_int32 (string str);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned DMAP.ContentCodeDefinition content_codes (uint number);
+	[CCode (cname = "dmapd_input_stream_strdup_format_extension", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmapd_input_stream_strdup_format_extension (int format_code);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static void hash_generate (short version_major, uchar[] url, uchar hash_select, uchar[] @out, int request_id);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node structure_add (GLib.Node parent, DMAP.ContentCode cc);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static void structure_destroy (GLib.Node structure);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned DMAP.StructureItem structure_find_item (GLib.Node structure, DMAP.ContentCode code);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node structure_find_node (GLib.Node structure, DMAP.ContentCode code);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static uint structure_get_size (GLib.Node structure);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static void structure_increase_by_predicted_size (GLib.Node structure, uint size);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node structure_parse (string buf, int buf_length);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static void structure_print (GLib.Node structure);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string structure_serialize (GLib.Node structure, uint length);
+}
+/* libdmapsharing-3.0-dpap.vapi generated by vapigen, do not modify. */
+
+[CCode (cprefix = "DPAP", lower_case_cprefix = "dpap_")]
+namespace DPAP {
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class Connection : DPAP.DMAPConnection {
+		[CCode (has_construct_function = false)]
+		public Connection (string name, string host, uint port, bool password_protected, DMAP.Db db, DMAP.RecordFactory factory);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPConnection : GLib.Object {
+		[CCode (has_construct_function = false)]
+		protected DMAPConnection ();
+		[CCode (cname = "dmap_connection_build_message")]
+		public virtual unowned Soup.Message build_message (DPAP.DMAPConnection connection, string path, bool need_hash, double version, int req_id, bool send_close);
+		[CCode (cname = "dmap_connection_connect")]
+		public static void connect (DPAP.DMAPConnection connection, DPAP.DMAPConnectionCallback callback);
+		[CCode (cname = "dmap_connection_disconnect")]
+		public static void disconnect (DPAP.DMAPConnection connection, DPAP.DMAPConnectionCallback callback);
+		[CCode (cname = "dmap_connection_get")]
+		public bool @get (string path, bool need_hash, DPAP.DMAPResponseHandler handler);
+		[CCode (cname = "dmap_connection_get_headers")]
+		public static unowned Soup.MessageHeaders get_headers (DPAP.DMAPConnection connection, string uri);
+		[CCode (cname = "dmap_connection_get_playlists")]
+		public static unowned GLib.SList get_playlists (DPAP.DMAPConnection connection);
+		[NoWrapper]
+		public virtual DPAP.DMAPContentCode get_protocol_version_cc (DPAP.DMAPConnection connection);
+		[NoWrapper]
+		public virtual unowned string get_query_metadata (DPAP.DMAPConnection connection);
+		[NoWrapper]
+		public virtual unowned DPAP.DMAPRecord handle_mlcl (DPAP.DMAPConnection connection, DMAP.RecordFactory factory, GLib.Node mlcl, int item_id);
+		[CCode (cname = "dmap_connection_is_connected")]
+		public static bool is_connected (DPAP.DMAPConnection connection);
+		[CCode (cname = "dmap_connection_setup")]
+		public static void setup (DPAP.DMAPConnection connection);
+		[NoAccessorMethod]
+		public void* base_uri { get; set; }
+		[NoAccessorMethod]
+		public int database_id { get; set; }
+		[NoAccessorMethod]
+		public void* db { get; construct; }
+		[NoAccessorMethod]
+		public double dmap_version { get; set; }
+		[NoAccessorMethod]
+		public void* factory { get; construct; }
+		[NoAccessorMethod]
+		public string host { owned get; construct; }
+		[NoAccessorMethod]
+		public string name { owned get; construct; }
+		[NoAccessorMethod]
+		public bool password_protected { get; construct; }
+		[NoAccessorMethod]
+		public uint port { get; construct; }
+		[NoAccessorMethod]
+		public int revision_number { get; set; }
+		[NoAccessorMethod]
+		public int session_id { get; set; }
+		public virtual signal unowned string authenticate (string name);
+		public virtual signal void connected ();
+		public virtual signal void connecting (ulong state, float progress);
+		public virtual signal void disconnected ();
+		public virtual signal void operation_done ();
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPContentCodeDefinition {
+		public DPAP.DMAPContentCode code;
+		public int32 int_code;
+		public weak string name;
+		[CCode (cname = "string")]
+		public weak string str;
+		public DPAP.DMAPType type;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPGstInputStream : GLib.InputStream, GLib.Seekable {
+		[CCode (cname = "dmap_gst_input_stream_new", type = "GInputStream*", has_construct_function = false)]
+		public DMAPGstInputStream (string transcode_mimetype, GLib.InputStream src_stream);
+		[CCode (cname = "dmap_gst_input_stream_new_buffer_cb", type = "void", has_construct_function = false)]
+		public DMAPGstInputStream.buffer_cb (Gst.Element element, DPAP.DMAPGstInputStream stream);
+		[NoWrapper]
+		public virtual void kill_pipeline (DPAP.DMAPGstInputStream p1);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMdnsBrowser : GLib.Object {
+		[CCode (cname = "dmap_mdns_browser_new", type = "DMAPMdnsBrowser*", has_construct_function = false)]
+		public DMAPMdnsBrowser (DPAP.DMAPMdnsBrowserServiceType type);
+		[CCode (cname = "dmap_mdns_browser_error_quark")]
+		public static GLib.Quark error_quark ();
+		[CCode (cname = "dmap_mdns_browser_get_service_type")]
+		public static DPAP.DMAPMdnsBrowserServiceType get_service_type (DPAP.DMAPMdnsBrowser browser);
+		[CCode (cname = "dmap_mdns_browser_get_services")]
+		public static unowned GLib.SList get_services (DPAP.DMAPMdnsBrowser browser);
+		[CCode (cname = "dmap_mdns_browser_start")]
+		public static bool start (DPAP.DMAPMdnsBrowser browser) throws GLib.Error;
+		[CCode (cname = "dmap_mdns_browser_stop")]
+		public static bool stop (DPAP.DMAPMdnsBrowser browser) throws GLib.Error;
+		public virtual signal void service_added (void* service);
+		public virtual signal void service_removed (string service);
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMdnsBrowserService {
+		public weak string host;
+		public weak string name;
+		public weak string pair;
+		public bool password_protected;
+		public uint port;
+		public weak string service_name;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMdnsPublisher : GLib.Object {
+		[CCode (cname = "dmap_mdns_publisher_new", type = "DMAPMdnsPublisher*", has_construct_function = false)]
+		public DMAPMdnsPublisher ();
+		[CCode (cname = "dmap_mdns_publisher_error_quark")]
+		public static GLib.Quark error_quark ();
+		[CCode (cname = "dmap_mdns_publisher_publish")]
+		public static bool publish (DPAP.DMAPMdnsPublisher publisher, string name, uint port, string type_of_service, bool password_required, string txt_records) throws GLib.Error;
+		[CCode (cname = "dmap_mdns_publisher_rename_at_port")]
+		public static bool rename_at_port (DPAP.DMAPMdnsPublisher publisher, uint port, string name) throws GLib.Error;
+		[CCode (cname = "dmap_mdns_publisher_withdraw")]
+		public static bool withdraw (DPAP.DMAPMdnsPublisher publisher, uint port) throws GLib.Error;
+		public virtual signal void name_collision (string name);
+		public virtual signal void published (string name);
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPMetaDataMap {
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPPlaylist {
+		public int id;
+		public weak string name;
+		public weak GLib.List uris;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPShare : GLib.Object {
+		[CCode (has_construct_function = false)]
+		protected DMAPShare ();
+		[NoWrapper]
+		public virtual void add_entry_to_mlcl (void* id, DPAP.DMAPRecord record, void* mb);
+		[NoWrapper]
+		public virtual void content_codes (DPAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void ctrl_int (DPAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void databases (DPAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext context);
+		[NoWrapper]
+		public virtual void databases_browse_xxx (DPAP.DMAPShare share, Soup.Server server, Soup.Message msg, string path, GLib.HashTable query, Soup.ClientContext context);
+		[NoWrapper]
+		public virtual void databases_items_xxx (DPAP.DMAPShare share, Soup.Server server, Soup.Message msg, string path, GLib.HashTable query, Soup.ClientContext context);
+		[CCode (cname = "dmap_share_free_filter")]
+		public static void free_filter (GLib.SList filter);
+		[NoWrapper]
+		public virtual uint get_desired_port (DPAP.DMAPShare share);
+		[NoWrapper]
+		public virtual void* get_meta_data_map (DPAP.DMAPShare share);
+		[NoWrapper]
+		public virtual unowned string get_type_of_service (DPAP.DMAPShare share);
+		[NoWrapper]
+		public virtual void login (DPAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void logout (DPAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void message_add_standard_headers (DPAP.DMAPShare share, Soup.Message msg);
+		[NoWrapper]
+		public virtual void name_collision (DPAP.DMAPShare share, DPAP.DMAPMdnsPublisher publisher, string name);
+		[NoWrapper]
+		public virtual void published (DPAP.DMAPShare share, DPAP.DMAPMdnsPublisher publisher, string name);
+		[NoWrapper]
+		public virtual void server_info (DPAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoWrapper]
+		public virtual void update (DPAP.DMAPShare share, Soup.Server server, Soup.Message message, string path, GLib.HashTable query, Soup.ClientContext ctx);
+		[NoAccessorMethod]
+		public uint auth_method { get; set; }
+		[NoAccessorMethod]
+		public void* container_db { get; construct; }
+		[NoAccessorMethod]
+		public void* db { get; construct; }
+		[NoAccessorMethod]
+		public string name { owned get; set; }
+		[NoAccessorMethod]
+		public string password { owned get; set; }
+		[NoAccessorMethod]
+		public uint revision_number { get; set; }
+		[NoAccessorMethod]
+		public Soup.Server server_ipv4 { owned get; }
+		[NoAccessorMethod]
+		public Soup.Server server_ipv6 { owned get; }
+		[NoAccessorMethod]
+		public string transcode_mimetype { owned get; construct; }
+		[NoAccessorMethod]
+		[CCode (array_length = false, array_null_terminated = true)]
+		public string[] txt_records { owned get; set; }
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class DMAPStructureItem {
+		public Gst.Value content;
+		public DPAP.DMAPContentCode content_code;
+		public uint size;
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class FilterDefinition {
+		public weak string key;
+		public bool negate;
+		public weak string value;
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class Share : DPAP.DMAPShare {
+		[CCode (has_construct_function = false)]
+		public Share (string name, string password, void* db, void* container_db, string transcode_mimetype);
+	}
+	[Compact]
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public class bitwise {
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPContainerDb : GLib.Object {
+		[CCode (cname = "dmap_container_db_count")]
+		public abstract int64 count (DMAP.ContainerDb db);
+		[CCode (cname = "dmap_container_db_foreach")]
+		public abstract void @foreach (DMAP.ContainerDb db, GLib.HFunc func, void* data);
+		[CCode (cname = "dmap_container_db_lookup_by_id")]
+		public abstract unowned DPAP.DMAPContainerRecord lookup_by_id (DMAP.ContainerDb db, uint id);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPContainerRecord {
+		[CCode (cname = "dmap_container_record_add_entry")]
+		public abstract void add_entry (DPAP.DMAPContainerRecord container_record, DPAP.DMAPRecord record, int id);
+		[CCode (cname = "dmap_container_record_get_entries")]
+		public abstract unowned DMAP.Db get_entries (DPAP.DMAPContainerRecord record);
+		[CCode (cname = "dmap_container_record_get_entry_count")]
+		public abstract uint64 get_entry_count (DPAP.DMAPContainerRecord record);
+		[CCode (cname = "dmap_container_record_get_id")]
+		public abstract uint get_id (DPAP.DMAPContainerRecord record);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPDb : GLib.Object {
+		[CCode (cname = "dmap_db_add")]
+		public abstract uint add (DMAP.Db db, DPAP.DMAPRecord record);
+		[CCode (cname = "dmap_db_add_path")]
+		public abstract uint add_path (DMAP.Db db, string path);
+		[CCode (cname = "dmap_db_add_with_id")]
+		public abstract uint add_with_id (DMAP.Db db, DPAP.DMAPRecord record, uint id);
+		[CCode (cname = "dmap_db_apply_filter")]
+		public static unowned GLib.HashTable apply_filter (DMAP.Db db, GLib.SList filter_def);
+		[CCode (cname = "dmap_db_count")]
+		public abstract int64 count (DMAP.Db db);
+		[CCode (cname = "dmap_db_foreach")]
+		public abstract void @foreach (DMAP.Db db, GLib.HFunc func, void* data);
+		[CCode (cname = "dmap_db_lookup_by_id")]
+		public abstract unowned DPAP.DMAPRecord lookup_by_id (DMAP.Db db, uint id);
+		[CCode (cname = "dmap_db_lookup_id_by_location")]
+		public abstract uint lookup_id_by_location (DMAP.Db db, string location);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPRecord : GLib.Object {
+		[CCode (cname = "dmap_record_set_from_blob")]
+		public abstract unowned DPAP.DMAPRecord set_from_blob (DPAP.DMAPRecord record, GLib.ByteArray blob);
+		[CCode (cname = "dmap_record_to_blob")]
+		public abstract unowned GLib.ByteArray to_blob (DPAP.DMAPRecord record);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface DMAPRecordFactory {
+		[CCode (cname = "dmap_record_factory_create")]
+		public abstract unowned DPAP.DMAPRecord create (DMAP.RecordFactory factory);
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public interface Record {
+		public abstract unowned GLib.InputStream read () throws GLib.Error;
+	}
+	[CCode (cprefix = "DMAP_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPConnectionState {
+		GET_INFO,
+		GET_PASSWORD,
+		LOGIN,
+		GET_REVISION_NUMBER,
+		GET_DB_INFO,
+		GET_SONGS,
+		GET_PLAYLISTS,
+		GET_PLAYLIST_ENTRIES,
+		LOGOUT,
+		DONE
+	}
+	[CCode (cprefix = "DMAP_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPContentCode {
+		CC_INVALID,
+		RAW,
+		CC_MDCL,
+		CC_MSTT,
+		CC_MIID,
+		CC_MINM,
+		CC_MIKD,
+		CC_MPER,
+		CC_MCON,
+		CC_MCTI,
+		CC_MPCO,
+		CC_MSTS,
+		CC_MIMC,
+		CC_MCTC,
+		CC_MRCO,
+		CC_MTCO,
+		CC_MLCL,
+		CC_MLIT,
+		CC_MBCL,
+		CC_MSRV,
+		CC_MSAU,
+		CC_MSLR,
+		CC_MPRO,
+		CC_MSAL,
+		CC_MSUP,
+		CC_MSPI,
+		CC_MSEX,
+		CC_MSBR,
+		CC_MSQY,
+		CC_MSIX,
+		CC_MSRS,
+		CC_MSTM,
+		CC_MSDC,
+		CC_MCCR,
+		CC_MCNM,
+		CC_MCNA,
+		CC_MCTY,
+		CC_MLOG,
+		CC_MLID,
+		CC_MUPD,
+		CC_MUSR,
+		CC_MUTY,
+		CC_MUDL,
+		CC_MSMA,
+		CC_FQUESCH,
+		CC_APRO,
+		CC_AVDB,
+		CC_ABRO,
+		CC_ABAL,
+		CC_ABAR,
+		CC_ABCP,
+		CC_ABGN,
+		CC_ADBS,
+		CC_ASAL,
+		CC_ASAI,
+		CC_ASAA,
+		CC_ASAR,
+		CC_ASBT,
+		CC_ASBR,
+		CC_ASCM,
+		CC_ASCO,
+		CC_ASDA,
+		CC_ASDM,
+		CC_ASDC,
+		CC_ASDN,
+		CC_ASDB,
+		CC_ASEQ,
+		CC_ASFM,
+		CC_ASGN,
+		CC_ASDT,
+		CC_ASRV,
+		CC_ASSR,
+		CC_ASSZ,
+		CC_ASST,
+		CC_ASSP,
+		CC_ASTM,
+		CC_ASTC,
+		CC_ASTN,
+		CC_ASUR,
+		CC_ASYR,
+		CC_ASDK,
+		CC_ASUL,
+		CC_ASSU,
+		CC_ASSA,
+		CC_APLY,
+		CC_ABPL,
+		CC_APSO,
+		CC_PRSV,
+		CC_ARIF,
+		CC_MSAS,
+		CC_AGRP,
+		CC_AGAL,
+		CC_ASCP,
+		CC_PPRO,
+		CC_PASP,
+		CC_PFDT,
+		CC_PICD,
+		CC_PIMF,
+		CC_PFMT,
+		CC_PIFS,
+		CC_PLSZ,
+		CC_PHGT,
+		CC_PWTH,
+		CC_PRAT,
+		CC_PCMT,
+		CC_PRET,
+		CC_AESV,
+		CC_AEHV,
+		CC_AESP,
+		CC_AEPP,
+		CC_AEPS,
+		CC_AESG,
+		CC_AEMK,
+		CC_AEFP,
+		CC_CMPA,
+		CC_CMNM,
+		CC_CMTY,
+		CC_CMPG,
+		CC_CACI,
+		CC_CAPS,
+		CC_CASH,
+		CC_CARP,
+		CC_CAAS,
+		CC_CAAR,
+		CC_CAIA,
+		CC_CANP,
+		CC_CANN,
+		CC_CANA,
+		CC_CANL,
+		CC_CANG,
+		CC_CANT,
+		CC_CASP,
+		CC_CASS,
+		CC_CAST,
+		CC_CASU,
+		CC_CASG,
+		CC_CACR,
+		CC_CMCP,
+		CC_CMGT,
+		CC_CMIK,
+		CC_CMSP,
+		CC_CMST,
+		CC_CMSV,
+		CC_CMSR,
+		CC_CMMK,
+		CC_CMVO
+	}
+	[CCode (cprefix = "DMAP_MDNS_BROWSER_ERROR_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMdnsBrowserError {
+		NOT_RUNNING,
+		FAILED
+	}
+	[CCode (cprefix = "DMAP_MDNS_BROWSER_SERVICE_TYPE_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMdnsBrowserServiceType {
+		INVALID,
+		DAAP,
+		DPAP,
+		DACP,
+		LAST
+	}
+	[CCode (cprefix = "DMAP_MDNS_PUBLISHER_ERROR_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMdnsPublisherError {
+		NOT_RUNNING,
+		FAILED
+	}
+	[CCode (cprefix = "DMAP_MEDIA_KIND_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPMediaKind {
+		MUSIC,
+		MOVIE
+	}
+	[CCode (cprefix = "DMAP_TYPE_", has_type_id = false, cheader_filename = "libdmapsharing/dmap.h")]
+	public enum DMAPType {
+		BYTE,
+		SIGNED_INT,
+		SHORT,
+		INT,
+		INT64,
+		STRING,
+		DATE,
+		VERSION,
+		CONTAINER,
+		POINTER
+	}
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public delegate bool DMAPConnectionCallback (DPAP.DMAPConnection connection, bool result, string reason);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public delegate void DMAPResponseHandler (DPAP.DMAPConnection connection, uint status, GLib.Node structure);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h", has_target = false)]
+	public delegate unowned string RecordGetValueFunc (DPAP.DMAPRecord record);
+	[CCode (cheader_filename = "libdmapsharing/dmap.h")]
+	public const int DMAP_STATUS_OK;
+	[CCode (cname = "dmap_content_code_dmap_type", cheader_filename = "libdmapsharing/dmap.h")]
+	public static DPAP.DMAPType dmap_content_code_dmap_type (DPAP.DMAPContentCode code);
+	[CCode (cname = "dmap_content_code_name", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmap_content_code_name (DPAP.DMAPContentCode code);
+	[CCode (cname = "dmap_content_code_read_from_buffer", cheader_filename = "libdmapsharing/dmap.h")]
+	public static DPAP.DMAPContentCode dmap_content_code_read_from_buffer (string buf);
+	[CCode (cname = "dmap_content_code_string", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmap_content_code_string (DPAP.DMAPContentCode code);
+	[CCode (cname = "dmap_content_code_string_as_int32", cheader_filename = "libdmapsharing/dmap.h")]
+	public static int32 dmap_content_code_string_as_int32 (string str);
+	[CCode (cname = "dmap_content_codes", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned DPAP.DMAPContentCodeDefinition dmap_content_codes (uint number);
+	[CCode (cname = "dmap_hash_generate", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_hash_generate (short version_major, uchar[] url, uchar hash_select, uchar[] @out, int request_id);
+	[CCode (cname = "dmap_structure_add", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node dmap_structure_add (GLib.Node parent, DPAP.DMAPContentCode cc);
+	[CCode (cname = "dmap_structure_destroy", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_structure_destroy (GLib.Node structure);
+	[CCode (cname = "dmap_structure_find_item", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned DPAP.DMAPStructureItem dmap_structure_find_item (GLib.Node structure, DPAP.DMAPContentCode code);
+	[CCode (cname = "dmap_structure_find_node", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node dmap_structure_find_node (GLib.Node structure, DPAP.DMAPContentCode code);
+	[CCode (cname = "dmap_structure_get_size", cheader_filename = "libdmapsharing/dmap.h")]
+	public static uint dmap_structure_get_size (GLib.Node structure);
+	[CCode (cname = "dmap_structure_increase_by_predicted_size", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_structure_increase_by_predicted_size (GLib.Node structure, uint size);
+	[CCode (cname = "dmap_structure_parse", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned GLib.Node dmap_structure_parse (string buf, int buf_length);
+	[CCode (cname = "dmap_structure_print", cheader_filename = "libdmapsharing/dmap.h")]
+	public static void dmap_structure_print (GLib.Node structure);
+	[CCode (cname = "dmap_structure_serialize", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmap_structure_serialize (GLib.Node structure, uint length);
+	[CCode (cname = "dmapd_input_stream_strdup_format_extension", cheader_filename = "libdmapsharing/dmap.h")]
+	public static unowned string dmapd_input_stream_strdup_format_extension (int format_code);
+}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]