54 lines
1.2 KiB
C
54 lines
1.2 KiB
C
|
/**
|
||
|
* @author Rémi Heredero
|
||
|
* @version 1.0.0
|
||
|
* @date July 2023
|
||
|
* @file ${FILENAME}.c
|
||
|
*/
|
||
|
|
||
|
#include "${FILENAME}.h"
|
||
|
|
||
|
void ${FILENAME}_init(${FILENAME}* me){
|
||
|
me->state = ST${FN}_INIT;
|
||
|
}
|
||
|
|
||
|
void ${FILENAME}_startBehaviour(${FILENAME}* me){
|
||
|
POST(me, &${FILENAME}_processEvent, ev${FN}init, 0, 0);
|
||
|
}
|
||
|
|
||
|
bool ${FILENAME}_processEvent(Event* ev) {
|
||
|
bool processed = false;
|
||
|
${FILENAME}* me = (${FILENAME}*)Event_getTarget(ev);
|
||
|
switch (me->state) { // onState
|
||
|
case ST${FN}_INIT:
|
||
|
if (ev->id == ev${FN}init) {
|
||
|
me->state = ST${FN}_{WAIT_STATE};
|
||
|
}
|
||
|
break;
|
||
|
{STATES}
|
||
|
}
|
||
|
|
||
|
if(oldState != me->state){
|
||
|
switch (oldState) { // onExit
|
||
|
case ST${FN}_INIT:
|
||
|
break;
|
||
|
{STATES}
|
||
|
}
|
||
|
|
||
|
switch (me->state) { // onEntry
|
||
|
case ST${FN}_INIT:
|
||
|
break;
|
||
|
{STATES}
|
||
|
}
|
||
|
|
||
|
processed = true;
|
||
|
}
|
||
|
return processed;
|
||
|
}
|
||
|
|
||
|
void ${FILENAME}_set{VAR}(${FILENAME}*me, uint16_t t) {
|
||
|
me->tON = t;
|
||
|
}
|
||
|
|
||
|
void ${FILENAME}_emit${EVENT}(${FILENAME}*me) {
|
||
|
POST(me, &${FILENAME}_processEvent, ev${FN}${EVENT}, 0, 0);
|
||
|
}
|