#include "lfrfid-app-scene-read.h" void LfRfidAppSceneRead::on_enter(LfRfidApp* app, bool need_restore) { auto popup = app->view_controller.get(); popup->set_header("Reading\nLF RFID", 89, 34, AlignCenter, AlignTop); popup->set_icon(0, 3, &I_RFIDDolphinReceive_97x61); app->view_controller.switch_to(); app->worker.start_read(); } bool LfRfidAppSceneRead::on_event(LfRfidApp* app, LfRfidApp::Event* event) { bool consumed = false; if(event->type == LfRfidApp::EventType::Tick) { if(app->worker.read()) { notification_message(app->notification, &sequence_success); app->scene_controller.switch_to_next_scene(LfRfidApp::SceneType::ReadSuccess); } else { notification_message(app->notification, &sequence_blink_red_10); } } return consumed; } void LfRfidAppSceneRead::on_exit(LfRfidApp* app) { app->view_controller.get()->clean(); app->worker.stop_read(); }