summaryrefslogtreecommitdiff
path: root/src/T2DLL/T2PeopleDemandList.h
blob: 60dac7883b7b016526fea1da680cdb6e54082003 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#ifndef T2DLL_T2PEOPLEDEMANDLIST_H
#define T2DLL_T2PEOPLEDEMANDLIST_H
#include "../common.h"
#include "LArray.h"

class AFX_CLASS_EXPORT T2PeopleDemandList : public LArray {
public:
	T2PeopleDemandList(T2PoolDef* inPoolDef, T2SeasonParamDef* inSeasonParamDef, T2WorldDef* inWorldDef);
	T2PeopleDemandList(T2Archive& inArchive, T2SeasonParamDef* inSeasonParamDef, T2WorldDef* inWorldDef);
	virtual ~T2PeopleDemandList();

	void Add(T2PoolGradeDef* gradeDef);
	void Init(unsigned int inMonth, unsigned int inHour);
	void IncHour(unsigned int inMonth);
	BOOL Find(T2TenantMemberDef* inTenantMemberDef, int inEconoType, unsigned int inTransportType, BOOL inCheckOnlyFirstEconoType) const;
	BOOL Call(T2TenantMemberDef* inTenantMemberDef, int inEconoType, unsigned int inTransportType, T2PeopleType& outPeopleType) const;
	void DispatchRestore(T2PeopleType& peopleType);
	void DispatchAdd(T2PeopleType* peopleType);
	void Write(T2Archive& archive);

protected:
	void Add(T2PeopleTimeZoneList* timeZoneList);
	T2PeopleTimeZoneList* GetItem(int) const;

	T2SeasonParamDef *mSeasonParamDef;
};
#endif