... | @@ -47,12 +47,8 @@ class MyClass : public FSM<MyClass> |
... | @@ -47,12 +47,8 @@ class MyClass : public FSM<MyClass> |
|
private:
|
|
private:
|
|
uint16_t event_id = 0;
|
|
uint16_t event_id = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// ...
|
|
// ...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void someFunction()
|
|
void someFunction()
|
|
{
|
|
{
|
|
unsigned int delay = 1000; // Delay is defined in milliseconds
|
|
unsigned int delay = 1000; // Delay is defined in milliseconds
|
... | @@ -61,11 +57,8 @@ class MyClass : public FSM<MyClass> |
... | @@ -61,11 +57,8 @@ class MyClass : public FSM<MyClass> |
|
event_id = sEventBroker->postDelayed({EV_TIMEOUT_SHADOW_MODE}, TOPIC_ADA, delay);
|
|
event_id = sEventBroker->postDelayed({EV_TIMEOUT_SHADOW_MODE}, TOPIC_ADA, delay);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// ...
|
|
// ...
|
|
|
|
|
|
|
|
|
|
// Function handling events for the current state
|
|
// Function handling events for the current state
|
|
void MyClass::stateMyState(const Event& ev)
|
|
void MyClass::stateMyState(const Event& ev)
|
|
{
|
|
{
|
... | @@ -78,7 +71,9 @@ class MyClass : public FSM<MyClass> |
... | @@ -78,7 +71,9 @@ class MyClass : public FSM<MyClass> |
|
sEventBroker->removeDelayed(shadow_delayed_event_id);
|
|
sEventBroker->removeDelayed(shadow_delayed_event_id);
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
// ...
|
|
// ...
|
|
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
... | @@ -116,4 +111,5 @@ void someFunction() |
... | @@ -116,4 +111,5 @@ void someFunction() |
|
sEventBroker->post(ev, TOPIC_TC);
|
|
sEventBroker->post(ev, TOPIC_TC);
|
|
}
|
|
}
|
|
```
|
|
```
|
|
``` |
|
** ⚠️ WARNING ⚠️ **
|
|
\ No newline at end of file |
|
The `postDelayed` function does not work with "non-standard" events, all the payload is lost! |