* @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.
char final_url[PATH_MAX];
snprintf(final_url, PATH_MAX, "%s%s", url, car);
+ _D("Final url: %s", final_url);
+
if (modified) {
config_save();
}
char url[PATH_MAX];
snprintf(url, PATH_MAX, "%s%s?apMac=", url_base, car);
+ _D("Final url: %s", url);
+
free(url_base);
free(car);
#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();
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;
}
return ret;
}
-int config_init()
+int config_init(char *config_file)
{
GError *error = NULL;
return 0;
}
+ config_file_name = config_file;
+
gk = g_key_file_new();
if (!gk) {
_E("g_key_file_new failed.");
_D("--------========================================================--------");
_D("--------========================================================--------");
- config_init();
model_sensors_init();
model_hw_init();
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();
}
#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()
<?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>