diff options
author | Jacek Antonelli | 2008-08-15 23:44:50 -0500 |
---|---|---|
committer | Jacek Antonelli | 2008-08-15 23:44:50 -0500 |
commit | 89fe5dab825a62a0e3fd8d248cbc91c65eb2a426 (patch) | |
tree | bcff14b7888d04a2fec799c59369f6095224bd08 /linden/indra/newview/llviewerimagelist.h | |
parent | Second Life viewer sources 1.13.3.2 (diff) | |
download | meta-impy-89fe5dab825a62a0e3fd8d248cbc91c65eb2a426.zip meta-impy-89fe5dab825a62a0e3fd8d248cbc91c65eb2a426.tar.gz meta-impy-89fe5dab825a62a0e3fd8d248cbc91c65eb2a426.tar.bz2 meta-impy-89fe5dab825a62a0e3fd8d248cbc91c65eb2a426.tar.xz |
Second Life viewer sources 1.14.0.0
Diffstat (limited to 'linden/indra/newview/llviewerimagelist.h')
-rw-r--r-- | linden/indra/newview/llviewerimagelist.h | 41 |
1 files changed, 21 insertions, 20 deletions
diff --git a/linden/indra/newview/llviewerimagelist.h b/linden/indra/newview/llviewerimagelist.h index 68cfcaf..3f3e521 100644 --- a/linden/indra/newview/llviewerimagelist.h +++ b/linden/indra/newview/llviewerimagelist.h | |||
@@ -58,12 +58,17 @@ typedef void (*LLImageCallback)(BOOL success, | |||
58 | 58 | ||
59 | class LLViewerImageList : public LLImageProviderInterface | 59 | class LLViewerImageList : public LLImageProviderInterface |
60 | { | 60 | { |
61 | LOG_CLASS(LLViewerImageList); | ||
62 | |||
61 | friend class LLTextureView; | 63 | friend class LLTextureView; |
62 | 64 | ||
63 | public: | 65 | public: |
64 | static BOOL createUploadFile(const LLString& filename, const LLString& out_filename, const U8 codec); | 66 | static BOOL createUploadFile(const LLString& filename, const LLString& out_filename, const U8 codec); |
67 | static LLPointer<LLImageJ2C> convertToUploadFile(LLPointer<LLImageRaw> raw_image); | ||
65 | static void processImageNotInDatabase( LLMessageSystem *msg, void **user_data ); | 68 | static void processImageNotInDatabase( LLMessageSystem *msg, void **user_data ); |
66 | static S32 calcMaxTextureRAM(); | 69 | static S32 calcMaxTextureRAM(); |
70 | static void receiveImageHeader(LLMessageSystem *msg, void **user_data); | ||
71 | static void receiveImagePacket(LLMessageSystem *msg, void **user_data); | ||
67 | 72 | ||
68 | public: | 73 | public: |
69 | LLViewerImageList(); | 74 | LLViewerImageList(); |
@@ -117,12 +122,13 @@ public: | |||
117 | void removeImageFromList(LLViewerImage *image); | 122 | void removeImageFromList(LLViewerImage *image); |
118 | 123 | ||
119 | void updateMovieImage(const LLUUID& image_id, BOOL active); | 124 | void updateMovieImage(const LLUUID& image_id, BOOL active); |
125 | void dirtyImage(LLViewerImage *image); | ||
120 | 126 | ||
121 | // Using image stats, determine what images are necessary, and perform image updates. | 127 | // Using image stats, determine what images are necessary, and perform image updates. |
122 | void updateImages(F32 decode_time); | 128 | void updateImages(F32 max_time); |
123 | 129 | ||
124 | // Decode and create textures for all images currently in list. | 130 | // Decode and create textures for all images currently in list. |
125 | void decodeAllImages(F32 max_decode_time = 0.f); | 131 | void decodeAllImages(F32 max_decode_time); |
126 | 132 | ||
127 | void handleIRCallback(void **data, const S32 number); | 133 | void handleIRCallback(void **data, const S32 number); |
128 | 134 | ||
@@ -136,40 +142,35 @@ public: | |||
136 | void updateMaxResidentTexMem(S32 max = -1, U32 fudge = 0); | 142 | void updateMaxResidentTexMem(S32 max = -1, U32 fudge = 0); |
137 | 143 | ||
138 | void doPreloadImages(); | 144 | void doPreloadImages(); |
145 | void doPrefetchImages(); | ||
139 | 146 | ||
140 | private: | 147 | private: |
141 | LLViewerImage* preloadImage(const LLString& filename, const LLUUID &image_set_id, BOOL use_mips); | 148 | LLViewerImage* preloadImage(const LLString& filename, const LLUUID &image_set_id, BOOL use_mips); |
142 | void updateImagesDecodePriorities(); | 149 | void updateImagesDecodePriorities(); |
143 | void updateImagesSendRequests(); | 150 | F32 updateImagesCreateTextures(F32 max_time); |
144 | void updateImagesDecodeTextures(F32 decode_max_time); | 151 | F32 updateImagesFetchTextures(F32 max_time); |
145 | void updateImagesMediaStreams(); | 152 | void updateImagesMediaStreams(); |
146 | void updateImagesPollVFS(); | ||
147 | void updateImagesUpdateStats(); | 153 | void updateImagesUpdateStats(); |
148 | 154 | ||
149 | public: | 155 | public: |
150 | typedef std::set<LLPointer<LLViewerImage>, LLViewerImage::Compare> image_list_t; | 156 | typedef std::set<LLPointer<LLViewerImage> > image_list_t; |
151 | typedef std::set<LLPointer<LLViewerImage>, LLViewerImage::CompareForRemoval> image_removal_list_t; | 157 | image_list_t mLoadingStreamList; |
152 | typedef std::set<LLPointer<LLViewerImage>, LLViewerImage::CompareForWorstVisibility> image_visibility_list_t; | 158 | image_list_t mCreateTextureList; |
153 | 159 | image_list_t mCallbackList; | |
154 | // List of pending texture loads, waiting for the VFS. | ||
155 | // The asynchronous read has been initiated for all images in the list. | ||
156 | typedef std::list<LLPointer<LLViewerImage> > image_loading_list_t; | ||
157 | image_loading_list_t mLoadingStreamList; | ||
158 | |||
159 | // Images with "loaded" callbacks | ||
160 | typedef std::set<LLPointer<LLViewerImage> > image_callback_list_t; | ||
161 | image_callback_list_t mCallbackList; | ||
162 | 160 | ||
161 | // Note: just raw pointers because they are never referenced, just compared against | ||
162 | std::set<LLViewerImage*> mDirtyTextureList; | ||
163 | |||
163 | BOOL mForceResetTextureStats; | 164 | BOOL mForceResetTextureStats; |
164 | 165 | ||
165 | private: | 166 | private: |
166 | typedef std::map< LLUUID, LLPointer<LLViewerImage> > uuid_map_t; | 167 | typedef std::map< LLUUID, LLPointer<LLViewerImage> > uuid_map_t; |
167 | uuid_map_t mUUIDMap; | 168 | uuid_map_t mUUIDMap; |
168 | LLUUID mLastUpdateUUID; | 169 | LLUUID mLastUpdateUUID; |
170 | LLUUID mLastFetchUUID; | ||
169 | 171 | ||
170 | image_list_t mImageList; | 172 | typedef std::set<LLPointer<LLViewerImage>, LLViewerImage::Compare> image_priority_list_t; |
171 | 173 | image_priority_list_t mImageList; | |
172 | LLPointer<LLViewerImage> mCurrentDecodeImagep; | ||
173 | 174 | ||
174 | typedef std::vector<LLPointer<LLViewerImage> > callback_data_t; | 175 | typedef std::vector<LLPointer<LLViewerImage> > callback_data_t; |
175 | typedef std::set< callback_data_t* > callback_data_list_t; | 176 | typedef std::set< callback_data_t* > callback_data_list_t; |