diff options
author | Monroe Linden <monroe@lindenlab.com> | 2009-12-08 18:17:32 -0800 |
---|---|---|
committer | Monroe Linden <monroe@lindenlab.com> | 2009-12-08 18:17:32 -0800 |
commit | ce18034e6544364e39aef0ac1a315b7e9e5770fa (patch) | |
tree | 54251d19e446716e598db3fa1239a91523c00380 /indra/newview/llviewermedia.h | |
parent | b37fab7a5d5a6eedf8567a3f2704b36c98a2645d (diff) |
Performance improvements for the nearby media floater when lots of media is present.
Added LLViewerMediaImpl::mInNearbyMediaList for LLFloaterNearbyMedia::refreshList() to use to keep track of which elements it's seen -- this allows us to remove a linear search in an inner loop.
Added a map from texture ID to media impl pointer in LLViewerMedia/LLViewerMediaImpl. This allows LLViewerMedia::getMediaImplFromTextureID() to be a std::map lookup instead of a linear search.
In LLFloaterNearbyMedia, call sortByColumnIndex in postBuild instead of in addMediaItem(). The latter was causing some unnecessary re-sorting.
Hf: Enter commit message. Lines beginning with 'HG:' are removed.
Diffstat (limited to 'indra/newview/llviewermedia.h')
-rw-r--r-- | indra/newview/llviewermedia.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/indra/newview/llviewermedia.h b/indra/newview/llviewermedia.h index 713eb2710b..349a66867a 100644 --- a/indra/newview/llviewermedia.h +++ b/indra/newview/llviewermedia.h @@ -79,6 +79,8 @@ class LLViewerMedia typedef std::vector<LLViewerMediaImpl*> impl_list; + typedef std::map<LLUUID, LLViewerMediaImpl*> impl_id_map; + // Special case early init for just web browser component // so we can show login screen. See .cpp file for details. JC @@ -287,6 +289,8 @@ public: LLPluginClassMedia::EPriority getPriority() { return mPriority; }; void setLowPrioritySizeLimit(int size); + + void setTextureID(LLUUID id = LLUUID::null); typedef enum { @@ -348,6 +352,7 @@ public: LLMimeDiscoveryResponder *mMimeTypeProbe; bool mMediaAutoPlay; std::string mMediaEntryURL; + bool mInNearbyMediaList; // used by LLFloaterNearbyMedia::refreshList() for performance reasons private: BOOL mIsUpdated ; |