efl/src/lib
Felipe Magno de Almeida 30df128be5 eldbus-cxx: Implementation of eldbus C++ API
Summary:
Applications can:

  void method_callback(void* data, const Eldbus_Service_Interface* iface,
                       const Eldbus_Message* message);
  struct { ... } data_struct;

  Eldbus_Method methods[] =
   {
     "method1", ELDBUS_ARGS("b", "bool"), ELDBUS_ARGS("b", "bool"), ELDBUS_METHOD_FLAG_HAS_DATA
     , (Eldbus_Method_Cb)&method_callback, &data_struct
   };

   And method_callback will be called with data parameter pointing to data_struct global object.

Also, Eldbus-cxx supports registering an interface passing a lambda or
function object as method. For example:

  edb::service_interface iface = edb::service_interface_register
    (c, path, interface
     , es::method("SendStringAndBool"
                  , [expected_string, expected_bool] (std::string const& n, bool b
                                                      , bool* out)
                  {
                    std::cout << "Running SendStringAndBool" << std::endl;
                    ck_assert(n == expected_string);
                    ck_assert(b == expected_bool);
                    *out = b;
                    return n;
                  }
                  , es::ins<std::string, bool>("string", "bool")
                  , es::outs<std::string, bool>("string", "bool")
                  )
    );

When a request for "SendStringAndBool" with the proper signature is
called, executes the lambda and replies with the return value and
its bool* out parameter value.

Reviewers: cedric, woohyun, raster

CC: savio, cedric

Differential Revision: https://phab.enlightenment.org/D1052
2014-07-03 16:28:23 +09:00
..
ecore Ecore eolian: Fix namespaces for all of the ecore classes. 2014-06-30 17:47:06 +01:00
ecore_audio Eo (base class): Fix .eo file to have proper namespacing for the class naem. 2014-06-30 17:47:06 +01:00
ecore_avahi avahi shut up if you aren't compiling 2014-03-17 13:48:59 -04:00
ecore_cocoa ecore_cocoa: add code from old branch 2014-06-18 11:34:07 +02:00
ecore_con ecore_con: just a reminder to look at later. 2014-06-27 13:41:20 +02:00
ecore_drm ecore-drm: Fix formatting from a7428edeb4 2014-07-01 10:59:31 -04:00
ecore_evas ecore-evas: Fix some doxy grammar and spelling 2014-06-24 14:32:21 -04:00
ecore_fb core_fb: Fix crash on tablet with removable kbd 2014-06-30 19:55:40 -03:00
ecore_file ecore_file: this parameter is indeed not used. 2014-06-27 13:41:39 +02:00
ecore_imf ecore_imf: Add ECORE_IMF_INPUT_PANEL_LAYOUT_EMOTICON 2014-02-27 13:46:16 +09:00
ecore_imf_evas Use key instead of keyname for considering setxkbmap 2014-01-04 13:25:21 +09:00
ecore_input Fixed a problem with e wl server that sent invalid key value to wl client. 2014-04-14 09:41:43 -04:00
ecore_input_evas Fixed a problem with e wl server that sent invalid key value to wl client. 2014-04-14 09:41:43 -04:00
ecore_ipc fix typos in EFL documents 2014-01-07 14:28:45 +09:00
ecore_psl1ght efl: Unified eina critical manro to CRI. 2013-12-26 12:27:13 +09:00
ecore_sdl efl: Unified eina critical manro to CRI. 2013-12-26 12:27:13 +09:00
ecore_wayland ecore_wl: Actually watch out for ECORE_FD_ERROR 2014-04-17 17:01:45 +02:00
ecore_win32 ecore_win32: discard WM_MOUSEMOVE message if it has the same mouse coordinates than the previous one. See link in commit for an explanation 2014-06-29 19:57:34 +02:00
ecore_wince efl: Created Ecore group and added existing Ecore groups to it. 2012-12-18 18:38:44 +00:00
ecore_x ecore_x - add some minor calls to be able to suspend/resume screensaver 2014-07-01 19:40:26 +09:00
edje edje: Edje-Edit: edje_edit_state_map_perspective_xet() 2014-07-03 16:23:15 +09:00
eet Eet: Add INF message about how slow ETC2 encoding is 2014-06-13 17:58:13 +09:00
eeze do not use EINA_FALSE instead of NULL 2014-05-07 17:45:11 +02:00
efl Add "--with-id" configure option that can be used to specify a 2013-11-04 22:12:12 +09:00
efreet Efreet: Fix shadow warning 2014-06-19 10:33:49 +09:00
eina windows: make those warning explicit about what they imply. 2014-06-27 17:00:23 +02:00
eio Win64: Fix a bunch of warnings 2014-05-29 20:02:16 +09:00
eldbus eldbus-cxx: Implementation of eldbus C++ API 2014-07-03 16:28:23 +09:00
embryo alpha1 release autofoo/build tree work to pass distcheck and actually work 2013-11-04 18:33:35 +09:00
emotion Fix unused var warning in emotion. 2014-05-30 14:37:42 +02:00
eo Eo abstract class: Fix namespace. 2014-06-30 17:47:06 +01:00
eolian eolian: rename the log domain 2014-07-03 01:50:47 +01:00
eolian_cxx eolian-cxx: Make proper handling of namespaces. 2014-07-01 10:55:45 +01:00
ephysics Ephysics: Silence more warnings from libbullet 2014-01-09 11:49:29 +09:00
escape efl: remove check for errno.h 2013-01-10 20:25:44 +00:00
ethumb ethumb: Memset whole contex in md5 implementation 2014-05-16 14:32:51 +02:00
ethumb_client efl: Unified eina critical manro to CRI. 2013-12-26 12:27:13 +09:00
evas Evas gl: Add support for S3TC textures 2014-07-03 15:36:22 +09:00
evil evil: actually commit the right fix. 2014-06-20 10:52:34 +02:00
.gitignore eolian_cxx: initial version of the EFL C++ Bindings Generator. 2014-05-03 00:56:32 +02:00