From 2fc942a75c91ec023bb83874d3c86c7ce8da1d65 Mon Sep 17 00:00:00 2001 From: Ansariel Date: Mon, 4 Dec 2023 13:42:09 +0100 Subject: [PATCH] Replace (at least) our use of boost::unordered_map with std::unordered_map --- indra/llappearance/llavatarappearance.h | 2 +- indra/llcharacter/lljoint.cpp | 20 ++++++++------------ indra/llcharacter/lljoint.h | 3 +-- indra/newview/llpanelgroupgeneral.h | 4 ++-- 4 files changed, 12 insertions(+), 17 deletions(-) diff --git a/indra/llappearance/llavatarappearance.h b/indra/llappearance/llavatarappearance.h index 3e3bb24ded..5ac37706e2 100644 --- a/indra/llappearance/llavatarappearance.h +++ b/indra/llappearance/llavatarappearance.h @@ -142,7 +142,7 @@ public: // This map gets queried a huge amount of time. // typedef std::map joint_map_t; - typedef boost::unordered_map< U32, LLJoint*> joint_map_t; + typedef std::unordered_map joint_map_t; // joint_map_t mJointMap; diff --git a/indra/llcharacter/lljoint.cpp b/indra/llcharacter/lljoint.cpp index 245e2b93ce..676042bcc8 100644 --- a/indra/llcharacter/lljoint.cpp +++ b/indra/llcharacter/lljoint.cpp @@ -36,24 +36,20 @@ #include // Query by JointKey rather than just a string, the key can be a U32 index for faster lookup -#include +#include -boost::unordered_map< std::string, U32 > mpStringToKeys; +std::unordered_map mpStringToKeys; -JointKey JointKey::construct( std::string aName ) +JointKey JointKey::construct(const std::string& aName) { - boost::unordered_map< std::string, U32 >::iterator itr = mpStringToKeys.find( aName ); - - if( mpStringToKeys.end() == itr ) + if (const auto itr = mpStringToKeys.find(aName); itr != mpStringToKeys.end()) { - U32 size = mpStringToKeys.size() + 1; - JointKey key{ aName, size }; - mpStringToKeys[ aName ] = size; - return key; + return { aName, itr->second }; } - return JointKey{ aName, itr->second }; - + U32 size = mpStringToKeys.size() + 1; + mpStringToKeys.try_emplace(aName, size); + return { aName, size }; } // diff --git a/indra/llcharacter/lljoint.h b/indra/llcharacter/lljoint.h index 8607e72d74..2b6d217a53 100644 --- a/indra/llcharacter/lljoint.h +++ b/indra/llcharacter/lljoint.h @@ -46,7 +46,7 @@ struct JointKey std::string mName; U32 mKey; - static JointKey construct( std::string aName ); + static JointKey construct(const std::string& aName); }; inline bool operator==(JointKey const &aLHS, JointKey const &aRHS) @@ -63,7 +63,6 @@ inline std::ostream& operator<<(std::ostream &aLHS, JointKey const &aRHS) { return aLHS << aRHS.mName << " (" << aRHS.mKey << ")"; } - // const S32 LL_CHARACTER_MAX_JOINTS_PER_MESH = 15; diff --git a/indra/newview/llpanelgroupgeneral.h b/indra/newview/llpanelgroupgeneral.h index 5764626468..c5852617f7 100644 --- a/indra/newview/llpanelgroupgeneral.h +++ b/indra/newview/llpanelgroupgeneral.h @@ -29,7 +29,7 @@ #include "llpanelgroup.h" -#include +#include class LLLineEditor; class LLTextBox; @@ -127,7 +127,7 @@ private: S32 sortMembersList(S32,const LLScrollListItem*,const LLScrollListItem*); LLGroupMgrGroupData::member_list_t::iterator mMemberProgress; - typedef boost::unordered_map avatar_name_cache_connection_map_t; + typedef std::unordered_map avatar_name_cache_connection_map_t; avatar_name_cache_connection_map_t mAvatarNameCacheConnections; BOOL mPendingMemberUpdate;