summaryrefslogtreecommitdiff
path: root/indra/newview/llgroupmgr.h
diff options
context:
space:
mode:
authorPaul Guslisty <pguslisty@productengine.com>2010-01-27 14:16:37 +0200
committerPaul Guslisty <pguslisty@productengine.com>2010-01-27 14:16:37 +0200
commit8ea2c7a37380162ba2926bd23a01583023884408 (patch)
tree05e2c1a000562e06e79c25e02ffac84b6a47bdad /indra/newview/llgroupmgr.h
parenta5180babefa3f81de5321a9d6d5148ef1bd8e03a (diff)
Implemeted normal Sub-Task EXT - 2753 (Implement Avatar icons on IM multifloater tabs)
--HG-- branch : product-engine
Diffstat (limited to 'indra/newview/llgroupmgr.h')
-rw-r--r--indra/newview/llgroupmgr.h15
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;
};