📄 passenger.h
字号:
//## begin module%1.3%.codegen_version preserve=yes
// Read the documentation to learn more about C++ code generator
// versioning.
//## end module%1.3%.codegen_version
//## begin module%3C12C5580050.cm preserve=no
// %X% %Q% %Z% %W%
//## end module%3C12C5580050.cm
//## begin module%3C12C5580050.cp preserve=no
//## end module%3C12C5580050.cp
//## Module: Passenger%3C12C5580050; Package specification
//## Subsystem: <Top Level>
//## Source file: D:\Program\OOP\Elevators\SourceCode\Passenger.h
#ifndef Passenger_h
#define Passenger_h 1
//## begin module%3C12C5580050.additionalIncludes preserve=no
//## end module%3C12C5580050.additionalIncludes
//## begin module%3C12C5580050.includes preserve=yes
//## end module%3C12C5580050.includes
//## begin module%3C12C5580050.declarations preserve=no
//## end module%3C12C5580050.declarations
//## begin module%3C12C5580050.additionalDeclarations preserve=yes
#include "MsgList.h" // Added by ClassView
typedef enum{ WAITING=0,
INLIFT=1,
WORKING=2,
NOTSERVED=3,
COMPLETED=4,
END=5
} PSTATUS;
//## end module%3C12C5580050.additionalDeclarations
//## begin CPassenger%3C12151703DE.preface preserve=yes
//## end CPassenger%3C12151703DE.preface
//## Class: CPassenger%3C12151703DE
// 乘客类
//## Category: <Top Level>
//## Persistence: Transient
//## Cardinality/Multiplicity: n
class CPassenger
{
//## begin CPassenger%3C12151703DE.initialDeclarations preserve=yes
//## end CPassenger%3C12151703DE.initialDeclarations
public:
//## Constructors (generated)
CPassenger();
CPassenger(const CPassenger &right);
//## Destructor (generated)
~CPassenger();
//## Assignment Operation (generated)
CPassenger & operator=(const CPassenger &right);
//## Equality Operations (generated)
int operator==(const CPassenger &right) const;
int operator!=(const CPassenger &right) const;
//## Other Operations (specified)
//## Operation: HasRequest%3C121C960096
// 测试乘客有没有请求要发?
// true : 有
bool HasRequest ();
// Additional Public Declarations
//## begin CPassenger%3C12151703DE.public preserve=yes
CPassenger(int ID,int ridetimes);
int GetPID();
int GetOriFloor();
int GetObjFloor();
long GetWaitTimer();
void FinishOneRide();
void SetFloor(int floor);
void SetObjFloor(int floor);
void SetStatus(PSTATUS);
PSTATUS GetStatus();
void GenRandDelay();
void GenRandFloor();
void EndActivity();
bool IsEnd();
bool IsCompleted();
bool IsServed();
//## end CPassenger%3C12151703DE.public
protected:
// Additional Protected Declarations
//## begin CPassenger%3C12151703DE.protected preserve=yes
//## end CPassenger%3C12151703DE.protected
private:
//## Get and Set Operations for Class Attributes (generated)
//## Attribute: m_iPID%3C121622014A
// 乘客的标识
const int get_m_iPID () const;
void set_m_iPID (int value);
//## Attribute: m_iFloor%3C12164D02D0
// 乘客当前所在的位置: 哪一楼层
const int get_m_iFloor () const;
void set_m_iFloor (int value);
//## Attribute: m_iObjFloor%3C121686029E
// 乘客的目标楼层:要去的楼层
const int get_m_iObjFloor () const;
void set_m_iObjFloor (int value);
//## Attribute: m_enStatus%3C1216BC030C
// enum PSTATUS {WAITING=0,INLIFT=1,WORKING=3};
// 乘客的状态:
// WAITING 等待状态
// INLIFT 电梯中或乘坐电梯期间
// WORKING 工作中或停留在某楼层10-120秒期间
const PSTATUS get_m_enStatus () const;
void set_m_enStatus (PSTATUS value);
//## Attribute: m_lWaitTimer%3C12189F0014
// 乘客的等待计时器
const long get_m_lWaitTimer () const;
void set_m_lWaitTimer (long value);
//## Attribute: m_iDelay%3C1219EB00D2
// 乘客在某一楼层的停留时间,由系统随机的在10-120秒钟生成.
const int get_m_iDelay () const;
void set_m_iDelay (int value);
//## Attribute: m_iRideTimes%3C121B6C01FE
// 乘客乘坐的次数,由系统在3-10次之间生成
const int get_m_iRideTimes () const;
void set_m_iRideTimes (int value);
// Additional Private Declarations
//## begin CPassenger%3C12151703DE.private preserve=yes
//## end CPassenger%3C12151703DE.private
private: //## implementation
// Data Members for Class Attributes
//## begin CPassenger::m_iPID%3C121622014A.attr preserve=no private: int {U}
int m_iPID;
//## end CPassenger::m_iPID%3C121622014A.attr
//## begin CPassenger::m_iFloor%3C12164D02D0.attr preserve=no private: int {U} 1
int m_iFloor;
//## end CPassenger::m_iFloor%3C12164D02D0.attr
//## begin CPassenger::m_iObjFloor%3C121686029E.attr preserve=no private: int {U}
int m_iObjFloor;
//## end CPassenger::m_iObjFloor%3C121686029E.attr
//## begin CPassenger::m_enStatus%3C1216BC030C.attr preserve=no private: PSTATUS {U} WAIT
PSTATUS m_enStatus;
//## end CPassenger::m_enStatus%3C1216BC030C.attr
//## begin CPassenger::m_lWaitTimer%3C12189F0014.attr preserve=no private: long {U} 0
long m_lWaitTimer;
//## end CPassenger::m_lWaitTimer%3C12189F0014.attr
//## begin CPassenger::m_iDelay%3C1219EB00D2.attr preserve=no private: int {U} 10
int m_iDelay;
//## end CPassenger::m_iDelay%3C1219EB00D2.attr
//## begin CPassenger::m_iRideTimes%3C121B6C01FE.attr preserve=no private: int {U} 3
int m_iRideTimes;
//## end CPassenger::m_iRideTimes%3C121B6C01FE.attr
// Additional Implementation Declarations
//## begin CPassenger%3C12151703DE.implementation preserve=yes
int m_lWorkTimer;
//## end CPassenger%3C12151703DE.implementation
};
//## begin CPassenger%3C12151703DE.postscript preserve=yes
//## end CPassenger%3C12151703DE.postscript
// Class CPassenger
//## Get and Set Operations for Class Attributes (inline)
inline const int CPassenger::get_m_iPID () const
{
//## begin CPassenger::get_m_iPID%3C121622014A.get preserve=no
return m_iPID;
//## end CPassenger::get_m_iPID%3C121622014A.get
}
inline void CPassenger::set_m_iPID (int value)
{
//## begin CPassenger::set_m_iPID%3C121622014A.set preserve=no
m_iPID = value;
//## end CPassenger::set_m_iPID%3C121622014A.set
}
inline const int CPassenger::get_m_iFloor () const
{
//## begin CPassenger::get_m_iFloor%3C12164D02D0.get preserve=no
return m_iFloor;
//## end CPassenger::get_m_iFloor%3C12164D02D0.get
}
inline void CPassenger::set_m_iFloor (int value)
{
//## begin CPassenger::set_m_iFloor%3C12164D02D0.set preserve=no
m_iFloor = value;
//## end CPassenger::set_m_iFloor%3C12164D02D0.set
}
inline const int CPassenger::get_m_iObjFloor () const
{
//## begin CPassenger::get_m_iObjFloor%3C121686029E.get preserve=no
return m_iObjFloor;
//## end CPassenger::get_m_iObjFloor%3C121686029E.get
}
inline void CPassenger::set_m_iObjFloor (int value)
{
//## begin CPassenger::set_m_iObjFloor%3C121686029E.set preserve=no
m_iObjFloor = value;
//## end CPassenger::set_m_iObjFloor%3C121686029E.set
}
inline const PSTATUS CPassenger::get_m_enStatus () const
{
//## begin CPassenger::get_m_enStatus%3C1216BC030C.get preserve=no
return m_enStatus;
//## end CPassenger::get_m_enStatus%3C1216BC030C.get
}
inline void CPassenger::set_m_enStatus (PSTATUS value)
{
//## begin CPassenger::set_m_enStatus%3C1216BC030C.set preserve=no
m_enStatus = value;
//## end CPassenger::set_m_enStatus%3C1216BC030C.set
}
inline const long CPassenger::get_m_lWaitTimer () const
{
//## begin CPassenger::get_m_lWaitTimer%3C12189F0014.get preserve=no
return m_lWaitTimer;
//## end CPassenger::get_m_lWaitTimer%3C12189F0014.get
}
inline void CPassenger::set_m_lWaitTimer (long value)
{
//## begin CPassenger::set_m_lWaitTimer%3C12189F0014.set preserve=no
m_lWaitTimer = value;
//## end CPassenger::set_m_lWaitTimer%3C12189F0014.set
}
inline const int CPassenger::get_m_iDelay () const
{
//## begin CPassenger::get_m_iDelay%3C1219EB00D2.get preserve=no
return m_iDelay;
//## end CPassenger::get_m_iDelay%3C1219EB00D2.get
}
inline void CPassenger::set_m_iDelay (int value)
{
//## begin CPassenger::set_m_iDelay%3C1219EB00D2.set preserve=no
m_iDelay = value;
//## end CPassenger::set_m_iDelay%3C1219EB00D2.set
}
inline const int CPassenger::get_m_iRideTimes () const
{
//## begin CPassenger::get_m_iRideTimes%3C121B6C01FE.get preserve=no
return m_iRideTimes;
//## end CPassenger::get_m_iRideTimes%3C121B6C01FE.get
}
inline void CPassenger::set_m_iRideTimes (int value)
{
//## begin CPassenger::set_m_iRideTimes%3C121B6C01FE.set preserve=no
m_iRideTimes = value;
//## end CPassenger::set_m_iRideTimes%3C121B6C01FE.set
}
//## begin module%3C12C5580050.epilog preserve=yes
//## end module%3C12C5580050.epilog
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -