Files
steering-wheel/TouchGFX/gui/src/ami_screen/AMIPresenter.cpp

32 lines
901 B
C++

#include <gui/ami_screen/AMIPresenter.hpp>
#include <gui/ami_screen/AMIView.hpp>
#include "vehicle_state.h"
#ifndef SIMULATOR
#include "stm32h7xx_hal.h"
#endif
AMIPresenter::AMIPresenter(AMIView &v) : view(v) {}
void AMIPresenter::activate() { vehicleStateUpdated(); }
void AMIPresenter::deactivate() {}
void AMIPresenter::vehicleStateUpdated() {
view.setMission(vehicle_state.active_mission);
view.setASState(vehicle_state.as_state);
view.setIniChkState(vehicle_state.initial_checkup_state);
view.updateDataFields();
#ifndef SIMULATOR
// TODO
// view.setJetsonTimeout(HAL_GetTick() - vehicle_state.last_jetson_msg > 500);
// view.setEPSCTimeout(HAL_GetTick() - vehicle_state.last_epsc_msg > 500);
#endif
}
void AMIPresenter::nextScreen() {
FrontendApplication *app = static_cast<FrontendApplication *>(FrontendApplication::getInstance());
app->gotoSDCScreenNoTransition();
}