FSM/vscode/FSM_OOP/template/templateFSM.h

49 lines
1.4 KiB
C
Raw Normal View History

2024-01-23 20:05:30 +08:00
#ifndef __TEMPLATE_FSM_H_
#define __TEMPLATE_FSM_H_
/* -------------------------------------------------------------------------- */
/* 提前做类型声明 */
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
/* 自定义数据和信号 */
/* -------------------------------------------------------------------------- */
enum TemplateFSMSignals{
Signal_A = 0,
Signal_B,
};
typedef struct _templateFSMExternalData
{
int arrindex;
int x;
}TemplateFSMExternalData;
typedef struct _templateFSMInnerData
{
int y1;
int inner1;
}TemplateFSMInnerData;
/* -------------------------------------------------------------------------- */
/* 下面的改个名字就行了 */
/* -------------------------------------------------------------------------- */
#define TemplateFSM_Input(pFSM) ((TemplateFSMExternalData *)_preloadIn((FSM *)pFSM))
typedef struct _templateFSMData
{
TemplateFSMExternalData external;
TemplateFSMInnerData inner;
2024-01-23 20:05:30 +08:00
}TemplateFSMData;
typedef struct _TemplateFSM TemplateFSM;
TemplateFSM *createTemplateFSM();
void setTemplateFSMSignals(TemplateFSM *pFSM, enum TemplateFSMSignals Signal);
2024-01-23 20:05:30 +08:00
#endif