DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DA::DADataWorkFlow类 参考

创建节点命令 更多...

#include <DADataWorkFlow.h>

类 DA::DADataWorkFlow 继承关系图:
DA::DAWorkFlow

Public 成员函数

 DADataWorkFlow (QObject *p=nullptr)
 
- Public 成员函数 继承自 DA::DAWorkFlow
 DAWorkFlow (QObject *p=nullptr)
 
void registFactory (std::shared_ptr< DAAbstractNodeFactory > factory)
 注册工厂,工厂的内存管理根据实例情况管理,目前工作流和执行器会持有工厂的共享指针,如果这两个同时销毁,工厂也会随之销毁
 
void registFactorys (const QList< std::shared_ptr< DAAbstractNodeFactory > > factorys)
 注册工厂群,工作流不保留工程的内存管理权
 
void removeFactory (std::shared_ptr< DAAbstractNodeFactory > fac)
 删除工厂,此函数一般在插件卸载时调用
 
QList< std::shared_ptr< DAAbstractNodeFactory > > getAllFactorys () const
 获取所有的工厂
 
QList< std::shared_ptr< DAAbstractNodeFactory > > usedFactorys () const
 获取使用到的工厂
 
int getFactoryCount () const
 获取工厂的数量
 
std::shared_ptr< DAAbstractNodeFactorygetFactory (const QString &factoryPrototypes)
 通过工厂名字获取工厂
 
DANodeMetaData getNodeMetaData (const QString &protoType) const
 通过protoType获取DANodeMetaData
 
DAAbstractNode::SharedPointer createNode (const DANodeMetaData &md)
 工作流创建节点,FCWorkFlow保留节点的内存管理权
 
void addNode (DAAbstractNode::SharedPointer n)
 添加节点,会触发nodeAdded信号
 
QList< DAAbstractNode::SharedPointer > nodes () const
 获取所有节点
 
void clear ()
 清空节点 此函数会触发信号
 
void removeNode (const DAAbstractNode::SharedPointer &n)
 删除工作流节点,节点删除会触发
 
bool hasNodeID (const DAAbstractNode::IdType id)
 在工作流中是否存在id
 
DAAbstractNode::SharedPointer getNode (const DAAbstractNode::IdType id)
 通过id获取节点
 
DAAbstractNodeGraphicsItemgetNodeGraphicsItem (const DAAbstractNode::IdType id)
 DAWorkFlow::getNodeGraphicsItem
 
virtual void saveExternInfoToXml (QDomDocument *doc, QDomElement *nodeElement, const QVersionNumber &ver) const
 保存工作流的扩展信息
 
virtual void loadExternInfoFromXml (const QDomElement *nodeElement, const QVersionNumber &ver)
 加载工作流的扩展信息
 
void setStartNode (DAAbstractNode::SharedPointer p)
 设置开始执行的节点
 
DAAbstractNode::SharedPointer getStartNode () const
 获取开始执行的节点
 
bool isRunning () const
 判断是否正在运行
 
int size () const
 工作流中节点的数量
 
bool isEmpty () const
 判断是否为空
 
QString getLastErrorString () const
 获取最后发生的错误信息
 
void registStartWorkflowCallback (CallbackPrepareStartExecute fn)
 注册开始执行工作流的回调
 
void registEndWorkflowCallback (CallbackPrepareEndExecute fn)
 注册结束执行工作流的回调
 
QList< CallbackPrepareStartExecute > getStartWorkflowCallback () const
 获取所有的开始回调函数
 
QList< CallbackPrepareEndExecute > getEndWorkflowCallback () const
 获取所有的结束回调函数
 
DANodeGraphicsScenegetScene () const
 获取这个工作流加入的scene
 
void callWorkflowReady ()
 触发工作流完成信号
 
void disableFactoryCallBack ()
 禁止所有工厂回调,这个一般用于文件加载过程,避免回调过多
 
void enableFactoryCallBack ()
 允许工厂回调,这个一般用于文件加载过程,避免回调过多
 
bool isEnableFactoryCallBack () const
 是否允许工厂回调
 

额外继承的成员函数

- Public 类型 继承自 DA::DAWorkFlow
using CallbackPrepareStartExecute = std::function< bool(DAWorkFlowExecuter *) >
 
using CallbackPrepareEndExecute = std::function< bool(DAWorkFlowExecuter *) >
 
- Public 槽 继承自 DA::DAWorkFlow
void exec ()
 开始执行 此函数会触发信号
 
void terminate ()
 终止
 
- 信号 继承自 DA::DAWorkFlow
void nodeAdded (DAAbstractNode::SharedPointer node)
 节点添加的信号
 
void nodeStartRemove (DAAbstractNode::SharedPointer node)
 节点在工作流中开始被删除
 
void nodeRemoved (DAAbstractNode::SharedPointer n)
 节点移除完成信号 这时此信号携带的n是这个节点唯一的生命周期,如果接收此信号后还保留这个节点,这个节点将不销毁
 
void workflowReady ()
 工作流就绪信号,此信号在文件加载过程完成后触发
 
void nodeNameChanged (DAAbstractNode::SharedPointer node, const QString &oldName, const QString &newName)
 节点名字变更
 
void workflowCleared ()
 清空信号
 
void startExecute ()
 开始执行,exec函数调用后会触发此信号
 
void terminateExecute ()
 开始停止工作流
 
void nodeExecuteFinished (DAAbstractNode::SharedPointer n, bool state)
 执行到某个节点发射的信号
 
void finished (bool success)
 工作流执行完毕信号
 
- Protected 成员函数 继承自 DA::DAWorkFlow
void emitNodeNameChanged (DAAbstractNode::SharedPointer node, const QString &oldName, const QString &newName)
 
void nodeIDChanged (const DAAbstractNode::SharedPointer &node, const DAAbstractNode::IdType &oldId)
 节点的id信息变更
 

详细描述

创建节点命令

这里所有工作流是共享一批工厂


该类的文档由以下文件生成: