diff options
author | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2010-05-09 14:24:07 +0000 |
---|---|---|
committer | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2010-05-09 14:24:07 +0000 |
commit | 98a69f0c5284ec29c8442ac986589c1527273a11 (patch) | |
tree | 4c002184636c82dc13aec142165b71d45c441e5b /navit/binding | |
parent | 6070bdf6af6ff77dcedf7152ded9e710656adcb3 (diff) | |
download | navit-98a69f0c5284ec29c8442ac986589c1527273a11.tar.gz |
Add:binding_dbus:Access to tracking object
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@3235 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/binding')
-rw-r--r-- | navit/binding/dbus/binding_dbus.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/navit/binding/dbus/binding_dbus.c b/navit/binding/dbus/binding_dbus.c index 085fa45f5..762dd6c01 100644 --- a/navit/binding/dbus/binding_dbus.c +++ b/navit/binding/dbus/binding_dbus.c @@ -36,6 +36,7 @@ #include "command.h" #include "callback.h" #include "graphics.h" +#include "track.h" #include "vehicle.h" #include "vehicleprofile.h" #include "map.h" @@ -125,6 +126,7 @@ resolve_object(const char *opath, char *type) char *def_map="/default_map"; char *def_navigation="/default_navigation"; char *def_route="/default_route"; + char *def_tracking="/default_tracking"; struct attr attr; if (strncmp(opath, object_path, strlen(object_path))) { @@ -200,6 +202,12 @@ resolve_object(const char *opath, char *type) } return NULL; } + if (!strncmp(oprefix,def_tracking,strlen(def_tracking))) { + if (navit_get_attr(navit.u.navit, attr_trackingo, &attr, NULL)) { + return attr.u.tracking; + } + return NULL; + } } return NULL; } @@ -1434,6 +1442,16 @@ request_search_list_select(DBusConnection *connection, DBusMessage *message) return empty_reply(connection, message); } +/* tracking */ + +static DBusHandlerResult +request_tracking_get_attr(DBusConnection *connection, DBusMessage *message) +{ + return request_get_attr(connection, message, "tracking", NULL, (int (*)(void *, enum attr_type, struct attr *, struct attr_iter *))tracking_get_attr); +} + + + /* vehicle */ static DBusHandlerResult @@ -1531,6 +1549,7 @@ struct dbus_method { {".search_list","get_result", "", "", "i(iii)a{sa{sv}}", "id,coord,dict", request_search_list_get_result}, {".search_list","search", "svi", "attribute,value,partial", "", "", request_search_list_search}, {".search_list","select", "sii", "attribute_type,id,mode", "", "", request_search_list_select}, + {".tracking","get_attr", "s", "attribute", "", "", request_tracking_get_attr}, {".vehicle","set_attr", "sv", "attribute,value", "", "", request_vehicle_set_attr}, {".vehicleprofile","get_attr", "s", "attribute", "", "", request_vehicleprofile_get_attr}, {".vehicleprofile","set_attr", "sv", "attribute,value", "", "", request_vehicleprofile_set_attr}, |