From ba683b3b8d1b29105331f2596bb7fa1c4c898f4f Mon Sep 17 00:00:00 2001 From: ragnarok-clanker Date: Wed, 11 Nov 2026 20:19:09 +0000 Subject: [PATCH] Maintenance: Linkage preludes, part 2 (resubmit of 17276): the 17 units whose explicit-template declarations name game types. Their e Batch #17281 by ragnarok-clanker: no function's compiled code changes; checked with 17 compiled unit(s), including every includer of Source/Linkage/Source/Client/Browser/BrowserFactory.cpp.h, Source/Linkage/Source/Client/Browser/BrowserRegistry.cpp.h, Source/Linkage/Source/Client/Session/Session.cpp.h, Source/Linkage/Source/Contents/Actors/ActorNameCache.cpp.h, Source/Linkage/Source/Contents/Actors/ActorNameDirectory.cpp.h, Source/Linkage/Source/Contents/Actors/ActorNameRequests.cpp.h, Source/Linkage/Source/Contents/Actors/RenderObject.cpp.h, Source/Linkage/Source/Contents/AdventureGuide/AdventureGuideMgr.cpp.h, Source/Linkage/Source/Contents/Async/AsyncWorkRecycleObjectPoolMgr.cpp.h, Source/Linkage/Source/Contents/Items/ClientItemLists.cpp.h, Source/Linkage/Source/Contents/Messenger/ClientMessenger.cpp.h, Source/Linkage/Source/Contents/Skills/PlayerSkillBundle.cpp.h, Source/Linkage/Source/UI/AdventureGuide/UIAdventureGuide.cpp.h, Source/Linkage/Source/UI/Quest/UIRenewQuestUI.cpp.h, Source/Linkage/Source/UI/Quest/UIRenewQuestWnd.cpp.h, Source/Linkage/Source/UI/Window/UIWindowMgr.cpp.h, Source/Linkage/Source/UI/Window/WindowMgrState.cpp.h. --- Source/Client/Browser/BrowserFactory.cpp | 2 - Source/Client/Browser/BrowserRegistry.cpp | 5 - Source/Client/Session/Session.cpp | 31 ------ Source/Contents/Actors/ActorNameCache.cpp | 6 - Source/Contents/Actors/ActorNameDirectory.cpp | 8 -- Source/Contents/Actors/ActorNameRequests.cpp | 6 - Source/Contents/Actors/RenderObject.cpp | 6 - .../AdventureGuide/AdventureGuideMgr.cpp | 7 -- .../Async/AsyncWorkRecycleObjectPoolMgr.cpp | 15 --- Source/Contents/Items/ClientItemLists.cpp | 3 - Source/Contents/Messenger/ClientMessenger.cpp | 12 -- Source/Contents/Skills/PlayerSkillBundle.cpp | 4 - .../Client/Browser/BrowserFactory.cpp.h | 12 ++ .../Client/Browser/BrowserRegistry.cpp.h | 12 ++ .../Source/Client/Session/Session.cpp.h | 103 ++++++++++++++++++ .../Contents/Actors/ActorNameCache.cpp.h | 10 ++ .../Contents/Actors/ActorNameDirectory.cpp.h | 11 ++ .../Contents/Actors/ActorNameRequests.cpp.h | 15 +++ .../Source/Contents/Actors/RenderObject.cpp.h | 84 ++++++++++++++ .../AdventureGuide/AdventureGuideMgr.cpp.h | 14 +++ .../Async/AsyncWorkRecycleObjectPoolMgr.cpp.h | 33 ++++++ .../Contents/Items/ClientItemLists.cpp.h | 44 ++++++++ .../Contents/Messenger/ClientMessenger.cpp.h | 74 +++++++++++++ .../Contents/Skills/PlayerSkillBundle.cpp.h | 14 +++ .../UI/AdventureGuide/UIAdventureGuide.cpp.h | 43 ++++++++ .../Source/UI/Quest/UIRenewQuestUI.cpp.h | 42 +++++++ .../Source/UI/Quest/UIRenewQuestWnd.cpp.h | 47 ++++++++ .../Source/UI/Window/UIWindowMgr.cpp.h | 63 +++++++++++ .../Source/UI/Window/WindowMgrState.cpp.h | 47 ++++++++ Source/UI/AdventureGuide/UIAdventureGuide.cpp | 9 -- Source/UI/Quest/UIRenewQuestUI.cpp | 13 --- Source/UI/Quest/UIRenewQuestWnd.cpp | 4 - Source/UI/Window/UIWindowMgr.cpp | 11 -- Source/UI/Window/WindowMgrState.cpp | 5 - 34 files changed, 668 insertions(+), 147 deletions(-) create mode 100644 Source/Linkage/Source/Client/Browser/BrowserFactory.cpp.h create mode 100644 Source/Linkage/Source/Client/Browser/BrowserRegistry.cpp.h create mode 100644 Source/Linkage/Source/Client/Session/Session.cpp.h create mode 100644 Source/Linkage/Source/Contents/Actors/ActorNameCache.cpp.h create mode 100644 Source/Linkage/Source/Contents/Actors/ActorNameDirectory.cpp.h create mode 100644 Source/Linkage/Source/Contents/Actors/ActorNameRequests.cpp.h create mode 100644 Source/Linkage/Source/Contents/Actors/RenderObject.cpp.h create mode 100644 Source/Linkage/Source/Contents/AdventureGuide/AdventureGuideMgr.cpp.h create mode 100644 Source/Linkage/Source/Contents/Async/AsyncWorkRecycleObjectPoolMgr.cpp.h create mode 100644 Source/Linkage/Source/Contents/Items/ClientItemLists.cpp.h create mode 100644 Source/Linkage/Source/Contents/Messenger/ClientMessenger.cpp.h create mode 100644 Source/Linkage/Source/Contents/Skills/PlayerSkillBundle.cpp.h create mode 100644 Source/Linkage/Source/UI/AdventureGuide/UIAdventureGuide.cpp.h create mode 100644 Source/Linkage/Source/UI/Quest/UIRenewQuestUI.cpp.h create mode 100644 Source/Linkage/Source/UI/Quest/UIRenewQuestWnd.cpp.h create mode 100644 Source/Linkage/Source/UI/Window/UIWindowMgr.cpp.h create mode 100644 Source/Linkage/Source/UI/Window/WindowMgrState.cpp.h diff --git a/Source/Client/Browser/BrowserFactory.cpp b/Source/Client/Browser/BrowserFactory.cpp index 79b7d51d6..2d7d9f36d 100644 --- a/Source/Client/Browser/BrowserFactory.cpp +++ b/Source/Client/Browser/BrowserFactory.cpp @@ -8,8 +8,6 @@ #include -extern template std::pair::iterator, bool> std::map::insert>(std::pair&&); - namespace { constexpr unsigned maximumBrowserCount = 5; } diff --git a/Source/Client/Browser/BrowserRegistry.cpp b/Source/Client/Browser/BrowserRegistry.cpp index a4d3b4fef..c0f9519fb 100644 --- a/Source/Client/Browser/BrowserRegistry.cpp +++ b/Source/Client/Browser/BrowserRegistry.cpp @@ -5,11 +5,6 @@ #include -using BrowserTree = std::_Tree, std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -BrowserTree::_Find_lower_bound(HWND const&) const; -extern template std::pair::iterator, bool> std::map::insert>(std::pair&&); - // OFFSET: 0x00A91990 // FUNCTION: fn_17167 CWebBrowser* UIWindowMgr::FindBrowser(HWND window) { diff --git a/Source/Client/Session/Session.cpp b/Source/Client/Session/Session.cpp index 920647325..a4ffdd006 100644 --- a/Source/Client/Session/Session.cpp +++ b/Source/Client/Session/Session.cpp @@ -74,39 +74,9 @@ #include #include #include -#include "Utility/StdStringCompare.h" #include "Utility/Math/AffineMatrix.h" #include "Utility/Cipher/CryptName.h" -using SessionShopTree = std::_Tree, std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -SessionShopTree::_Find_lower_bound(const int&) const; - -using NameToIdTree = std::_Tree, std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -NameToIdTree::_Find_lower_bound(const std::string&) const; - -using ShopEntryTree = std::_Tree, std::less, std::allocator>>, false>>; -extern template std::_Tree_find_result>, void*>*> -ShopEntryTree::_Find_lower_bound(const int&) const; - -using ActorIdTree = std::_Tree, std::allocator, false>>; -extern template std::_Tree_find_result*> -ActorIdTree::_Find_lower_bound(const std::uint32_t&) const; - -extern template void std::vector::resize(size_type, const std::string&); -extern template void std::vector::_Tidy() noexcept; -#include "Utility/StdStringMoveAssign.h" - -using PendingActorNameTree = std::_Tree, std::allocator, false>>; -extern template std::_Tree_find_result*> -PendingActorNameTree::_Find_lower_bound(const std::uint32_t&) const; - // STATIC: 0x01732638 // GLOBAL: gl_24474 CSession g_session; @@ -130,7 +100,6 @@ public: // GLOBAL: gl_25445 int g_sessionTableLoadCount; - namespace EquipmentProperties { class CEquipmentPropertiesMgr { public: diff --git a/Source/Contents/Actors/ActorNameCache.cpp b/Source/Contents/Actors/ActorNameCache.cpp index fec9a7e14..edb2619e3 100644 --- a/Source/Contents/Actors/ActorNameCache.cpp +++ b/Source/Contents/Actors/ActorNameCache.cpp @@ -2,12 +2,6 @@ #include -using ActorNameCardTree = std::_Tree, - std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -ActorNameCardTree::_Find_lower_bound(const std::uint32_t&) const; - // OFFSET: 0x005BFA60 // FUNCTION: fn_03499 std::size_t CActorNameCardHolder::Save(std::vector& output) { diff --git a/Source/Contents/Actors/ActorNameDirectory.cpp b/Source/Contents/Actors/ActorNameDirectory.cpp index 504cece66..704e05327 100644 --- a/Source/Contents/Actors/ActorNameDirectory.cpp +++ b/Source/Contents/Actors/ActorNameDirectory.cpp @@ -2,14 +2,6 @@ #include -#include "Utility/StdTraitsEqual.h" - -using ActorNameCardTree = std::_Tree, - std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -ActorNameCardTree::_Find_lower_bound(const std::uint32_t&) const; - // OFFSET: 0x005BF870 // FUNCTION: fn_03497 std::size_t CActorNameCardHolder::Erase(std::uint32_t id) { diff --git a/Source/Contents/Actors/ActorNameRequests.cpp b/Source/Contents/Actors/ActorNameRequests.cpp index de05a10ae..b0ab0fb44 100644 --- a/Source/Contents/Actors/ActorNameRequests.cpp +++ b/Source/Contents/Actors/ActorNameRequests.cpp @@ -7,12 +7,6 @@ #include #include -using ActorNameCardTree = std::_Tree, - std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -ActorNameCardTree::_Find_lower_bound(const std::uint32_t&) const; - #pragma pack(push, 1) struct PACKET_CZ_REQNAME2 { /* 0000 */ std::int16_t packetType; diff --git a/Source/Contents/Actors/RenderObject.cpp b/Source/Contents/Actors/RenderObject.cpp index d85ed0311..e4378efad 100644 --- a/Source/Contents/Actors/RenderObject.cpp +++ b/Source/Contents/Actors/RenderObject.cpp @@ -75,12 +75,6 @@ #include "Utility/Cipher/LocalEncryptedName.h" #include "Utility/Cipher/CryptName.h" -using InstantValueTree = std::_Tree, std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -InstantValueTree::_Find_lower_bound(const int&) const; -extern template void std::list::push_back(CRenderObject*&&); - // GLOBAL: gl_25173 int g_playerPoisoned; diff --git a/Source/Contents/AdventureGuide/AdventureGuideMgr.cpp b/Source/Contents/AdventureGuide/AdventureGuideMgr.cpp index 8df1eb85d..a43dc9ffa 100644 --- a/Source/Contents/AdventureGuide/AdventureGuideMgr.cpp +++ b/Source/Contents/AdventureGuide/AdventureGuideMgr.cpp @@ -11,8 +11,6 @@ #include #include -extern template bool std::string_view::_Equal(std::string_view) const noexcept; - // GLOBAL: gl_24502 CAdventureGuideMgr* g_adventureGuideMgr; @@ -478,7 +476,6 @@ int InsertQuestSubMenu(lua_State* state) { return 2; } - // OFFSET: 0x0066AF10 // FUNCTION: fn_05284 int InsertQuestContents(lua_State* state) { @@ -574,7 +571,6 @@ int InsertQuestReward(lua_State* state) { return 2; } - // OFFSET: 0x00668EA0 // FUNCTION: fn_05270 int InsertDungeon(lua_State* state) { @@ -834,7 +830,6 @@ int InsertWeaponSubMenu(lua_State* state) { return 2; } - // OFFSET: 0x0066B810 // FUNCTION: fn_05288 int InsertWeaponContents(lua_State* state) { @@ -907,7 +902,6 @@ int InsertWeaponContents(lua_State* state) { return 2; } - // OFFSET: 0x0066BB10 // FUNCTION: fn_05289 int InsertWeaponObtainGuide(lua_State* state) { @@ -938,7 +932,6 @@ int InsertWeaponObtainGuide(lua_State* state) { return 2; } - // OFFSET: 0x00668550 // FUNCTION: fn_05266 int InsertArmor(lua_State* state) { diff --git a/Source/Contents/Async/AsyncWorkRecycleObjectPoolMgr.cpp b/Source/Contents/Async/AsyncWorkRecycleObjectPoolMgr.cpp index 0cc0e096a..e1806ab53 100644 --- a/Source/Contents/Async/AsyncWorkRecycleObjectPoolMgr.cpp +++ b/Source/Contents/Async/AsyncWorkRecycleObjectPoolMgr.cpp @@ -16,21 +16,6 @@ #include #include -extern template void std::deque::push_back(CAccountLinkedUserDataLoadAsyncWork*&&); -extern template void std::deque::push_back(CAccountLinkedUserDataSaveAsyncWork*&&); -extern template void std::deque::push_back(CChangePartyMasterAsyncWork*&&); -extern template void std::deque::push_back(CCharacterLinkedUserDataLoadAsyncWork*&&); -extern template void std::deque::push_back(CCharacterLinkedUserDataSaveAsyncWork*&&); -extern template void std::deque::push_back(CEmblemDataDownloadAsyncWork*&&); -extern template void std::deque::push_back(CEmblemDataUploadAsyncWork*&&); -extern template void std::deque::push_back(CLoadMyPartyAsyncWork*&&); -extern template void std::deque::push_back(CLoadPartyInfoAsyncWork*&&); -extern template void std::deque::push_back(CLoadPartyListAsyncWork*&&); -extern template void std::deque::push_back(CMCStoreInfoBackupSaveAsyncWork*&&); -extern template void std::deque::push_back(CMCStoreInfoBackupLoadAsyncWork*&&); -extern template void std::deque::push_back(CRegisterPartyAsyncWork*&&); -extern template void std::deque::push_back(CStopRecruitingAsyncWork*&&); - // OFFSET: 0x00576660 // FUNCTION: fn_02531 CAsyncWorkRecycleObjectPoolMgr::CAsyncWorkRecycleObjectPoolMgr() : m_registered(false) { diff --git a/Source/Contents/Items/ClientItemLists.cpp b/Source/Contents/Items/ClientItemLists.cpp index a97628e2e..fcb6a0a28 100644 --- a/Source/Contents/Items/ClientItemLists.cpp +++ b/Source/Contents/Items/ClientItemLists.cpp @@ -38,8 +38,6 @@ #include #include -extern template std::list::iterator std::list::erase(std::list::const_iterator) noexcept; -extern template void std::_List_node::_Free_non_head(std::allocator>&, std::_List_node*) noexcept; template __declspec(noinline) bool std::_Traits_equal>(const char*, std::size_t, const char*, std::size_t) noexcept; namespace { @@ -190,7 +188,6 @@ static_assert(sizeof(ItemAddGradePacket) == 0x3A); static_assert(sizeof(ItemListRecord) == 0x22); #endif - int GetEquipLocationIndex(const int& mask); namespace EquipmentProperties { diff --git a/Source/Contents/Messenger/ClientMessenger.cpp b/Source/Contents/Messenger/ClientMessenger.cpp index 1ff6ca16c..e3f39e9ca 100644 --- a/Source/Contents/Messenger/ClientMessenger.cpp +++ b/Source/Contents/Messenger/ClientMessenger.cpp @@ -61,21 +61,9 @@ extern "C" { #include } -#include "Utility/StdStringCompare.h" void __fastcall RefreshItemWindows(UIWindowMgr* mgr); -using SessionShopTree = std::_Tree, std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -SessionShopTree::_Find_lower_bound(const int&) const; -extern template void std::list::clear() noexcept; - -using NameToIdTree = std::_Tree, std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -NameToIdTree::_Find_lower_bound(const std::string&) const; - namespace EquipmentProperties { class CEquipmentProperties; } diff --git a/Source/Contents/Skills/PlayerSkillBundle.cpp b/Source/Contents/Skills/PlayerSkillBundle.cpp index 898047e1a..4a45ec295 100644 --- a/Source/Contents/Skills/PlayerSkillBundle.cpp +++ b/Source/Contents/Skills/PlayerSkillBundle.cpp @@ -10,10 +10,6 @@ bool IsIndexedSkill(int id); -using SkillGroupTreeValue = std::_Tree_val>>>; -extern template std::_Tree_unchecked_const_iterator& -std::_Tree_unchecked_const_iterator::operator++() noexcept; - // INLINED std::size_t SkillIdHash::operator()(std::uint32_t id) const { return std::hash()(id); diff --git a/Source/Linkage/Source/Client/Browser/BrowserFactory.cpp.h b/Source/Linkage/Source/Client/Browser/BrowserFactory.cpp.h new file mode 100644 index 000000000..f268ea35b --- /dev/null +++ b/Source/Linkage/Source/Client/Browser/BrowserFactory.cpp.h @@ -0,0 +1,12 @@ +#pragma once + +#include "UI/Window/UIEnums.h" +#include "Client/Application/ApplicationWindow.h" +#include "Client/Application/Launcher.h" +#include "Client/Browser/WebBrowser.h" +#include "Contents/Tables/MessageTable.h" +#include "Resource/MSGSTRINGID.h" +#include "UI/Window/UIWindowMgr.h" +#include + +extern template std::pair::iterator, bool> std::map::insert>(std::pair&&); diff --git a/Source/Linkage/Source/Client/Browser/BrowserRegistry.cpp.h b/Source/Linkage/Source/Client/Browser/BrowserRegistry.cpp.h new file mode 100644 index 000000000..db2ed5c2d --- /dev/null +++ b/Source/Linkage/Source/Client/Browser/BrowserRegistry.cpp.h @@ -0,0 +1,12 @@ +#pragma once + +#include "Client/Application/ApplicationWindow.h" +#include "Client/Application/Launcher.h" +#include "Client/Browser/WebBrowser.h" +#include "UI/Window/UIWindowMgr.h" +#include + +using BrowserTree = std::_Tree, std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +BrowserTree::_Find_lower_bound(HWND const&) const; +extern template std::pair::iterator, bool> std::map::insert>(std::pair&&); diff --git a/Source/Linkage/Source/Client/Session/Session.cpp.h b/Source/Linkage/Source/Client/Session/Session.cpp.h new file mode 100644 index 000000000..b25e57fba --- /dev/null +++ b/Source/Linkage/Source/Client/Session/Session.cpp.h @@ -0,0 +1,103 @@ +#pragma once + +#include "Client/Session/Session.h" +#include "Client/Mode/ModeMessage.h" +#include "Contents/Actors/ActorEnums.h" +#include "UI/Window/UIEnums.h" +#include "UI/Window/WindowId.h" +#include "Contents/CombatTypes.h" +#include "Utility/Cipher/EncryptedName.h" +#include "Client/Mode/CGameMode.h" +#include "Contents/Actors/RenderObject.h" +#include "Contents/Effects/Core/EffectActor.h" +#include "Contents/Actors/Resources/EquipmentResourceMgr.h" +#include "Contents/Guild/GuildInfo.h" +#include "Contents/Guild/GuildMgr.h" +#include "Client/Mode/ModeMgr.h" +#include "Contents/Jobs/JobId.h" +#include "Contents/Skills/SkillId.h" +#include "Contents/World/World.h" +#include "Contents/Actors/GameActor.h" +#include "Contents/Actors/Pc.h" +#include "Contents/Effects/Core/RagEffect.h" +#include "Contents/Skills/ClientSkills.h" +#include "UI/Login/UINewSelectCharWnd.h" +#include "Contents/Messenger/ClientMessenger.h" +#include "File/File.h" +#include "Network/Connection/Connection.h" +#include "Network/Packets/PacketId.h" +#include "Network/TextEncoding.h" +#include "Contents/Sound/SoundMgr.h" +#include "Contents/Jobs/JobInheritance.h" +#include "UI/Status/UIBasicInfoWnd.h" +#include "UI/Window/UIWindowMgr.h" +#include "UI/Window/UIWindow.h" +#include "Contents/Configuration/ServiceOptions.h" +#include "Contents/Configuration/ServiceConfiguration.h" +#include "Client/Application/ErrorDialog.h" +#include "Contents/Tables/MessageTable.h" +#include "Contents/Actors/PlayerNameDictionary.h" +#include "Utility/Text/FormatString.h" +#include "Utility/Cipher/XorBytes.h" +#include "Script/LuaScript.h" +#include "Contents/Map/MapPropertyMgr.h" +#include "Contents/Tables/ForbiddenWords.h" +#include "Contents/Items/ItemNaming.h" +#include "Contents/Skills/SkillInfo.h" +#include "Client/Application/ApplicationWindow.h" +#include "Contents/CashEmotion/CashEmotionMgr.h" +#include "Contents/Jobs/JobInheritance.h" +#include "Contents/Jobs/JobNames.h" +#include "Contents/Tables/SimpleStringMgr.h" +#include "File/CommonObject.h" +#include "Contents/World/WorldViewData.h" +#include "UI/Navigation/UIRoMapWnd.h" +#include "Contents/Achievement/AchievementMgr.h" +#include "Contents/Events/CheckAttendanceMgr.h" +#include "Contents/Items/BarterMarketItemMgr.h" +#include "Contents/Items/ChangeMaterialMgr.h" +#include "Contents/Items/ItemInfoMgr.h" +#include "Contents/RuneSystem/RuneSystem.h" +#include "Contents/Map/MapInfoMgr.h" +#include "Contents/Pet/PetEvolutionMgr.h" +#include "Contents/Map/PrivateAirplaneMgr.h" +#include "Contents/Events/SpecialPopupMgr.h" +#include "Resource/MSGSTRINGID.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +extern template int std::_Traits_compare>(const char*, std::size_t, const char*, std::size_t) noexcept; +using SessionShopTree = std::_Tree, std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +SessionShopTree::_Find_lower_bound(const int&) const; +using NameToIdTree = std::_Tree, std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +NameToIdTree::_Find_lower_bound(const std::string&) const; +using ShopEntryTree = std::_Tree, std::less, std::allocator>>, false>>; +extern template std::_Tree_find_result>, void*>*> +ShopEntryTree::_Find_lower_bound(const int&) const; +using ActorIdTree = std::_Tree, std::allocator, false>>; +extern template std::_Tree_find_result*> +ActorIdTree::_Find_lower_bound(const std::uint32_t&) const; +extern template void std::vector::resize(size_type, const std::string&); +extern template void std::vector::_Tidy() noexcept; +extern template std::string& std::string::operator=(std::string&&) noexcept; +using PendingActorNameTree = std::_Tree, std::allocator, false>>; +extern template std::_Tree_find_result*> +PendingActorNameTree::_Find_lower_bound(const std::uint32_t&) const; diff --git a/Source/Linkage/Source/Contents/Actors/ActorNameCache.cpp.h b/Source/Linkage/Source/Contents/Actors/ActorNameCache.cpp.h new file mode 100644 index 000000000..03ab317d1 --- /dev/null +++ b/Source/Linkage/Source/Contents/Actors/ActorNameCache.cpp.h @@ -0,0 +1,10 @@ +#pragma once + +#include "Contents/Actors/ActorNameCard.h" +#include + +using ActorNameCardTree = std::_Tree, + std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +ActorNameCardTree::_Find_lower_bound(const std::uint32_t&) const; diff --git a/Source/Linkage/Source/Contents/Actors/ActorNameDirectory.cpp.h b/Source/Linkage/Source/Contents/Actors/ActorNameDirectory.cpp.h new file mode 100644 index 000000000..35375b079 --- /dev/null +++ b/Source/Linkage/Source/Contents/Actors/ActorNameDirectory.cpp.h @@ -0,0 +1,11 @@ +#pragma once + +#include "Contents/Actors/ActorNameCard.h" +#include + +extern template bool std::_Traits_equal>(const char*, std::size_t, const char*, std::size_t) noexcept; +using ActorNameCardTree = std::_Tree, + std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +ActorNameCardTree::_Find_lower_bound(const std::uint32_t&) const; diff --git a/Source/Linkage/Source/Contents/Actors/ActorNameRequests.cpp.h b/Source/Linkage/Source/Contents/Actors/ActorNameRequests.cpp.h new file mode 100644 index 000000000..1c328d479 --- /dev/null +++ b/Source/Linkage/Source/Contents/Actors/ActorNameRequests.cpp.h @@ -0,0 +1,15 @@ +#pragma once + +#include "Contents/Actors/ActorNameCard.h" +#include "Network/Connection/Connection.h" +#include "Network/Packets/PacketId.h" +#include +#include +#include +#include + +using ActorNameCardTree = std::_Tree, + std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +ActorNameCardTree::_Find_lower_bound(const std::uint32_t&) const; diff --git a/Source/Linkage/Source/Contents/Actors/RenderObject.cpp.h b/Source/Linkage/Source/Contents/Actors/RenderObject.cpp.h new file mode 100644 index 000000000..01c72d0a8 --- /dev/null +++ b/Source/Linkage/Source/Contents/Actors/RenderObject.cpp.h @@ -0,0 +1,84 @@ +#pragma once + +#include "Contents/Actors/Npc.h" +#include "Client/Mode/ModeMessage.h" +#include "Contents/Actors/ActorEnums.h" +#include "Contents/Actors/ActorEnums.h" +#include "Contents/CombatTypes.h" +#include "Contents/Skills/SkillId.h" +#include "Contents/Actors/GrannyGameActor.h" +#include "Contents/Actors/RenderObject.h" +#include "Contents/Actors/ActorPickNode.h" +#include "Contents/Effects/Core/MsgEffect.h" +#include "Client/Mode/ModeMgr.h" +#include "Client/Mode/CGameMode.h" +#include "Client/Session/Session.h" +#include "Client/Replay/Replay.h" +#include "Contents/Camera/Camera.h" +#include "Contents/Actors/ActorStateFlags.h" +#include "Contents/Actors/CharacterRender.h" +#include "Render/DX9/RendererDX9.h" +#include "Contents/Actors/GameActor.h" +#include "Contents/Actors/GroundScope.h" +#include "Contents/Actors/Pc.h" +#include "Contents/Actors/EffectActors.h" +#include "Contents/Configuration/ServiceOptions.h" +#include "Contents/Effects/Core/Effect.h" +#include "Contents/Effects/Core/EffectLists.h" +#include "Contents/Effects/Skills/EnergyOrbEffect.h" +#include "Contents/Effects/Core/RagEffect.h" +#include "Contents/Effects/Skills/TetraBallEffect.h" +#include "Contents/Guild/GuildMgr.h" +#include "Contents/Map/MapSkyMgr.h" +#include "Contents/Tables/MessageTable.h" +#include "Contents/Jobs/JobId.h" +#include "Contents/Jobs/JobInheritance.h" +#include "Contents/Messenger/ClientMessenger.h" +#include "Contents/Skills/ClientSkills.h" +#include "Contents/Skills/SkillInfo.h" +#include "Contents/Sound/SoundMgr.h" +#include "Contents/World/World.h" +#include "Contents/Effects/Core/EffectTypes.h" +#include "Contents/Actors/Resources/EquipmentResourceMgr.h" +#include "Contents/World/WorldProximity.h" +#include "Network/Connection/Connection.h" +#include "Network/Packets/PacketLengths.h" +#include "UI/Window/UIWindowMgr.h" +#include "Render/Primitives/LightmappedPrimitive.h" +#include "Render/Primitives/RenderPrimitive.h" +#include "Render/Renderer.h" +#include "Render/Primitives/SpriteQuad.h" +#include "Render/Primitives/TextureQuad.h" +#include "Render/Textures/Texture.h" +#include "Render/Textures/TextureCache.h" +#include "Resource/Models/GrannyModelResource.h" +#include "Resource/Bitmap/EmblemResource.h" +#include "Resource/ResourceMgr.h" +#include "Resource/Sprites/ActionResource.h" +#include "Resource/Sprites/SpriteResource.h" +#include "Resource/World/TerrainResource.h" +#include "Script/LuaScript.h" +#include "Utility/Math/AffineMatrix.h" +#include "Utility/Cipher/XorBytes.h" +#include "Utility/Math/ScalarConversion.h" +#include "Contents/Monster/ChampionMonsterMgr.h" +#include "Contents/Effects/Primitives/EffectPrim.h" +#include "Contents/Ground/TerrainHeight.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "Contents/Guild/GuildInfo.h" +#include "Utility/Cipher/LocalEncryptedName.h" +#include "Utility/Cipher/CryptName.h" + +using InstantValueTree = std::_Tree, std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +InstantValueTree::_Find_lower_bound(const int&) const; +extern template void std::list::push_back(CRenderObject*&&); diff --git a/Source/Linkage/Source/Contents/AdventureGuide/AdventureGuideMgr.cpp.h b/Source/Linkage/Source/Contents/AdventureGuide/AdventureGuideMgr.cpp.h new file mode 100644 index 000000000..6d6e68cbf --- /dev/null +++ b/Source/Linkage/Source/Contents/AdventureGuide/AdventureGuideMgr.cpp.h @@ -0,0 +1,14 @@ +#pragma once + +#include "Contents/AdventureGuide/AdventureGuideMgr.h" +#include "Client/Session/Session.h" +#include "Contents/Items/JobCodeForItem.h" +#include "Script/LuaScript.h" +#include "Utility/Text/FormatString.h" +#include +#include +#include +#include +#include + +extern template bool std::string_view::_Equal(std::string_view) const noexcept; diff --git a/Source/Linkage/Source/Contents/Async/AsyncWorkRecycleObjectPoolMgr.cpp.h b/Source/Linkage/Source/Contents/Async/AsyncWorkRecycleObjectPoolMgr.cpp.h new file mode 100644 index 000000000..b71f929d9 --- /dev/null +++ b/Source/Linkage/Source/Contents/Async/AsyncWorkRecycleObjectPoolMgr.cpp.h @@ -0,0 +1,33 @@ +#pragma once + +#include "Contents/UserData/AccountLinkedUserDataLoadAsyncWork.h" +#include "Contents/UserData/AccountLinkedUserDataSaveAsyncWork.h" +#include "Contents/Async/AsyncWorkRecycleObjectPoolMgr.h" +#include "Contents/Party/ChangePartyMasterAsyncWork.h" +#include "Contents/UserData/CharacterLinkedUserDataLoadAsyncWork.h" +#include "Contents/UserData/CharacterLinkedUserDataSaveAsyncWork.h" +#include "Contents/Emblems/EmblemDataDownloadAsyncWork.h" +#include "Contents/Emblems/EmblemDataUploadAsyncWork.h" +#include "Contents/Party/LoadMyPartyAsyncWork.h" +#include "Contents/Party/LoadPartyInfoAsyncWork.h" +#include "Contents/Party/LoadPartyListAsyncWork.h" +#include "Contents/Store/MCStoreInfoBackupAsyncWork.h" +#include "Contents/Party/RegisterPartyAsyncWork.h" +#include "Contents/Party/StopRecruitingAsyncWork.h" +#include +#include + +extern template void std::deque::push_back(CAccountLinkedUserDataLoadAsyncWork*&&); +extern template void std::deque::push_back(CAccountLinkedUserDataSaveAsyncWork*&&); +extern template void std::deque::push_back(CChangePartyMasterAsyncWork*&&); +extern template void std::deque::push_back(CCharacterLinkedUserDataLoadAsyncWork*&&); +extern template void std::deque::push_back(CCharacterLinkedUserDataSaveAsyncWork*&&); +extern template void std::deque::push_back(CEmblemDataDownloadAsyncWork*&&); +extern template void std::deque::push_back(CEmblemDataUploadAsyncWork*&&); +extern template void std::deque::push_back(CLoadMyPartyAsyncWork*&&); +extern template void std::deque::push_back(CLoadPartyInfoAsyncWork*&&); +extern template void std::deque::push_back(CLoadPartyListAsyncWork*&&); +extern template void std::deque::push_back(CMCStoreInfoBackupSaveAsyncWork*&&); +extern template void std::deque::push_back(CMCStoreInfoBackupLoadAsyncWork*&&); +extern template void std::deque::push_back(CRegisterPartyAsyncWork*&&); +extern template void std::deque::push_back(CStopRecruitingAsyncWork*&&); diff --git a/Source/Linkage/Source/Contents/Items/ClientItemLists.cpp.h b/Source/Linkage/Source/Contents/Items/ClientItemLists.cpp.h new file mode 100644 index 000000000..142f34f6e --- /dev/null +++ b/Source/Linkage/Source/Contents/Items/ClientItemLists.cpp.h @@ -0,0 +1,44 @@ +#pragma once + +#include "Network/Packets/NoticeEnums.h" +#include "UI/Window/WindowId.h" +#include "UI/Window/UIEnums.h" +#include "Client/Mode/ModeMessage.h" +#include "Contents/Actors/ActorEnums.h" +#include "Client/Mode/CGameMode.h" +#include "Contents/CombatTypes.h" +#include "Contents/Items/InventoryType.h" +#include "Client/Mode/ModeMgr.h" +#include "Client/Replay/Replay.h" +#include "Client/Session/Session.h" +#include "Contents/Actors/Pc.h" +#include "Contents/ClientState.h" +#include "Contents/Effects/Core/EffectActor.h" +#include "Contents/Effects/Core/RagEffect.h" +#include "Contents/Guild/GuildInfo.h" +#include "Contents/Skills/ClientSkills.h" +#include "Contents/Items/ItemInfo.h" +#include "Contents/Tables/MessageTable.h" +#include "Contents/Messenger/ClientMessenger.h" +#include "Contents/Messenger/MessengerMember.h" +#include "Contents/Pet/PetEvolutionMgr.h" +#include "Contents/World/World.h" +#include "UI/Items/UIEquipWnd.h" +#include "UI/Window/UIWindow.h" +#include "UI/Window/UIWindowMgr.h" +#include "Utility/Text/FormatString.h" +#include "Resource/MSGSTRINGID.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +extern template std::list::iterator std::list::erase(std::list::const_iterator) noexcept; +extern template void std::_List_node::_Free_non_head(std::allocator>&, std::_List_node*) noexcept; diff --git a/Source/Linkage/Source/Contents/Messenger/ClientMessenger.cpp.h b/Source/Linkage/Source/Contents/Messenger/ClientMessenger.cpp.h new file mode 100644 index 000000000..fe9ae621a --- /dev/null +++ b/Source/Linkage/Source/Contents/Messenger/ClientMessenger.cpp.h @@ -0,0 +1,74 @@ +#pragma once + +#include "Network/Packets/NoticeEnums.h" +#include "UI/Window/UIEnums.h" +#include "UI/Window/WindowId.h" +#include "Contents/Items/ItemType.h" +#include "Contents/CombatTypes.h" +#include "Contents/Messenger/ClientMessenger.h" +#include "Utility/Cipher/EncryptedName.h" +#include "Contents/Effects/Core/EffectActor.h" +#include "Client/Mode/ModeMgr.h" +#include "Client/Mode/CGameMode.h" +#include "Client/Session/Session.h" +#include "Contents/Actors/ActorStateFlags.h" +#include "Contents/Actors/GameActor.h" +#include "Contents/ClientState.h" +#include "Contents/Items/ItemInfo.h" +#include "Contents/Jobs/JobId.h" +#include "Script/LuaInstance.h" +#include "UI/Window/UIWindow.h" +#include "UI/Window/UIWindowMgr.h" +#include "UI/Buttons/UITextButton.h" +#include "Resource/World/TerrainResource.h" +#include "Contents/Actors/Pc.h" +#include "Client/Application/ErrorDialog.h" +#include "UI/CashShop/UIMileageWnd.h" +#include "Network/TextEncoding.h" +#include "Utility/Text/StringUtil.h" +#include "Contents/World/World.h" +#include "Contents/RuneSystem/RuneSystem.h" +#include "Contents/Skills/SkillInfo.h" +#include "Contents/Tables/SimpleStringMgr.h" +#include "Contents/Configuration/GameSettingsMgr.h" +#include "Contents/CashEmotion/CashEmotionMgr.h" +#include "Contents/Configuration/ServiceConfiguration.h" +#include "Contents/Configuration/ServiceOptions.h" +#include "Contents/Items/ItemInfoMgr.h" +#include "Contents/Map/MapInfoMgr.h" +#include "Contents/Events/SpecialPopupMgr.h" +#include "Contents/Tables/TipBoxTitles.h" +#include "Render/Text/EmbedFont.h" +#include "Utility/Cipher/XorBytes.h" +#include "Utility/Cipher/CryptName.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +extern "C" { +#include +} + +extern template int std::_Traits_compare>(const char*, std::size_t, const char*, std::size_t) noexcept; +using SessionShopTree = std::_Tree, std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +SessionShopTree::_Find_lower_bound(const int&) const; +extern template void std::list::clear() noexcept; +using NameToIdTree = std::_Tree, std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +NameToIdTree::_Find_lower_bound(const std::string&) const; diff --git a/Source/Linkage/Source/Contents/Skills/PlayerSkillBundle.cpp.h b/Source/Linkage/Source/Contents/Skills/PlayerSkillBundle.cpp.h new file mode 100644 index 000000000..f6c2c8bac --- /dev/null +++ b/Source/Linkage/Source/Contents/Skills/PlayerSkillBundle.cpp.h @@ -0,0 +1,14 @@ +#pragma once + +#include "Contents/Skills/PlayerSkillBundle.h" +#include "UI/Window/UIEnums.h" +#include "UI/Window/WindowId.h" +#include "Contents/Skills/SkillId.h" +#include "Client/Session/Session.h" +#include "UI/Window/UIWindow.h" +#include "UI/Window/WindowManagerWindows.h" +#include + +using SkillGroupTreeValue = std::_Tree_val>>>; +extern template std::_Tree_unchecked_const_iterator& +std::_Tree_unchecked_const_iterator::operator++() noexcept; diff --git a/Source/Linkage/Source/UI/AdventureGuide/UIAdventureGuide.cpp.h b/Source/Linkage/Source/UI/AdventureGuide/UIAdventureGuide.cpp.h new file mode 100644 index 000000000..b08d37dd0 --- /dev/null +++ b/Source/Linkage/Source/UI/AdventureGuide/UIAdventureGuide.cpp.h @@ -0,0 +1,43 @@ +#pragma once + +#include "Client/Session/Session.h" +#include "UI/Window/UIEnums.h" +#include "UI/Window/WindowId.h" +#include "Contents/AdventureGuide/AdventureGuideMgr.h" +#include "Contents/Items/ItemInfo.h" +#include "Contents/Tables/MessageTable.h" +#include "Contents/Navigation/NavigationManager.h" +#include "Contents/Quest/RenewQuestMgr.h" +#include "Contents/Tables/TipBoxTitles.h" +#include "Resource/ResourceMgr.h" +#include "Resource/Sprites/ActionResource.h" +#include "Resource/Sprites/SpriteResource.h" +#include "UI/AdventureGuide/UIAdventureGuide.h" +#include "UI/Lists/UIListBoxTemplate.h" +#include "Render/Renderer.h" +#include "UI/Lists/UIVScrollBar.h" +#include "UI/Text/UIStaticTextControl.h" +#include "UI/Text/UITextViewerControl.h" +#include "UI/Window/UIWindowMgr.h" +#include "Utility/Cipher/XorBytes.h" +#include "Utility/Text/FormatString.h" +#include "Utility/Text/StringUtil.h" +#include "Contents/Items/ItemDescription.h" +#include "UI/Window/UIRegisterMgr.h" +#include "Resource/MSGSTRINGID.h" +#include "Utility/Cipher/LocalEncryptedName.h" +#include "Utility/Cipher/CryptName.h" +#include +#include +#include +#include +#include + +using StatusRequestTree = std::_Tree, std::allocator, false>>; +extern template std::_Tree_find_result*> +StatusRequestTree::_Find_lower_bound(const unsigned int&) const; +extern template AdventureGuide::CUIQuestInfo** std::allocator::allocate(std::size_t); +extern template void std::_List_node::_Free_non_head( + std::allocator>&, std::_List_node*) noexcept; +extern template void std::_List_node::_Free_non_head( + std::allocator>&, std::_List_node*) noexcept; diff --git a/Source/Linkage/Source/UI/Quest/UIRenewQuestUI.cpp.h b/Source/Linkage/Source/UI/Quest/UIRenewQuestUI.cpp.h new file mode 100644 index 000000000..f1ed6c77d --- /dev/null +++ b/Source/Linkage/Source/UI/Quest/UIRenewQuestUI.cpp.h @@ -0,0 +1,42 @@ +#pragma once + +#include "UI/Window/WindowId.h" +#include "UI/Window/UIEnums.h" +#include "UI/Quest/UIRenewQuestUI.h" +#include "UI/Window/UIEnums.h" +#include "Utility/Cipher/EncryptedName.h" +#include "Client/Replay/Replay.h" +#include "Contents/Tables/MessageTable.h" +#include "Contents/Quest/RenewQuestMgr.h" +#include "Network/Connection/Connection.h" +#include "Network/Packets/PacketLengths.h" +#include "Network/TextEncoding.h" +#include "Render/Renderer.h" +#include "Resource/ResourceMgr.h" +#include "Resource/Bitmap/TextureNames.h" +#include "UI/Buttons/UIRadioButton.h" +#include "UI/Edit/UIEditBoxEx.h" +#include "UI/Quest/UIOngoingQuestInfo.h" +#include "UI/Quest/UIRecommendedQuestInfo.h" +#include "UI/Text/UIStaticTextControl.h" +#include "UI/Window/UIWindowMgr.h" +#include "Utility/Cipher/XorBytes.h" +#include "UI/Window/UIRegisterMgr.h" +#include "Utility/Cipher/CryptName.h" +#include "Resource/MSGSTRINGID.h" +#include "Network/Packets/PacketId.h" +#include +#include +#include +#include +#include + +using RenewQuestOngoingTree = std::_Tree, std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +RenewQuestOngoingTree::_Find_lower_bound(const unsigned int&) const; +using RenewQuestRecommendedTree = std::_Tree, std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +RenewQuestRecommendedTree::_Find_lower_bound(const unsigned int&) const; +extern template std::function& std::function::operator=(const std::function&); diff --git a/Source/Linkage/Source/UI/Quest/UIRenewQuestWnd.cpp.h b/Source/Linkage/Source/UI/Quest/UIRenewQuestWnd.cpp.h new file mode 100644 index 000000000..66f5a921c --- /dev/null +++ b/Source/Linkage/Source/UI/Quest/UIRenewQuestWnd.cpp.h @@ -0,0 +1,47 @@ +#pragma once + +#include "UI/Window/UIEnums.h" +#include "UI/Window/WindowId.h" +#include "Client/Mode/CMode.h" +#include "Client/Mode/ModeMgr.h" +#include "Render/DeviceContext/DCSurface.h" +#include "UI/Quest/UIRenewQuestWnd.h" +#include "Client/Application/ApplicationWindow.h" +#include "Client/Replay/Replay.h" +#include "Contents/Configuration/ServiceConfiguration.h" +#include "Contents/Items/ItemDescription.h" +#include "Contents/Tables/MessageTable.h" +#include "Contents/Navigation/NavigationManager.h" +#include "Contents/Quest/RenewQuestMgr.h" +#include "Network/Connection/Connection.h" +#include "Network/Packets/PacketLengths.h" +#include "Render/DeviceContext/DeviceContext.h" +#include "Render/Renderer.h" +#include "Render/Text/TextContext.h" +#include "Render/Textures/SpriteAtlas.h" +#include "Render/Textures/SpritePixels.h" +#include "Render/Textures/Texture.h" +#include "Render/Textures/TextureCache.h" +#include "Resource/Bitmap/BitmapResource.h" +#include "Resource/ResourceMgr.h" +#include "Resource/Sprites/ActionResource.h" +#include "Resource/Sprites/SpriteResource.h" +#include "Resource/Bitmap/TextureNames.h" +#include "UI/Buttons/UIBitmapButton.h" +#include "UI/Buttons/UIButton.h" +#include "UI/Buttons/UICheckBox.h" +#include "UI/Text/UIStaticText.h" +#include "UI/Text/UITagTextViewer.h" +#include "UI/Buttons/UIStaticBitmap.h" +#include "UI/Login/UINewSelectCharWnd.h" +#include "UI/Window/UITab.h" +#include "UI/Window/UIWindowMgr.h" +#include "Utility/Text/FormatString.h" +#include "Resource/MSGSTRINGID.h" +#include "Network/Packets/PacketId.h" +#include +#include + +extern template std::string::basic_string(std::_String_constructor_concat_tag, const std::string&, const char*, std::size_t, const char*, std::size_t); +extern template std::_Tree_unchecked_const_iterator>>, std::_Iterator_base0>& +std::_Tree_unchecked_const_iterator>>, std::_Iterator_base0>::operator++() noexcept; diff --git a/Source/Linkage/Source/UI/Window/UIWindowMgr.cpp.h b/Source/Linkage/Source/UI/Window/UIWindowMgr.cpp.h new file mode 100644 index 000000000..3f76e84a5 --- /dev/null +++ b/Source/Linkage/Source/UI/Window/UIWindowMgr.cpp.h @@ -0,0 +1,63 @@ +#pragma once + +#include "Contents/Actors/ActorEnums.h" +#include "Client/Mode/ModeMessage.h" +#include "UI/Window/UIEnums.h" +#include "Contents/Hotkeys/InterfaceHotkey.h" +#include "UI/Window/WindowId.h" +#include "UI/Window/WindowPolicy.h" +#include "Render/Renderer.h" +#include "UI/Chat/UISubChatHisWnd.h" +#include "Client/Browser/WebBrowser.h" +#include "Client/Input/Mouse.h" +#include "Client/Mode/ModeMgr.h" +#include "Client/Replay/Replay.h" +#include "Client/Session/Session.h" +#include "Contents/Configuration/ServiceConfiguration.h" +#include "Contents/Configuration/ServiceOptions.h" +#include "Network/Connection/Connection.h" +#include "Network/Packets/PacketId.h" +#include "Network/Packets/PacketLengths.h" +#include "Render/Primitives/TextureQuad.h" +#include "Render/Textures/Texture.h" +#include "Render/Textures/TextureCache.h" +#include "UI/Navigation/UIMemorialDunWnd.h" +#include "UI/Layout/SnapMgr.h" +#include "UI/Lists/UIDropDownBox.h" +#include "UI/Chat/UINewChatWnd.h" +#include "UI/Edit/UIEditCtrl.h" +#include "UI/Lists/UITabControl.h" +#include "UI/Party/MiniPartyWndAreaMgr.h" +#include "UI/Window/InputFocus.h" +#include "UI/Navigation/UINavigationWnd.h" +#include "UI/Navigation/UIRoMapWnd.h" +#include "UI/Navigation/UINavigationV4Wnd.h" +#include "Client/Mode/CLoginMode.h" +#include "Contents/Tables/MessageTable.h" +#include "Contents/Navigation/NavigationManager.h" +#include "Contents/World/WorldViewData.h" +#include "Resource/ResourceMgr.h" +#include "File/ShortcutFilename.h" +#include "Contents/Sound/SoundMgr.h" +#include "Contents/Skills/AutomaticSkills.h" +#include "UI/GameSettings/UIHotKeyWnd.h" +#include "UI/Window/UIWindow.h" +#include "UI/Window/UIWindowMgr.h" +#include "Client/Mode/CMode.h" +#include "Client/Mode/CGameMode.h" +#include "Contents/Actors/Pc.h" +#include "Contents/World/World.h" +#include "Contents/Events/RouletteMgr.h" +#include "UI/Items/UIItemStoreWnd.h" +#include "UI/Items/UIItemWnd.h" +#include "UI/Lists/UIComboBox.h" +#include "UI/Login/UINewSelectCharWnd.h" +#include "UI/Events/UIRoulletteWnd.h" +#include "Render/DeviceContext/DCSurface.h" + +extern template int std::_Traits_compare>(const char*, std::size_t, const char*, std::size_t) noexcept; +using SnapRectangleTree = std::_Tree, std::allocator>, false>>; +extern template std::_Tree_find_result, void*>*> +SnapRectangleTree::_Find_lower_bound(UIWindow* const&) const; +extern template void std::vector::push_back(std::string&&); +extern template std::string std::operator+(const std::string&, const char* const); diff --git a/Source/Linkage/Source/UI/Window/WindowMgrState.cpp.h b/Source/Linkage/Source/UI/Window/WindowMgrState.cpp.h new file mode 100644 index 000000000..b6e3611f7 --- /dev/null +++ b/Source/Linkage/Source/UI/Window/WindowMgrState.cpp.h @@ -0,0 +1,47 @@ +#pragma once + +#include "Client/Mode/ModeMessage.h" +#include "UI/Window/UIEnums.h" +#include "UI/Window/WindowId.h" +#include "Client/Mode/CGameMode.h" +#include "Client/Mode/CLoginMode.h" +#include "Client/Mode/ModeDragState.h" +#include "Client/Mode/ModeMgr.h" +#include "Client/Application/Registry.h" +#include "Client/Replay/Replay.h" +#include "Client/Session/Session.h" +#include "Contents/Actors/Pc.h" +#include "Contents/Configuration/ServiceConfiguration.h" +#include "Contents/Messenger/ClientMessenger.h" +#include "Contents/Messenger/MessengerMember.h" +#include "Contents/Navigation/NavigationManager.h" +#include "Contents/UserData/NormalItemSlots.h" +#include "Contents/World/World.h" +#include "Render/DeviceContext/DCSurface.h" +#include "Render/Renderer.h" +#include "Render/Textures/Surface.h" +#include "Resource/Bitmap/BitmapResource.h" +#include "UI/Login/UIEmailAddressWnd.h" +#include "UI/Navigation/UIMemorialDunWnd.h" +#include "UI/Edit/UIEditCtrl.h" +#include "UI/GameSettings/GameSettingsUI.h" +#include "UI/Navigation/UINavigationV4Wnd.h" +#include "UI/Party/UIMiniPartyWnd.h" +#include "UI/Party/MiniPartyWndAreaMgr.h" +#include "UI/Dialogs/UIMessageBox.h" +#include "UI/Navigation/UINavigationWnd.h" +#include "UI/Login/UINewSelectCharWnd.h" +#include "UI/Events/UIRoulletteWnd.h" +#include "UI/Window/UIWindow.h" +#include "UI/Window/UIWindowMgr.h" +#include +#include +#include +#include +#include +#include +#include + +extern template std::_Tree_unchecked_const_iterator>>, std::_Iterator_base0>& +std::_Tree_unchecked_const_iterator>>, std::_Iterator_base0>::operator++() noexcept; +extern template std::_List_node* std::list::_Emplace(std::_List_node* const, UIWindow* const&); diff --git a/Source/UI/AdventureGuide/UIAdventureGuide.cpp b/Source/UI/AdventureGuide/UIAdventureGuide.cpp index 7ab53b2ef..779f4382c 100644 --- a/Source/UI/AdventureGuide/UIAdventureGuide.cpp +++ b/Source/UI/AdventureGuide/UIAdventureGuide.cpp @@ -31,15 +31,6 @@ #include #include -using StatusRequestTree = std::_Tree, std::allocator, false>>; -extern template std::_Tree_find_result*> -StatusRequestTree::_Find_lower_bound(const unsigned int&) const; -extern template AdventureGuide::CUIQuestInfo** std::allocator::allocate(std::size_t); -extern template void std::_List_node::_Free_non_head( - std::allocator>&, std::_List_node*) noexcept; -extern template void std::_List_node::_Free_non_head( - std::allocator>&, std::_List_node*) noexcept; - template void CUIListBoxEx::UpdateScrollBar(); template void CUIListBox::UpdateScrollBar(); template void CUIListBox::UpdateScrollBar(); diff --git a/Source/UI/Quest/UIRenewQuestUI.cpp b/Source/UI/Quest/UIRenewQuestUI.cpp index 2a113b887..84ac26ca7 100644 --- a/Source/UI/Quest/UIRenewQuestUI.cpp +++ b/Source/UI/Quest/UIRenewQuestUI.cpp @@ -30,22 +30,9 @@ #include #include -using RenewQuestOngoingTree = std::_Tree, std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -RenewQuestOngoingTree::_Find_lower_bound(const unsigned int&) const; - -using RenewQuestRecommendedTree = std::_Tree, std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -RenewQuestRecommendedTree::_Find_lower_bound(const unsigned int&) const; - -extern template std::function& std::function::operator=(const std::function&); - // GLOBAL: gl_25249 static bool s_recommendedTabFirstSelect = true; - // INLINED template const char* DecryptName(const char (&source)[Length]) { diff --git a/Source/UI/Quest/UIRenewQuestWnd.cpp b/Source/UI/Quest/UIRenewQuestWnd.cpp index b1b1cc8e7..415886cde 100644 --- a/Source/UI/Quest/UIRenewQuestWnd.cpp +++ b/Source/UI/Quest/UIRenewQuestWnd.cpp @@ -42,10 +42,6 @@ #include #include -#include "Utility/StdStringConcat.h" -extern template std::_Tree_unchecked_const_iterator>>, std::_Iterator_base0>& -std::_Tree_unchecked_const_iterator>>, std::_Iterator_base0>::operator++() noexcept; - #pragma pack(push, 1) struct PACKET_CZ_ACTIVE_QUEST { short packetType; diff --git a/Source/UI/Window/UIWindowMgr.cpp b/Source/UI/Window/UIWindowMgr.cpp index 5884df82f..b8e1243a1 100644 --- a/Source/UI/Window/UIWindowMgr.cpp +++ b/Source/UI/Window/UIWindowMgr.cpp @@ -52,7 +52,6 @@ #include "UI/Login/UINewSelectCharWnd.h" #include "UI/Events/UIRoulletteWnd.h" #include "Render/DeviceContext/DCSurface.h" -#include "Utility/StdStringCompare.h" #include #include #include @@ -252,11 +251,6 @@ #include "Resource/MSGSTRINGID.h" #include -using SnapRectangleTree = std::_Tree, std::allocator>, false>>; -extern template std::_Tree_find_result, void*>*> -SnapRectangleTree::_Find_lower_bound(UIWindow* const&) const; -extern template void std::vector::push_back(std::string&&); -extern template std::string std::operator+(const std::string&, const char* const); using BrowserTree = std::_Tree, std::allocator>, false>>; template std::_Tree_find_result, void*>*> BrowserTree::_Find_lower_bound(HWND const&) const; @@ -301,7 +295,6 @@ static_assert(sizeof(AddFriendPacket) == 26); static_assert(offsetof(AddFriendPacket, name) == 2); } - // GLOBAL: gl_24525 CMiniPartyWndAreaMgr* g_miniPartyWndAreaMgr = nullptr; @@ -311,8 +304,6 @@ UIWindowMgr g_windowMgr; // GLOBAL: gl_25159 bool g_windowToggleFlag; - - // GLOBAL: gl_24683 int g_windowCloseValue; @@ -655,7 +646,6 @@ UIWindow* UIWindowMgr::LookupWindow(int id) { } } - // OFFSET: 0x00AA1800 // FUNCTION: fn_17209 void UIWindowMgr::ResetWindows() { @@ -4207,7 +4197,6 @@ void UIWindowMgr::ShowWaitDBSaveWindow() { this->waitDBSaveWnd->Show(1); } - // OFFSET: 0x00AA35F0 // FUNCTION: fn_17221 bool UIWindowMgr::ProcessShortcutKey(int action) { diff --git a/Source/UI/Window/WindowMgrState.cpp b/Source/UI/Window/WindowMgrState.cpp index 3da690048..7280778aa 100644 --- a/Source/UI/Window/WindowMgrState.cpp +++ b/Source/UI/Window/WindowMgrState.cpp @@ -40,17 +40,12 @@ #include #include -extern template std::_Tree_unchecked_const_iterator>>, std::_Iterator_base0>& -std::_Tree_unchecked_const_iterator>>, std::_Iterator_base0>::operator++() noexcept; -#include "Utility/StdWindowListEmplace.h" - // GLOBAL: gl_24986 const char* g_uiRectInfoKeySuffix = "\\UIRectInfo"; // GLOBAL: gl_24987 const char* g_shortcutItemKeySuffix = "\\ShortcutItem"; - // OFFSET: 0x00A911E0 // FUNCTION: fn_17156 void UIWindowMgr::NotifyHoverWindow() {