summaryrefslogtreecommitdiff
path: root/indra/newview/llinventorymodelbackgroundfetch.h
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2023-03-28 02:27:34 +0300
committerAndrey Kleshchev <andreykproductengine@lindenlab.com>2023-03-28 02:27:34 +0300
commit89a8c96f36983738645a2116d9d432e3bd88f1df (patch)
treeaee7e09b84cea064c1ed2be1baed6049311d18ab /indra/newview/llinventorymodelbackgroundfetch.h
parent110ed8f4d3152c91ddd7577234ad37b666be86c9 (diff)
SL-18003 Bulk download items when possible
And signal fodler fetch completion when folder of recursive fetch is done, do not hold it for individual items
Diffstat (limited to 'indra/newview/llinventorymodelbackgroundfetch.h')
-rw-r--r--indra/newview/llinventorymodelbackgroundfetch.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/indra/newview/llinventorymodelbackgroundfetch.h b/indra/newview/llinventorymodelbackgroundfetch.h
index 0a5608c0c6..6a8b616a82 100644
--- a/indra/newview/llinventorymodelbackgroundfetch.h
+++ b/indra/newview/llinventorymodelbackgroundfetch.h
@@ -47,9 +47,10 @@ class LLInventoryModelBackgroundFetch : public LLSingleton<LLInventoryModelBackg
~LLInventoryModelBackgroundFetch();
public:
- // Start and stop background breadth-first fetching of inventory contents.
+ // Start background breadth-first fetching of inventory contents.
// This gets triggered when performing a filter-search.
void start(const LLUUID& cat_id = LLUUID::null, bool recursive = true);
+ void scheduleItemFetch(const LLUUID& item_id);
BOOL folderFetchActive() const;
bool isEverythingFetched() const; // completing the fetch once per session should be sufficient
@@ -64,12 +65,14 @@ public:
void findLostItems();
void incrFetchCount(S32 fetching);
+ void incrFetchFolderCount(S32 fetching);
bool isBulkFetchProcessingComplete() const;
+ bool isFolderFetchProcessingComplete() const;
void setAllFoldersFetched();
typedef boost::function<void()> folders_fetched_callback_t;
- boost::signals2::connection setAllFoldersFetchedCallback(folders_fetched_callback_t cb);
+ boost::signals2::connection setFetchCompletionCallback(folders_fetched_callback_t cb);
void addRequestAtFront(const LLUUID & id, bool recursive, bool is_category);
void addRequestAtBack(const LLUUID & id, bool recursive, bool is_category);
@@ -110,11 +113,12 @@ private:
bool mRecursiveLibraryFetchStarted;
bool mAllFoldersFetched;
typedef boost::signals2::signal<void()> folders_fetched_signal_t;
- folders_fetched_signal_t mAllFoldersFetchedSignal;
+ folders_fetched_signal_t mFoldersFetchedSignal;
bool mBackgroundFetchActive;
bool mFolderFetchActive;
S32 mFetchCount;
+ S32 mFetchFolderCount;
LLFrameTimer mFetchTimer;
F32 mMinTimeBetweenFetches;