logplus/Workflow/WFEngine/Component/WorkflowWidget/include/GlobalModuleBackup.h

102 lines
2.7 KiB
C
Raw Normal View History

2026-01-16 17:18:41 +08:00
/**
* @file GlobalModuleBackup.h
* @brief
* @date 2012-02-21
*/
#ifndef PAI_FRAME_WORKFLOWWIDGET_GLOBALMODULEBACKUP_H
#define PAI_FRAME_WORKFLOWWIDGET_GLOBALMODULEBACKUP_H
#include <QMap>
#include <QUuid>
#include "Turtle.h"
namespace pai
{
namespace workflow
{
class CModuleInformation;
}
}
namespace pai
{
namespace graphics2d
{
/**
* @class GlobalModuleBackup
* @brief
*/
class PAI_WORKFLOWWIDGET_EXPORT GlobalModuleBackup
{
public:
/**
* @brief
*/
GlobalModuleBackup();
/**
* @brief
*/
virtual ~GlobalModuleBackup();
/**
* @brief
* @param[in] workflowID ID
* @param[in] pModule
* @return
*/
pai::workflow::CModuleInformation* GetBackupModule(const QUuid& workflowID, pai::workflow::CModuleInformation *pModule) const;
/**
* @brief
* @param[in] workflowID ID
* @param[in] pModule
*/
bool InsertBackupModule(const QUuid& workflowID, pai::workflow::CModuleInformation *pModule);
/**
* @brief
* @param[in] workflowID ID
* @param[in] pModule
*/
bool RemoveBackupModule(const QUuid& workflowID, pai::workflow::CModuleInformation *pModule);
/**
* @brief
* @param[in] workflowID ID
*/
bool RemoveBackupModulesInWorkflow(const QUuid& workflowID);
/**
* @brief
* @param[in] workflowID ID
*/
void UpDateBackupModule(const QUuid& workflowID);
/**
* @brief stepIDstepID值会因为其它模块的删除被改变
* @param[in] workflowID ID
*/
bool UpdateBackupModuleStepIDs(const QUuid &workflowID);
/**
* @brief
* @param[in] workflowID ID
* @param[in] pSrcModule
*/
bool HasModified(const QUuid& workflowID, pai::workflow::CModuleInformation *pSrcModule) const;
private:
QMap <QUuid, QMap<pai::workflow::CModuleInformation*, pai::workflow::CModuleInformation*> > m_ModuleInfo; ///< 当前模块信息,备份的模块信息
};
}
}
/**
* @brief
* @return
*/
extern PAI_WORKFLOWWIDGET_EXPORT pai::graphics2d::GlobalModuleBackup* GetGlobalModuleBackup();
#endif ///< PAI_FRAME_WORKFLOWWIDGET_GLOBALMODULEBACKUP_H