diff options
author | Ash Wolf <ninji@wuffs.org> | 2023-06-14 00:50:34 +0100 |
---|---|---|
committer | Ash Wolf <ninji@wuffs.org> | 2023-06-14 00:50:34 +0100 |
commit | 37e364b2c6cc7487a1c888d256a73e5337bb7189 (patch) | |
tree | eaf6e857382eef16c2dd940eb4125536fbe068bd /src/T2DLL/T2FInfoAreaIterator.h | |
download | t2win-37e364b2c6cc7487a1c888d256a73e5337bb7189.tar.gz t2win-37e364b2c6cc7487a1c888d256a73e5337bb7189.zip |
initial commit
Diffstat (limited to '')
-rw-r--r-- | src/T2DLL/T2FInfoAreaIterator.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/T2DLL/T2FInfoAreaIterator.h b/src/T2DLL/T2FInfoAreaIterator.h new file mode 100644 index 0000000..59ab38e --- /dev/null +++ b/src/T2DLL/T2FInfoAreaIterator.h @@ -0,0 +1,42 @@ +#pragma once +#include "common.h" + +class T2FInfoAreaIterator { +public: + T2FInfoAreaIterator(const T2FloorInfo&, const RECT&); + virtual ~T2FInfoAreaIterator(); + void Reset(); +protected: + int CalcNextUnitInfo(); +public: + int CurrentV(int&) const; + int Current(T2UnitInfo*&); + int Next(T2UnitInfo*&); + int NextTenant(T2Tenant*&); + void GetTenantRect(RECT&); + int NextRequest(T2Request*&); + int NextMover(T2Mover*&); + + T2FInfoAreaIterator(const T2FInfoAreaIterator&) {} +protected: + int IsValidPosition() const {} +}; +class T2FInfoPtIterator { +public: + T2FInfoPtIterator(const T2FloorInfo&, POINT); + virtual ~T2FInfoPtIterator(); + int CurrentH(int&) const; +protected: + int CalcRightUnitInfo(); + int CalcLeftUnitInfo(); +public: + int Current(T2UnitInfo*&); + int Right(T2UnitInfo*&); + int Left(T2UnitInfo*&); + int RightTenant(T2Tenant*&); + int LeftTenant(T2Tenant*&); + + T2FInfoPtIterator(const T2FInfoPtIterator&) {} +protected: + int IsValidPosition() const {} +}; |