|
DAWorkbench 0.0.1
DAWorkbench API
|
创建节点命令 更多...
#include <DADataWorkFlow.h>
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< DAAbstractNodeFactory > | getFactory (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获取节点 | |
| DAAbstractNodeGraphicsItem * | getNodeGraphicsItem (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 |
| 获取所有的结束回调函数 | |
| DANodeGraphicsScene * | getScene () 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信息变更 | |
创建节点命令
这里所有工作流是共享一批工厂