namespace rm {
App *context;
-const char *g_new_role; // TODO: workaround
+std::string g_new_role; // TODO: workaround
static void eventHandler(json_object* json_out) {
context->updateWindowResource(json_out);
}
void App::updateWindowResource(json_object* json_out) {
- HMI_DEBUG("wm", "role:%s", rm::g_new_role);
+ HMI_DEBUG("wm", "role:%s", rm::g_new_role.c_str());
// Check parking brake state
json_object* json_parking_brake;
// Get category
const char* category = nullptr;
std::string str_category;
- if (nullptr != rm::g_new_role) {
- str_category = this->pm_.roleToCategory(rm::g_new_role);
- category = str_category.c_str();
- HMI_DEBUG("wm", "role:%s category:%s", rm::g_new_role, category);
- }
+ str_category = this->pm_.roleToCategory(rm::g_new_role.c_str());
+ category = str_category.c_str();
+ HMI_DEBUG("wm", "role:%s category:%s", rm::g_new_role.c_str(), category);
// Update layout
- if (this->lm_.updateLayout(json_out, rm::g_new_role, category)) {
+ if (this->lm_.updateLayout(json_out, rm::g_new_role.c_str(), category)) {
HMI_DEBUG("wm", "Layer is changed!!");
// Allocate surface
if (nullptr != new_area) {
json_object_object_add(json_in, "area", json_object_new_string(new_area));
}
- rm::g_new_role = new_role; // TODO: workaround
+ rm::g_new_role = std::string(new_role); // TODO: workaround
this->pm_.inputEvent(json_in);
// Release json_object
result<int> App::api_request_surface(char const *drawing_name) {
// Convert drawing_name to role
const char* role = this->convertDrawingNameToRole(drawing_name);
+
auto lid = this->layers.get_layer_id(std::string(role));
if (!lid) {
/**
char const *App::api_request_surface(char const *drawing_name,
char const *ivi_id) {
ST();
+ // Convert drawing_name to role
+ const char* role = this->convertDrawingNameToRole(drawing_name);
- auto lid = this->layers.get_layer_id(std::string(drawing_name));
+ auto lid = this->layers.get_layer_id(std::string(role));
unsigned sid = std::stol(ivi_id);
if (!lid) {
}
}
- auto rname = this->lookup_id(drawing_name);
+ auto rname = this->lookup_id(role);
if (rname) {
return "Surface already present";
}
// register pair drawing_name and ivi_id
- this->id_alloc.register_name_id(drawing_name, sid);
+ this->id_alloc.register_name_id(role, sid);
this->layers.add_surface(sid, *lid);
// this surface is already created