summaryrefslogtreecommitdiff
path: root/indra/newview/llattachmentsmgr.h
diff options
context:
space:
mode:
authorBrad Payne (Vir Linden) <vir@lindenlab.com>2015-03-18 21:41:47 -0400
committerBrad Payne (Vir Linden) <vir@lindenlab.com>2015-03-18 21:41:47 -0400
commit090d3097d569922b7c3b681cb77ff14a29a60b07 (patch)
tree0b01041e2ad9e6c42a9930803901a3f0e087e617 /indra/newview/llattachmentsmgr.h
parent8169cde890f70320340a08cbfa29d16033572a9b (diff)
MAINT-4917 WIP - Attachment deferred bulk COF linking WIP
Diffstat (limited to 'indra/newview/llattachmentsmgr.h')
-rwxr-xr-xindra/newview/llattachmentsmgr.h25
1 files changed, 19 insertions, 6 deletions
diff --git a/indra/newview/llattachmentsmgr.h b/indra/newview/llattachmentsmgr.h
index c145fa032b..c84229475a 100755
--- a/indra/newview/llattachmentsmgr.h
+++ b/indra/newview/llattachmentsmgr.h
@@ -60,18 +60,31 @@ public:
LLAttachmentsMgr();
virtual ~LLAttachmentsMgr();
- void addAttachment(const LLUUID& item_id,
- const U8 attachment_pt,
- const BOOL add);
+ void addAttachmentRequest(const LLUUID& item_id,
+ const U8 attachment_pt,
+ const BOOL add);
void requestAttachments(const attachments_vec_t& attachment_requests);
static void onIdle(void *);
-protected:
- void onIdle();
- void linkPendingAttachments();
+ BOOL attachmentWasRequestedRecently(const LLUUID& inv_item_id, F32 seconds) const;
+ void addAttachmentRequestTime(const LLUUID& inv_item_id);
+ void onAttachmentArrived(const LLUUID& inv_item_id);
private:
+ void removeAttachmentRequestTime(const LLUUID& inv_item_id);
+ void onIdle();
+ void requestPendingAttachments();
+ void linkRecentlyArrivedAttachments();
+
+ // Attachments that we are planning to rez but haven't requested from the server yet.
attachments_vec_t mPendingAttachments;
+
+ // Attachments that have been requested from server but have not arrived yet.
+ std::map<LLUUID,LLTimer> mAttachmentRequests;
+
+ // Attachments that have arrived but have not been linked in the COF yet.
+ std::set<LLUUID> mRecentlyArrivedAttachments;
+ LLTimer mCOFLinkBatchTimer;
};
#endif