5402aa898c0ea072d3bbb7d2ab2fb95f1e0f4a7a
[apps/agl-service-navigation.git] / libnavi / src / navicore.cpp
1 // Copyright 2017 AISIN AW CO.,LTD
2
3 #include "libnavicore.hpp"
4 #include "BinderClient.h"
5
6 static BinderClient mBinderClient;
7
8 naviapi::Navicore::Navicore()
9 {
10 }
11
12 naviapi::Navicore::~Navicore()
13 {
14 }
15
16 bool naviapi::Navicore::connect(int argc, char *argv[], NavicoreListener* listener)
17 {
18         this->mListener = listener;
19
20         if (argc != 3)
21         {
22                 printf("Error: argc != 3 : argc = %d\n", argc);
23                 return false;
24         }
25
26         char url[1024];
27         sprintf(url, "ws://localhost:%d/api?token=%s", atoi(argv[1]), argv[2]);
28
29         return mBinderClient.ConnectServer(url, this->mListener);
30 }
31
32 void naviapi::Navicore::disconnect()
33 {
34         // TODO
35 }
36
37 void naviapi::Navicore::getAllSessions()
38 {
39         mBinderClient.NavicoreGetAllSessions();
40 }
41
42 void naviapi::Navicore::getPosition(std::vector<int32_t> params)
43 {
44         mBinderClient.NavicoreGetPosition(params);
45 }
46
47 void naviapi::Navicore::getAllRoutes()
48 {
49         mBinderClient.NavicoreGetAllRoutes();
50 }
51
52 void naviapi::Navicore::createRoute(uint32_t session)
53 {
54         mBinderClient.NavicoreCreateRoute(session);
55 }
56
57 void naviapi::Navicore::pauseSimulation(uint32_t session)
58 {
59         mBinderClient.NavicorePauseSimulation(session);
60 }
61
62 void naviapi::Navicore::setSimulationMode(uint32_t session, bool activate)
63 {
64         mBinderClient.NavicoreSetSimulationMode(session, activate);
65 }
66
67 void naviapi::Navicore::cancelRouteCalculation(uint32_t session, uint32_t routeHandle)
68 {
69         mBinderClient.NavicoreCancelRouteCalculation(session, routeHandle);
70 }
71
72 void naviapi::Navicore::setWaypoints(uint32_t session, uint32_t routeHandle, bool flag, std::vector<Waypoint> waypoints)
73 {
74         mBinderClient.NavicoreSetWaypoints(session, routeHandle, flag, waypoints);
75 }
76
77 void naviapi::Navicore::calculateRoute(uint32_t session, uint32_t routeHandle)
78 {
79         mBinderClient.NavicoreCalculateRoute(session, routeHandle);
80 }
81