summaryrefslogtreecommitdiff
path: root/indra/newview/llviewermedia.h
diff options
context:
space:
mode:
authorMonroe Linden <monroe@lindenlab.com>2009-12-08 18:17:32 -0800
committerMonroe Linden <monroe@lindenlab.com>2009-12-08 18:17:32 -0800
commitce18034e6544364e39aef0ac1a315b7e9e5770fa (patch)
tree54251d19e446716e598db3fa1239a91523c00380 /indra/newview/llviewermedia.h
parentb37fab7a5d5a6eedf8567a3f2704b36c98a2645d (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.h5
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 ;