From 48795cc6093b9b982b41daad71a8a797d9de27cc Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Mon, 7 Sep 2009 20:22:23 +0200 Subject: vala: include vala .vapi file for libcanberra, but don't install it for now --- canberra.vapi | 138 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 138 insertions(+) create mode 100644 canberra.vapi diff --git a/canberra.vapi b/canberra.vapi new file mode 100644 index 0000000..761c24f --- /dev/null +++ b/canberra.vapi @@ -0,0 +1,138 @@ +/*** + This file is part of libcanberra. + + Copyright (C) 2009 Michael 'Mickey' Lauer + + libcanberra 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. + + libcanberra 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 libcanberra. If not, see + . +***/ + +using Posix; + +[CCode (cprefix = "CA_", lower_case_cprefix = "ca_", cheader_filename = "canberra.h")] +namespace Canberra { + + // + // properties + // + public const string PROP_MEDIA_NAME; + public const string PROP_MEDIA_TITLE; + public const string PROP_MEDIA_ARTIST; + public const string PROP_MEDIA_LANGUAGE; + public const string PROP_MEDIA_FILENAME; + public const string PROP_MEDIA_ICON; + public const string PROP_MEDIA_ICON_NAME; + public const string PROP_MEDIA_ROLE; + public const string PROP_EVENT_ID; + public const string PROP_EVENT_DESCRIPTION; + public const string PROP_EVENT_MOUSE_X; + public const string PROP_EVENT_MOUSE_Y; + public const string PROP_EVENT_MOUSE_HPOS; + public const string PROP_EVENT_MOUSE_VPOS; + public const string PROP_EVENT_MOUSE_BUTTON; + public const string PROP_WINDOW_NAME; + public const string PROP_WINDOW_ID; + public const string PROP_WINDOW_ICON; + public const string PROP_WINDOW_ICON_NAME; + public const string PROP_WINDOW_X11_DISPLAY; + public const string PROP_WINDOW_X11_SCREEN; + public const string PROP_WINDOW_X11_MONITOR; + public const string PROP_WINDOW_X11_XID; + public const string PROP_APPLICATION_NAME; + public const string PROP_APPLICATION_ID; + public const string PROP_APPLICATION_VERSION; + public const string PROP_APPLICATION_ICON; + public const string PROP_APPLICATION_ICON_NAME; + public const string PROP_APPLICATION_LANGUAGE; + public const string PROP_APPLICATION_PROCESS_ID; + public const string PROP_APPLICATION_PROCESS_BINARY; + public const string PROP_APPLICATION_PROCESS_USER; + public const string PROP_APPLICATION_PROCESS_HOST; + public const string PROP_CANBERRA_CACHE_CONTROL; + public const string PROP_CANBERRA_VOLUME; + public const string PROP_CANBERRA_XDG_THEME_NAME; + public const string PROP_CANBERRA_XDG_THEME_OUTPUT_PROFILE; + public const string PROP_CANBERRA_ENABLE; + + // + // errors + // + [CCode (cname = "CA_SUCCESS")] + public const int SUCCESS; + + [CCode (cname = "int", cprefix = "CA_ERROR_")] + public enum Error { + NOTSUPPORTED, + INVALID, + STATE, + OOM, + NODRIVER, + SYSTEM, + CORRUPT, + TOOBIG, + NOTFOUND, + DESTROYED, + CANCELED, + NOTAVAILABLE, + ACCESS, + IO, + INTERNAL, + DISABLED, + FORKED + } + + public unowned string strerror( Error code ); + + // + // callback + // + public delegate void FinishCallback( Context context, uint32 id, Error code ); + + // + // property list + // + [Compact] + [CCode (cname = "ca_proplist", free_function = "")] + public class Proplist { + + public static int create( Proplist* p ); + public Error destroy(); + public Error sets( string key, string value ); + [PrintfFormat] + public Error setf( string key, string format, ... ); + public Error set( string key, void* data, size_t nbytes ); + } + + [Compact] + [CCode (cname = "ca_context", free_function = "")] + public class Context { + + public static Error create( Context* context ); + public Error destroy(); + public Error set_driver( string driver ); + public Error change_device( string device ); + public Error open(); + [CCode (sentinel = "")] + public Error change_props( ... ); + public Error change_props_full( Proplist p ); + [CCode (instance_pos = 0)] + public Error play_full( uint32 id, Proplist p, FinishCallback cb ); + [CCode (sentinel = "")] + public Error play( uint32 id, ... ); + public Error cache_full( Proplist p ); + [CCode (sentinel = "")] + public Error cache( ... ); + public Error cancel( uint32 id ); + } +} -- cgit