48 lines
1.2 KiB
C
48 lines
1.2 KiB
C
|
|
/**
|
|||
|
|
* @file IOChecker.h
|
|||
|
|
* @brief 工作流输入/输出检查:
|
|||
|
|
* 1.检查输入、输出模块是否存在
|
|||
|
|
* 2.检测输出模块的输出路径,是否与其它模块输出路径重复
|
|||
|
|
*
|
|||
|
|
* @author 黄军
|
|||
|
|
* @date 2011-10-20
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
#ifndef PAI_FRAME_WORKFLOWENGINE_IOCHECKER_H
|
|||
|
|
#define PAI_FRAME_WORKFLOWENGINE_IOCHECKER_H
|
|||
|
|
|
|||
|
|
#include "WorkFlowFile.h"
|
|||
|
|
#include "WorkflowChecker.h"
|
|||
|
|
|
|||
|
|
#include <string>
|
|||
|
|
#include <vector>
|
|||
|
|
|
|||
|
|
namespace pai {
|
|||
|
|
namespace workflow {
|
|||
|
|
|
|||
|
|
class PAI_WORKFLOWENGINE_EXPORT CIOChecker:public CWorkflowChecker{
|
|||
|
|
public:
|
|||
|
|
CIOChecker();
|
|||
|
|
virtual ~CIOChecker();
|
|||
|
|
protected:
|
|||
|
|
/**
|
|||
|
|
* @brief 工作流输入输出检验器具体方法实现
|
|||
|
|
* @param [in] workflow 待校验的工作流对象
|
|||
|
|
* @param [out] strErrorMsg 返回的错误信息,检验失败函数返回false
|
|||
|
|
*/
|
|||
|
|
virtual bool StepCheck(CWorkFlowFile* workflow,std::string& strErrorMsg);
|
|||
|
|
private:
|
|||
|
|
CCompositeParameterItem* CastCompositeParameterItem(CParameterItem*);
|
|||
|
|
/**
|
|||
|
|
* @brief 从IOModule中抽取,文件路径
|
|||
|
|
* @param [in] ioModuleInfo
|
|||
|
|
* @param [in/out] fileVct 抽取的文件路径
|
|||
|
|
*/
|
|||
|
|
void ExtractIOModuleFilePaths(CModuleInformation* ioModuleInfo,std::vector<std::string>& fileVct);
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
#endif
|