Different app versions for different stering modes 59/194659/3
authorMichal Skorupinski <m.skorupinsk@samsung.com>
Thu, 6 Dec 2018 17:25:42 +0000 (18:25 +0100)
committerMichal Skorupinski <m.skorupinsk@samsung.com>
Thu, 17 Jan 2019 12:43:15 +0000 (13:43 +0100)
Change-Id: I80ecc93023621161afa0297696d9e3e5a9f5b174
Signed-off-by: Michal Skorupinski <m.skorupinsk@samsung.com>
inc/config.h
src/cloud/cloud_request.c
src/config.c
src/gear-racing-controller.c
src/steering_setup.c
tizen-manifest.xml

index 1b6bbeb..132f968 100644 (file)
@@ -27,7 +27,7 @@
  * @note config module reads/writes configuration stored in
  * application's "data" directory in "config.ini" file.
  */
-int config_init();
+int config_init(char *config_file);
 
 /**
  * @brief Flush config to disk.
index a23c9ab..c04370f 100644 (file)
@@ -147,6 +147,8 @@ static void car_api_post_task_thread_cb(GTask *task, gpointer source_object, gpo
     char final_url[PATH_MAX];
     snprintf(final_url, PATH_MAX, "%s%s", url, car);
 
+    _D("Final url: %s", final_url);
+
     if (modified) {
        config_save();
     }
@@ -234,6 +236,8 @@ static void car_api_get_task_thread_cb(GTask *task, gpointer source_object, gpoi
     char url[PATH_MAX];
     snprintf(url, PATH_MAX, "%s%s?apMac=", url_base, car);
 
+    _D("Final url: %s", url);
+
     free(url_base);
     free(car);
 
index e0c2c61..1a78d56 100644 (file)
 #include <stdlib.h>
 #include <app_common.h>
 
-#define CONFIG_FILENAME "config.ini"
-
 static GKeyFile *gk = NULL;
+static char *config_file_name = NULL;
 
-static char *_config_file_path_get()
+static char *_config_file_path_get(void)
 {
        char *ret = NULL;
        char *data = app_get_shared_trusted_path();
@@ -36,7 +35,7 @@ static char *_config_file_path_get()
        if (!data)
                return NULL;
 
-       if (asprintf(&ret, "%s%s", data, CONFIG_FILENAME) == -1) {
+       if (asprintf(&ret, "%s%s", data, config_file_name) == -1) {
                ret = NULL;
        }
 
@@ -46,7 +45,7 @@ static char *_config_file_path_get()
        return ret;
 }
 
-int config_init()
+int config_init(char *config_file)
 {
        GError *error = NULL;
 
@@ -55,6 +54,8 @@ int config_init()
                return 0;
        }
 
+       config_file_name = config_file;
+
        gk = g_key_file_new();
        if (!gk) {
                _E("g_key_file_new failed.");
index 47b0020..2f88902 100644 (file)
@@ -32,7 +32,6 @@ static bool app_create(void *data)
        _D("--------========================================================--------");
        _D("--------========================================================--------");
 
-       config_init();
 
        model_sensors_init();
        model_hw_init();
@@ -49,6 +48,28 @@ app_control(app_control_h app_control, void *data)
        int ret = app_control_get_app_id(app_control, &appid);
        ASSERT_FUNCTION(ret != APP_CONTROL_ERROR_NONE);
 
+       char *config_file = NULL;
+
+       _D("APPID: %s", appid);
+
+       if (!strncmp(appid, "org.tizen.gear-racing-controller.bs", strlen(appid))) {
+               _D("BS");
+               config_file = "config-azim-thr-dir-elev.ini";
+       } else if (!strncmp(appid, "org.tizen.gear-racing-controller.sb", strlen(appid))) {
+               _D("SB");
+               config_file = "config-dir-elev-thr-azim.ini";
+       } else if (!strncmp(appid, "org.tizen.gear-racing-controller.ssa", strlen(appid))) {
+               _D("SSA");
+               config_file = "config-dir-thr-azim-elev.ini";
+       } else if (!strncmp(appid, "org.tizen.gear-racing-controller.sse", strlen(appid))) {
+               _D("SSE");
+               config_file = "config-dir-thr-elev-azim.ini";
+       } else {
+               _D("DEFAULT");
+               config_file = "config-azim-thr-dir-elev.ini";
+       }
+
+       config_init(config_file);
        steering_setup();
 }
 
index bdcd0de..251bc6d 100644 (file)
 #define MAX_ELEVATION_VALUE 0.0f
 #define BUTTON_MULTIPLIER 1.0f
 
+static void _log_role(char *control, e_device role)
+{
+       FUNCTION_START;
+       char *role_txt = NULL;
+
+       switch (role) {
+               case STERING_MODE_DIRETION:
+                       role_txt = "STERING_MODE_DIRETION";
+                       break;
+               case STERING_MODE_THROTTLE:
+                       role_txt = "STERING_MODE_THROTTLE";
+                       break;
+               case STERING_MODE_CAM_AZIMUTH:
+                       role_txt = "STERING_MODE_CAM_AZIMUTH";
+                       break;
+               case STERING_MODE_CAM_ELEVATION:
+                       role_txt = "STERING_MODE_CAM_ELEVATION";
+                       break;
+               default:
+                       role_txt = "STERING_MODE_NONE";
+                       break;
+       }
+
+       _D("Control: %s -> Role: %s", control, role_txt);
+       FUNCTION_END;
+}
+
+
 static void _set_roles()
 {
+       FUNCTION_START;
+
        e_device axis_x;
        bool modified = config_get_int_or_set_default("steering.roles", "axis_x", STEERING_MODE_DIRETION, (int *)&axis_x);
+       _log_role("axis_x", axis_x);
 
        e_device axis_y;
        modified |= config_get_int_or_set_default("steering.roles", "axis_y", STEERING_MODE_CAM_ELEVATION, (int *)&axis_y);
+       _log_role("axis_y", axis_y);
 
        e_device bezel;
        modified |= config_get_int_or_set_default("steering.roles", "bezel", STEERING_MODE_THROTTLE, (int *)&bezel);
+       _log_role("bezel", bezel);
 
        e_device buttons;
        modified |= config_get_int_or_set_default("steering.roles", "buttons", STEERING_MODE_CAM_AZIMUTH, (int *)&buttons);
+       _log_role("buttons", buttons);
 
        model_device_to_connection_set_control_roles(axis_x, axis_y, bezel, buttons);
 
        if (modified) {
                config_save();
        }
+
+       FUNCTION_END;
 }
 
 static void _set_bezel()
index 60105ad..2a14383 100644 (file)
@@ -1,10 +1,22 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<manifest xmlns="http://tizen.org/ns/packages" api-version="4.0" package="org.tizen.gear-racing-controller-sb" version="1.0.0">
+<manifest xmlns="http://tizen.org/ns/packages" api-version="4.0" package="org.tizen.gear-racing-controller" version="1.0.0">
     <profile name="wearable"/>
-    <ui-application appid="org.tizen.gear-racing-controller-sb" exec="org.tizen.gear-racing-controller-sb" multiple="false" nodisplay="false" taskmanage="true" type="capp">
+    <ui-application appid="org.tizen.gear-racing-controller.sb" exec="org.tizen.gear-racing-controller" multiple="false" nodisplay="false" taskmanage="true" type="capp">
         <label>grc-sb</label>
         <icon>gear-racing-controller.png</icon>
     </ui-application>
+        <ui-application appid="org.tizen.gear-racing-controller.bs" exec="org.tizen.gear-racing-controller" multiple="false" nodisplay="false" taskmanage="true" type="capp">
+        <label>grc-bs</label>
+        <icon>gear-racing-controller.png</icon>
+    </ui-application>
+    <ui-application appid="org.tizen.gear-racing-controller.ssa" exec="org.tizen.gear-racing-controller" multiple="false" nodisplay="false" taskmanage="true" type="capp">
+        <label>grc-ssa</label>
+        <icon>gear-racing-controller.png</icon>
+    </ui-application>
+        <ui-application appid="org.tizen.gear-racing-controller.sse" exec="org.tizen.gear-racing-controller" multiple="false" nodisplay="false" taskmanage="true" type="capp">
+        <label>grc-sse</label>
+        <icon>gear-racing-controller.png</icon>
+    </ui-application>
     <privileges>
         <privilege>http://tizen.org/privilege/network.get</privilege>
         <privilege>http://tizen.org/privilege/network.set</privilege>