/************************************************************************* 【文件名】 CellDefineVar.h 【功能模块和目的】 自定义变量节点类头文件 【开发者及日期】 郑石诺 2015/02/04 【版本】 V1.0.0 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司 【更改记录】 *************************************************************************/ #pragma once #include "cellbase.h" #include "CellAUTOCREATE.h" /************************************************************************* 【类名】 CCellDefineVar 【功能】 【接口说明】 自定义变量节点类 【开发者及日期】 郑石诺 2015/02/04 【版本】 V1.0.0 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司 【更改记录】 *************************************************************************/ class CCellDefineVar : public CCellBase { DECLARE_CELL_AUTOCREATE public: CCellDefineVar(void); CCellDefineVar( CCellDefineVar & cellDefineVar ); virtual ~CCellDefineVar(void); void addVar(int VarType, const CString& VarName, const CString& VarVal); //////////////////////////////////////////////////////////////////////////////// //继承自CCellBase int operate(void); CCellBase * copy(void); bool fillData(IFlowDataProvider& Provider); LPCTSTR name(void) const { return CELL_NAME_DEFINE_VAR; } int maxWaitingTime(void) const { return 0; } private: void __release(void); private: struct VarInfo { VarInfo(int Type, LPCTSTR Name, LPCTSTR Value) : nVarType(Type) { ZeroMemory(szVarName, VAR_NAME_LEN); ZeroMemory(szVarValue, VAR_LEN); lstrcpy(szVarName, Name); lstrcpy(szVarValue, Value); } VarInfo(const VarInfo& Info) { ZeroMemory(szVarName, VAR_NAME_LEN); ZeroMemory(szVarValue, VAR_LEN); nVarType = Info.nVarType; lstrcpy(szVarName, Info.szVarName); lstrcpy(szVarValue, Info.szVarValue); } int nVarType; // 变量类型 1:初值为具体值,2:初值为变量 char szVarName[VAR_NAME_LEN]; // 变量名称 char szVarValue[VAR_LEN]; // 变量值 }; int m_NextPos; // 下一个节点编号 CList m_VarList; // 变量类表 };