logplus/ModuleConsole/command/include/SubmitWorkflowCmd.h

79 lines
1.8 KiB
C
Raw Normal View History

2026-01-16 17:18:41 +08:00
/*
* SubmitWorkflowCmd.h
*
* Created on: 2012-10-19
* Author: shenpenglin
*/
#ifndef PAI_FRAME_WORKFLOWVIEW_SUBMITWORKFLOWCMD_H
#define PAI_FRAME_WORKFLOWVIEW_SUBMITWORKFLOWCMD_H
#include <QUuid>
#include <QUndoCommand>
#include "Job.h"
namespace pai
{
namespace objectmodel
{
class PaiObject;
class PaiWorkflowDataModel;
}
/**
* @class SubmitWorkflowCmd
* @brief
*/
class SubmitWorkflowCmd : public QUndoCommand
{
public:
/**
* @brief
* @param[in] invoker Submit命令调用者对象指针
* @param[in] actionSender Submit信号发送者对象指针
* @param[in] viewID ID
* @param[in] parent
*/
SubmitWorkflowCmd(QObject *invoker, pai::objectmodel::PaiObject *actionSender,QUuid viewID,
pai::objectmodel::PaiWorkflowDataModel *pActiveWorkflow, QUndoCommand *parent = 0);
/**
* @brief
*/
virtual ~SubmitWorkflowCmd();
/**
* @brief undo
*/
void undo();
/**
* @brief redo
*/
void redo();
private:
/**
* @brief
*/
void SubmitWorkflowHelper();
/**
* @brief
* @param[in] projectID ID
* @param[out] jobName
* @param[out] priority
* @param[out] queueName
*/
bool GetSubmitInformation(long long projectID, QString& jobName, pai::ios::job::JobPriority& priority,
QString& queueName);
private:
QObject *m_pCmdInvoker;
pai::objectmodel::PaiObject* m_pActionSender;
QUuid m_ViewID;//视图ID
pai::objectmodel::PaiWorkflowDataModel *m_pActiveWorkflow;
};
}
#endif