30 lines
558 B
C
30 lines
558 B
C
|
#pragma once
|
||
|
|
||
|
#include "SWFDefine.h"
|
||
|
#include "IFlow.h"
|
||
|
#include "node_view.h"
|
||
|
|
||
|
namespace WF { class INode; }
|
||
|
|
||
|
class SWF_API SWFlow : public WF::IFlow
|
||
|
{
|
||
|
// 工作流状态
|
||
|
FlowStatus m_nStatus;
|
||
|
// 工作流节点列表
|
||
|
std::vector<std::shared_ptr<WF::INode>> m_vecNodes;
|
||
|
|
||
|
node_view m_curNode; // 当前节点视图
|
||
|
|
||
|
public:
|
||
|
SWFlow();
|
||
|
~SWFlow() override;
|
||
|
|
||
|
// 运行工作流
|
||
|
void Run() override;
|
||
|
|
||
|
// 停止工作流
|
||
|
void Stop() override;
|
||
|
|
||
|
// 获取工作流状态
|
||
|
int GetStatus() const noexcept override;
|
||
|
};
|