使用tinyfsm
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
#include "PowerManagerFsm.hpp"
|
||||
#include "PowerManger.h"
|
||||
|
||||
// 初始化静态成员
|
||||
PowerManger* PowerManagerFsm::pm = nullptr;
|
||||
|
||||
// 状态实例化
|
||||
InitState initState;
|
||||
StandbyState standbyState;
|
||||
FaultState faultState;
|
||||
|
||||
// 状态机初始化
|
||||
void PowerManagerFsm::init(PowerManger* powerManager) {
|
||||
pm = powerManager;
|
||||
start();
|
||||
}
|
||||
|
||||
// 状态转换接口实现
|
||||
void PowerManagerFsm::triggerInitEvent() {
|
||||
dispatch(InitEvent());
|
||||
}
|
||||
|
||||
void PowerManagerFsm::triggerStandbyEvent() {
|
||||
dispatch(StandbyEvent());
|
||||
}
|
||||
|
||||
void PowerManagerFsm::triggerFaultEvent(unsigned int faultCode) {
|
||||
dispatch(FaultEvent(faultCode));
|
||||
}
|
||||
Reference in New Issue
Block a user