This commit is contained in:
2025-08-28 14:58:55 +02:00
parent 80d48eac8a
commit 7cdf5d4682
5 changed files with 113 additions and 13 deletions

49
src/states.hpp Normal file
View File

@@ -0,0 +1,49 @@
#include "appcontext.hpp"
#include "pin.h"
#include "statemachine.hpp"
enum class StateId
{
StartState,
NetworkInitializeState
};
class StartState : public State
{
public:
StartState(AppContext *appContext) : State("StartState", StateId::StartState), appContext(appContext) {}
void onEnter(StateMachineBase &stateMachine) override {
if (appContext) {
appContext->pinR->setLedLevel(0);
appContext->pinG->setLedLevel(0);
appContext->pinB->setLedLevel(0);
appContext->pinCW->setLedLevel(0);
appContext->pinWW->setLedLevel(0);
}
}
void onExit(StateMachineBase &stateMachine) override {
}
void onUpdate(StateMachineBase &stateMachine) override {
}
private:
AppContext *appContext = nullptr;
};
class NetworkInitializeState : public State
{
public:
NetworkInitializeState() : State("NetworkInitializeState", StateId::NetworkInitializeState) {}
void onEnter(StateMachineBase &stateMachine) override {
}
void onExit(StateMachineBase &stateMachine) override {
}
void onUpdate(StateMachineBase &stateMachine) override {
}
};