summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2011-05-11 07:30:09 +0200
committerJérémy Zurcher <jeremy@asynk.ch>2011-05-11 07:30:09 +0200
commit2c794ec852823d6601f6f360962691b56d8c7fbb (patch)
treedd6fac9a34befb5cc0090310b922e04d0b1d90ad
parent5db720285b2e91ef4cd49ca42e845dc981d5dd4d (diff)
downloadffi-efl-2c794ec852823d6601f6f360962691b56d8c7fbb.zip
ffi-efl-2c794ec852823d6601f6f360962691b56d8c7fbb.tar.gz
take care of eina/eina_log.h and regenerate ffis
-rw-r--r--lib/efl/native/eina_log.rb100
-rw-r--r--lib/efl/native/elementary.rb4
-rwxr-xr-xtools/extract-api.sh1
-rwxr-xr-xtools/genruby.rb1
4 files changed, 106 insertions, 0 deletions
diff --git a/lib/efl/native/eina_log.rb b/lib/efl/native/eina_log.rb
new file mode 100644
index 0000000..e1b8e54
--- /dev/null
+++ b/lib/efl/native/eina_log.rb
@@ -0,0 +1,100 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/ffi'
+#
+module Efl
+ #
+ module Eina
+ #
+ def self.method_missing m, *args, &block
+ sym = 'eina_log_'+m.to_s
+ raise NameError.new "#{self.name}.#{sym} (#{m})" if not Efl::Native.respond_to? sym
+ self.module_eval "def self.#{m} *args, &block; r=Efl::Native.#{sym}(*args); yield r if block_given?; r; end"
+ self.send m, *args, &block
+ end
+ #
+ end
+ #
+ module Native
+ #
+ extend Efl::FFIHelper
+ #
+ ffi_lib 'eina'
+ #
+ # ENUMS
+ # typedef enum _Eina_Log_Level {...} Eina_Log_Level;
+ enum :eina_log_level, [ :eina_log_level_critical, :eina_log_level_err, :eina_log_level_warn, :eina_log_level_info, :eina_log_level_dbg, :eina_log_levels,
+ :eina_log_level_unknown ]
+ #
+ # TYPEDEFS
+ # typedef struct _Eina_Log_Domain Eina_Log_Domain;
+ typedef :pointer, :eina_log_domain
+ typedef :pointer, :eina_log_domain_p
+ #
+ # CALLBACKS
+ # typedef void (*Eina_Log_Print_Cb) (const Eina_Log_Domain *d, Eina_Log_Level level, const char *file, const char *fnc, int line, const char *fmt, void *data, va_list args);
+ callback :eina_log_print_cb, [ :eina_log_domain_p, :eina_log_level, :string, :string, :int, :string, :void_p, :pointer ], :void
+ #
+ # FUNCTIONS
+ fcts = [
+ # EAPI extern int;
+ # FIXME
+ # EAPI void eina_log_threads_enable(void);
+ [ :eina_log_threads_enable, [ ], :void ],
+ # EAPI void eina_log_print_cb_set(Eina_Log_Print_Cb cb, void *data);
+ [ :eina_log_print_cb_set, [ :eina_log_print_cb, :void_p ], :void ],
+ # EAPI void eina_log_level_set(int level);
+ [ :eina_log_level_set, [ :int ], :void ],
+ # EAPI int eina_log_level_get(void);
+ [ :eina_log_level_get, [ ], :int ],
+ # EAPI Eina_Bool eina_log_main_thread_check(void);
+ [ :eina_log_main_thread_check, [ ], :eina_bool ],
+ # EAPI void eina_log_color_disable_set(Eina_Bool disabled);
+ [ :eina_log_color_disable_set, [ :eina_bool ], :void ],
+ # EAPI Eina_Bool eina_log_color_disable_get(void);
+ [ :eina_log_color_disable_get, [ ], :eina_bool ],
+ # EAPI void eina_log_file_disable_set(Eina_Bool disabled);
+ [ :eina_log_file_disable_set, [ :eina_bool ], :void ],
+ # EAPI Eina_Bool eina_log_file_disable_get(void);
+ [ :eina_log_file_disable_get, [ ], :eina_bool ],
+ # EAPI void eina_log_function_disable_set(Eina_Bool disabled);
+ [ :eina_log_function_disable_set, [ :eina_bool ], :void ],
+ # EAPI Eina_Bool eina_log_function_disable_get(void);
+ [ :eina_log_function_disable_get, [ ], :eina_bool ],
+ # EAPI void eina_log_abort_on_critical_set(Eina_Bool abort_on_critical);
+ [ :eina_log_abort_on_critical_set, [ :eina_bool ], :void ],
+ # EAPI Eina_Bool eina_log_abort_on_critical_get(void);
+ [ :eina_log_abort_on_critical_get, [ ], :eina_bool ],
+ # EAPI void eina_log_abort_on_critical_level_set(int critical_level);
+ [ :eina_log_abort_on_critical_level_set, [ :int ], :void ],
+ # EAPI int eina_log_abort_on_critical_level_get(void);
+ [ :eina_log_abort_on_critical_level_get, [ ], :int ],
+ # EAPI void eina_log_domain_level_set(const char *domain_name, int level);
+ [ :eina_log_domain_level_set, [ :string, :int ], :void ],
+ # EAPI int eina_log_domain_level_get(const char *domain_name);
+ [ :eina_log_domain_level_get, [ :string ], :int ],
+ # EAPI int eina_log_domain_registered_level_get(int domain);
+ [ :eina_log_domain_registered_level_get, [ :int ], :int ],
+ # EAPI int eina_log_domain_register(const char *name, const char *color);
+ [ :eina_log_domain_register, [ :string, :string ], :int ],
+ # EAPI void eina_log_domain_unregister(int domain);
+ [ :eina_log_domain_unregister, [ :int ], :void ],
+ # EAPI void eina_log_print(int domain, Eina_Log_Level level, const char *file, const char *function, int line, const char *fmt, ...);
+ [ :eina_log_print, [ :int, :eina_log_level, :string, :string, :int, :string, :varargs ], :void ],
+ # EAPI void eina_log_vprint(int domain, Eina_Log_Level level, const char *file, const char *fnc, int line, const char *fmt, va_list args);
+ [ :eina_log_vprint, [ :int, :eina_log_level, :string, :string, :int, :string, :pointer ], :void ],
+ # EAPI void eina_log_print_cb_stdout(const Eina_Log_Domain *d, Eina_Log_Level level, const char *file, const char *fnc, int line, const char *fmt, void *data, va_list args);
+ [ :eina_log_print_cb_stdout, [ :eina_log_domain_p, :eina_log_level, :string, :string, :int, :string, :void_p, :pointer ], :void ],
+ # EAPI void eina_log_print_cb_stderr(const Eina_Log_Domain *d, Eina_Log_Level level, const char *file, const char *fnc, int line, const char *fmt, void *data, va_list args);
+ [ :eina_log_print_cb_stderr, [ :eina_log_domain_p, :eina_log_level, :string, :string, :int, :string, :void_p, :pointer ], :void ],
+ # EAPI void eina_log_print_cb_file(const Eina_Log_Domain *d, Eina_Log_Level level, const char *file, const char *fnc, int line, const char *fmt, void *data, va_list args);
+ [ :eina_log_print_cb_file, [ :eina_log_domain_p, :eina_log_level, :string, :string, :int, :string, :void_p, :pointer ], :void ],
+ ]
+ #
+ attach_fcts fcts
+ #
+ end
+end
+#
+# EOF
diff --git a/lib/efl/native/elementary.rb b/lib/efl/native/elementary.rb
index 5a248a9..61fd829 100644
--- a/lib/efl/native/elementary.rb
+++ b/lib/efl/native/elementary.rb
@@ -2315,6 +2315,8 @@ module Efl
[ :elm_slideshow_item_current_get, [ :evas_object_p ], :elm_slideshow_item_p ],
# EAPI Evas_Object* elm_slideshow_item_object_get(const Elm_Slideshow_Item* item);
[ :elm_slideshow_item_object_get, [ :elm_slideshow_item_p ], :evas_object_p ],
+ # EAPI Elm_Slideshow_Item *elm_slideshow_item_nth_get(const Evas_Object *obj, unsigned int nth);
+ [ :elm_slideshow_item_nth_get, [ :evas_object_p, :uint ], :elm_slideshow_item_p ],
# EAPI const char *elm_slideshow_layout_get(const Evas_Object *obj);
[ :elm_slideshow_layout_get, [ :evas_object_p ], :string ],
# EAPI void elm_slideshow_layout_set(Evas_Object *obj, const char *layout);
@@ -2329,6 +2331,8 @@ module Efl
[ :elm_slideshow_cache_after_set, [ :evas_object_p, :int ], :void ],
# EAPI int elm_slideshow_cache_after_get(const Evas_Object *obj);
[ :elm_slideshow_cache_after_get, [ :evas_object_p ], :int ],
+ # EAPI unsigned int elm_slideshow_count_get(const Evas_Object *obj);
+ [ :elm_slideshow_count_get, [ :evas_object_p ], :uint ],
# EAPI Evas_Object *elm_fileselector_add(Evas_Object *parent);
[ :elm_fileselector_add, [ :evas_object_p ], :evas_object_p ],
# EAPI void elm_fileselector_is_save_set(Evas_Object *obj, Eina_Bool is_save);
diff --git a/tools/extract-api.sh b/tools/extract-api.sh
index 65e09e1..a681465 100755
--- a/tools/extract-api.sh
+++ b/tools/extract-api.sh
@@ -21,6 +21,7 @@ fi
for header in \
"${INCLUDE}/eina-1/eina/eina_types.h" \
"${INCLUDE}/eina-1/eina/eina_main.h" \
+ "${INCLUDE}/eina-1/eina/eina_log.h" \
"${INCLUDE}/eina-1/eina/eina_list.h" \
"${INCLUDE}/eina-1/eina/eina_hash.h" \
"${INCLUDE}/eet-1/Eet.h" \
diff --git a/tools/genruby.rb b/tools/genruby.rb
index 1fe67e4..c7d1115 100755
--- a/tools/genruby.rb
+++ b/tools/genruby.rb
@@ -9,6 +9,7 @@ libraries = [
# HEADER MODUE NAME FCT PREFIX LIB OUTPUT
[ 'eina_types.h', 'Eina', 'eina', 'eina', 'eina_types.rb' ],
[ 'eina_main.h', 'Eina', 'eina', 'eina', 'eina.rb' ],
+ [ 'eina_log.h', 'Eina', 'eina_log', 'eina', 'eina_log.rb' ],
[ 'eina_list.h', 'EinaList', 'eina_list', 'eina', 'eina_list.rb' ],
[ 'eina_hash.h', 'EinaHash', 'eina_hash', 'eina', 'eina_hash.rb' ],
[ 'Eet.h', 'Eet', 'eet', 'eet', 'eet.rb' ],