diff options
Diffstat (limited to 'indra/newview/llrecentpeople.cpp')
-rw-r--r-- | indra/newview/llrecentpeople.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/indra/newview/llrecentpeople.cpp b/indra/newview/llrecentpeople.cpp index 7689cd1a52..83b0c4f1bf 100644 --- a/indra/newview/llrecentpeople.cpp +++ b/indra/newview/llrecentpeople.cpp @@ -126,3 +126,33 @@ bool LLRecentPeople::handleEvent(LLPointer<LLEvent> event, const LLSD& userdata) add(event->getValue().asUUID()); return true; } + +void LLRecentPeople::updateAvatarsArrivalTime(uuid_vec_t& uuids) +{ + id_to_time_map_t buf = mAvatarsArrivalTime; + mAvatarsArrivalTime.clear(); + + for (uuid_vec_t::const_iterator id_it = uuids.begin(); id_it != uuids.end(); ++id_it) + { + if (buf.find(*id_it) != buf.end()) + { + mAvatarsArrivalTime[*id_it] = buf[*id_it]; + } + else + { + mAvatarsArrivalTime[*id_it] = LLDate::now().secondsSinceEpoch(); + } + } +} + +F32 LLRecentPeople::getArrivalTimeByID(const LLUUID& id) +{ + id_to_time_map_t::const_iterator it = mAvatarsArrivalTime.find(id); + + if (it != mAvatarsArrivalTime.end()) + { + return it->second; + } + return LLDate::now().secondsSinceEpoch(); +} + |