📄 atssegins.h
字号:
// AtsSegIns.h: interface for the CAtsSegIns class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_ATSSEGINS_H__ACBC07F3_6DF6_46D8_8CDC_7078CF1F55FC__INCLUDED_)
#define AFX_ATSSEGINS_H__ACBC07F3_6DF6_46D8_8CDC_7078CF1F55FC__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "AtsSegmentItem.h"
#include "AtsSentence.h"
#include "AtsVarItem.h"
class CAtsEngine;
//==============================================
// Segment 的实例对象类
//==============================================
class ATS_API CAtsSegIns : public CObject
{
public:
CAtsSegIns();
virtual ~CAtsSegIns();
CAtsVarItem * NewVar(CAtsString strVarName , int nType );
void SentPop_cant_exit();
BOOL GetNextCmdLine(CAtsString &strCmdLine , BOOL bAddPos = true);
CAtsSentence * GetSentence_While(int nBeginPos , CAtsString strCmdLine);
CAtsSentence * GetSentence_Switch(int nBeginPos , CAtsString strCmdLine);
CAtsSentence * GetSentence_Do(int nBeginPos , CAtsString strCmdLine);
CAtsSentence * GetSentence_for(int nBeginPos , CAtsString strCmdLine);
int GetSentenceEnd_while( CAtsSentence * pSentence , int nPos );
int GetSentenceEnd_for( CAtsSentence * pSentence , int nPos );
int GetSentenceEnd_Do( CAtsSentence * pSentence , int nPos );
void DetachList(CAtsString strListName = _T(""));
CAtsSentence * GetSentence_If(int nBeginPos , CAtsString strCmdLine);
int GetNextCodition_If(CAtsSentence * pSentence ,int nPos, CAtsString &strCondition , int &nFindPos );
int GetNextCodition_Switch(CAtsSentence * pSentence ,int nPos, CAtsString &strCondition , int &nFindPos );
BOOL LoadParamData( CAtsParam *pParam );
CAtsSentence * SentTop();
CAtsSentence * SentPop();
CAtsSentence * FinSentence( int nBeginPos );
CAtsVarItem * GetVarItem(LPCTSTR sName );
CAtsEngine * m_pEngine;
int m_nLineErrorPos; // 出错的行
CAtsSegmentItem * m_pSegmentItem;
CAtsParam m_InParam; // 转入的参数
int m_nNextPos;
CPtrList m_listUserVar; // 当前段中的用户定义的变量,规则为 @VarName
CObList m_listSentence;
CObList m_listSentenceHeap; // 语句堆,因为, if while ... 可能会嵌套
// 只存指针,不用删除数据
};
#endif // !defined(AFX_ATSSEGINS_H__ACBC07F3_6DF6_46D8_8CDC_7078CF1F55FC__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -