namespace rm {
App *context;
-static void eventHandler(json_object* json_out) {
- context->updateWindowResource(json_out);
+static void onStateTransitioned(json_object* json_out) {
+ context->updateWindowResources(json_out);
+}
+
+static void onError(json_object* json_out) {
+ HMI_DEBUG("wm", "error message from PolicyManager:%s",
+ json_object_get_string(json_out));
}
} // namespace rm
-void App::updateWindowResource(json_object* json_out) {
+
+void App::updateCarStates(json_object* json_out) {
// Check parking brake state
json_object* json_parking_brake;
if (!json_object_object_get_ex(json_out, "parking_brake", &json_parking_brake)) {
return;
}
}
+}
+void App::updateLayers(json_object* json_out) {
// Get displayed roles from current layout
json_object* json_layers;
if (!json_object_object_get_ex(json_out, "layers", &json_layers)) {
}
}
+void App::updateWindowResources(json_object* json_out) {
+ // Update car states
+ this->updateCarStates(json_out);
+
+ // Update layers
+ this->updateLayers(json_out);
+}
/**
* App Impl
// Register callback to PolicyManager
PolicyManager::CallbackTable callback;
- callback.onStateTransitioned = rm::eventHandler;
- callback.onError = nullptr;
+ callback.onStateTransitioned = rm::onStateTransitioned;
+ callback.onError = rm::onError;
this->pm_.registerCallback(callback);
// Initialize LayoutManager