diff options
author | Tofu Linden <tofu.linden@lindenlab.com> | 2010-01-28 12:48:48 -0800 |
---|---|---|
committer | Tofu Linden <tofu.linden@lindenlab.com> | 2010-01-28 12:48:48 -0800 |
commit | 5a34cf1af83314774f11b0d24279794794bc9147 (patch) | |
tree | 720b576c642646f27d3e5b4f7ccba91b9e708371 /indra/newview/llgroupmgr.h | |
parent | 2795661869e3dbbfe1e6becec1d6bb3635eafd3b (diff) | |
parent | fc8e185fafcfea1ead8b9c064ed38d5ac65f81b6 (diff) |
Merge from viewer2 trunk.
Diffstat (limited to 'indra/newview/llgroupmgr.h')
-rw-r--r-- | indra/newview/llgroupmgr.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/indra/newview/llgroupmgr.h b/indra/newview/llgroupmgr.h index 487fdd4c5b..588b4a9034 100644 --- a/indra/newview/llgroupmgr.h +++ b/indra/newview/llgroupmgr.h @@ -53,6 +53,13 @@ protected: LLUUID mID; }; +class LLParticularGroupMgrObserver +{ +public: + virtual ~LLParticularGroupMgrObserver(){} + virtual void changed(const LLUUID& group_id, LLGroupChange gc) = 0; +}; + class LLGroupRoleData; class LLGroupMemberData @@ -306,7 +313,9 @@ public: ~LLGroupMgr(); void addObserver(LLGroupMgrObserver* observer); + void addObserver(const LLUUID& group_id, LLParticularGroupMgrObserver* observer); void removeObserver(LLGroupMgrObserver* observer); + void removeObserver(const LLUUID& group_id, LLParticularGroupMgrObserver* observer); LLGroupMgrGroupData* getGroupData(const LLUUID& id); void sendGroupPropertiesRequest(const LLUUID& group_id); @@ -355,13 +364,19 @@ public: private: void notifyObservers(LLGroupChange gc); + void notifyObserver(const LLUUID& group_id, LLGroupChange gc); void addGroup(LLGroupMgrGroupData* group_datap); LLGroupMgrGroupData* createGroupData(const LLUUID &id); typedef std::multimap<LLUUID,LLGroupMgrObserver*> observer_multimap_t; observer_multimap_t mObservers; + typedef std::map<LLUUID, LLGroupMgrGroupData*> group_map_t; group_map_t mGroups; + + typedef std::set<LLParticularGroupMgrObserver*> observer_set_t; + typedef std::map<LLUUID,observer_set_t> observer_map_t; + observer_map_t mParticularObservers; }; |