summaryrefslogtreecommitdiff
path: root/src/navigation/map-viewer
diff options
context:
space:
mode:
author <philippe colliot>2015-08-25 13:30:40 +0200
committer <philippe colliot>2015-08-25 13:30:40 +0200
commit1da40e28957f2dbda99a1586cdbe83140f283a59 (patch)
tree576c3de6091de9d6a62f120384003d9ad5ef0859 /src/navigation/map-viewer
parent508abef52bfe890c06ca4a5263320f0fe448f962 (diff)
downloadpoi-service-1da40e28957f2dbda99a1586cdbe83140f283a59.tar.gz
Fix dbus launch steps
Diffstat (limited to 'src/navigation/map-viewer')
-rw-r--r--src/navigation/map-viewer/mapviewercontrol-plugin/genivi_mapviewer_mapviewercontrol.cxx30
1 files changed, 20 insertions, 10 deletions
diff --git a/src/navigation/map-viewer/mapviewercontrol-plugin/genivi_mapviewer_mapviewercontrol.cxx b/src/navigation/map-viewer/mapviewercontrol-plugin/genivi_mapviewer_mapviewercontrol.cxx
index 9d9fd86..dfe48c8 100644
--- a/src/navigation/map-viewer/mapviewercontrol-plugin/genivi_mapviewer_mapviewercontrol.cxx
+++ b/src/navigation/map-viewer/mapviewercontrol-plugin/genivi_mapviewer_mapviewercontrol.cxx
@@ -69,8 +69,16 @@
#define dbg(level,...) ;
#endif
-static DBus::Glib::BusDispatcher dispatchers[4];
-static DBus::Connection *conns[4];
+enum {
+ MAPVIEWER_CONTROL_CONNECTION=0,
+ NAVIGATIONCORE_SESSION_CONNECTION,
+ NAVIGATIONCORE_ROUTING_CONNECTION,
+ NAVIGATIONCORE_MAPMATCHEDPOSITION_CONNECTION,
+ CONNECTION_AMOUNT
+};
+
+static DBus::Glib::BusDispatcher dispatchers[CONNECTION_AMOUNT];
+static DBus::Connection *conns[CONNECTION_AMOUNT];
static int32_t navigationcore_session=-1;
static double double_variant(DBus::Variant variant);
@@ -1331,7 +1339,7 @@ MapViewerControlObj::DisplayRoute(uint32_t SessionHandle, uint32_t RouteHandle,
{
HideRoute(SessionHandle, RouteHandle);
if (navigationcore_session == -1) {
- NavigationCoreSession session(*conns[1]);
+ NavigationCoreSession session(*conns[NAVIGATIONCORE_SESSION_CONNECTION]);
navigationcore_session=session.CreateSession("MapViewerControl");
}
DisplayedRoute *route=new DisplayedRoute(this,navigationcore_session,RouteHandle,m_mapset);
@@ -1409,7 +1417,7 @@ MapViewerControlObj::MapViewerControlObj(MapViewerControl *mapviewercontrol, uin
m_force_draw=false;
m_perspective=GENIVI_MAPVIEWER_2D;
m_follow_car=true;
- m_routing=new Routing(*conns[2], this);
+ m_routing=new Routing(*conns[NAVIGATIONCORE_ROUTING_CONNECTION], this);
struct attr navit_template;
struct attr navit_flags={attr_flags};navit_flags.u.num=2;
struct attr *navit_attrs[]={&navit_flags,NULL};
@@ -1466,7 +1474,7 @@ MapViewerControlObj::MapViewerControlObj(MapViewerControl *mapviewercontrol, uin
m_vehicle.u.vehicle=vehicle_new(&m_navit,vehicle_attrs);
navit_add_attr(m_navit.u.navit, &m_vehicle);
navit_set_attr(m_navit.u.navit, &m_vehicle);
- m_mapmatchedposition=new MapMatchedPosition(*conns[3], m_vehicle.u.vehicle);
+ m_mapmatchedposition=new MapMatchedPosition(*conns[NAVIGATIONCORE_MAPMATCHEDPOSITION_CONNECTION], m_vehicle.u.vehicle);
navit_init(m_navit.u.navit);
graphics_get_data(m_graphics.u.graphics,"window");
@@ -1687,14 +1695,16 @@ plugin_init(void)
{
event_request_system("glib","genivi_mapviewercontrol");
int i;
- for (i = 0 ; i < 4 ; i++) {
+ for (i = 0 ; i < CONNECTION_AMOUNT ; i++) {
+ // init the dispatcher
+ DBus::default_dispatcher = &dispatchers[i];
+ dispatchers[i].attach(NULL);
+ // create a connection on the session bus and connect the dispatcher
conns[i] = new DBus::Connection(DBus::Connection::SessionBus());
- dispatchers[i].attach(NULL);
- DBus::default_dispatcher = &dispatchers[i];
conns[i]->setup(&dispatchers[i]);
}
- conns[0]->request_name("org.genivi.mapviewer.MapViewerControl");
- server=new MapViewerControl(*conns[0]);
+ conns[MAPVIEWER_CONTROL_CONNECTION]->request_name("org.genivi.mapviewer.MapViewerControl");
+ server=new MapViewerControl(*conns[MAPVIEWER_CONTROL_CONNECTION]);
#if LM
#if 0