summaryrefslogtreecommitdiff
path: root/indra/newview/llviewertexture.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llviewertexture.h')
-rw-r--r--[-rwxr-xr-x]indra/newview/llviewertexture.h24
1 files changed, 17 insertions, 7 deletions
diff --git a/indra/newview/llviewertexture.h b/indra/newview/llviewertexture.h
index aed7e94945..8017d82604 100755..100644
--- a/indra/newview/llviewertexture.h
+++ b/indra/newview/llviewertexture.h
@@ -58,11 +58,12 @@ class LLVFile;
class LLMessageSystem;
class LLViewerMediaImpl ;
class LLVOVolume ;
+struct LLTextureKey;
class LLLoadedCallbackEntry
{
public:
- typedef std::set< LLUUID > source_callback_list_t;
+ typedef std::set< LLTextureKey > source_callback_list_t;
public:
LLLoadedCallbackEntry(loaded_callback_func cb,
@@ -132,6 +133,8 @@ public:
/*virtual*/ const LLUUID& getID() const { return mID; }
void setBoostLevel(S32 level);
S32 getBoostLevel() { return mBoostLevel; }
+ void setTextureListType(S32 tex_type) { mTextureListType = tex_type; }
+ S32 getTextureListType() { return mTextureListType; }
void addTextureStats(F32 virtual_size, BOOL needs_gltexture = TRUE) const;
void resetTextureStats();
@@ -185,6 +188,8 @@ private:
static bool isMemoryForTextureLow() ;
protected:
LLUUID mID;
+ S32 mTextureListType; // along with mID identifies where to search for this texture in TextureList
+
F32 mSelectedTime; // time texture was last selected
mutable F32 mMaxVirtualSize; // The largest virtual size of the image, in pixels - how much data to we need?
mutable S32 mMaxVirtualSizeResetCounter ;
@@ -266,7 +271,7 @@ class LLViewerFetchedTexture : public LLViewerTexture
protected:
/*virtual*/ ~LLViewerFetchedTexture();
public:
- LLViewerFetchedTexture(const LLUUID& id, FTType f_type, const LLHost& host = LLHost::invalid, BOOL usemipmaps = TRUE);
+ LLViewerFetchedTexture(const LLUUID& id, FTType f_type, const LLHost& host = LLHost(), BOOL usemipmaps = TRUE);
LLViewerFetchedTexture(const LLImageRaw* raw, FTType f_type, BOOL usemipmaps);
LLViewerFetchedTexture(const std::string& url, FTType f_type, const LLUUID& id, BOOL usemipmaps = TRUE);
@@ -341,7 +346,10 @@ public:
bool updateFetch();
bool setDebugFetching(S32 debug_level);
- bool isInDebug() {return mInDebug;}
+ bool isInDebug() const { return mInDebug; }
+
+ void setUnremovable(BOOL value) { mUnremovable = value; }
+ bool isUnremovable() const { return mUnremovable; }
void clearFetchedResults(); //clear all fetched results, for debug use.
@@ -430,6 +438,7 @@ private:
private:
BOOL mFullyLoaded;
BOOL mInDebug;
+ BOOL mUnremovable;
BOOL mInFastCacheList;
BOOL mForceCallbackFetch;
@@ -498,7 +507,7 @@ protected:
S32 mCachedRawDiscardLevel;
BOOL mCachedRawImageReady; //the rez of the mCachedRawImage reaches the upper limit.
- LLHost mTargetHost; // if LLHost::invalid, just request from agent's simulator
+ LLHost mTargetHost; // if invalid, just request from agent's simulator
// Timers
LLFrameTimer mLastPacketTimer; // Time since last packet.
@@ -528,7 +537,7 @@ protected:
/*virtual*/ ~LLViewerLODTexture(){}
public:
- LLViewerLODTexture(const LLUUID& id, FTType f_type, const LLHost& host = LLHost::invalid, BOOL usemipmaps = TRUE);
+ LLViewerLODTexture(const LLUUID& id, FTType f_type, const LLHost& host = LLHost(), BOOL usemipmaps = TRUE);
LLViewerLODTexture(const std::string& url, FTType f_type, const LLUUID& id, BOOL usemipmaps = TRUE);
/*virtual*/ S8 getType() const;
@@ -626,8 +635,9 @@ public:
//
//"find-texture" just check if the texture exists, if yes, return it, otherwise return null.
//
- static LLViewerTexture* findTexture(const LLUUID& id) ;
- static LLViewerFetchedTexture* findFetchedTexture(const LLUUID& id) ;
+ static void findFetchedTextures(const LLUUID& id, std::vector<LLViewerFetchedTexture*> &output);
+ static void findTextures(const LLUUID& id, std::vector<LLViewerTexture*> &output);
+ static LLViewerFetchedTexture* findFetchedTexture(const LLUUID& id, S32 tex_type);
static LLViewerMediaTexture* findMediaTexture(const LLUUID& id) ;
static LLViewerMediaTexture* createMediaTexture(const LLUUID& id, BOOL usemipmaps = TRUE, LLImageGL* gl_image = NULL) ;