summaryrefslogtreecommitdiff
path: root/indra/newview/llspeakingindicatormanager.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llspeakingindicatormanager.h')
-rw-r--r--indra/newview/llspeakingindicatormanager.h24
1 files changed, 23 insertions, 1 deletions
diff --git a/indra/newview/llspeakingindicatormanager.h b/indra/newview/llspeakingindicatormanager.h
index ce0158f7d8..8d7aba1d6c 100644
--- a/indra/newview/llspeakingindicatormanager.h
+++ b/indra/newview/llspeakingindicatormanager.h
@@ -35,10 +35,28 @@
#ifndef LL_LLSPEAKINGINDICATORMANAGER_H
#define LL_LLSPEAKINGINDICATORMANAGER_H
+class SpeakingIndicatorManager;
+
class LLSpeakingIndicator
{
public:
+ virtual ~LLSpeakingIndicator(){}
virtual void switchIndicator(bool switch_on) = 0;
+
+private:
+ friend class SpeakingIndicatorManager;
+ // Accessors for target voice session UUID.
+ // They are intended to be used only from SpeakingIndicatorManager to ensure target session is
+ // the same indicator was registered with.
+ void setTargetSessionID(const LLUUID& session_id) { mTargetSessionID = session_id; }
+ const LLUUID& getTargetSessionID() { return mTargetSessionID; }
+
+ /**
+ * session UUID for which indicator should be shown only.
+ * If it is set, registered indicator will be shown only in voice channel
+ * which has the same session id (EXT-5562).
+ */
+ LLUUID mTargetSessionID;
};
// See EXT-3976.
@@ -52,8 +70,12 @@ namespace LLSpeakingIndicatorManager
*
* @param speaker_id LLUUID of an avatar whose speaker indicator is registered.
* @param speaking_indicator instance of the speaker indicator to be registered.
+ * @param session_id session UUID for which indicator should be shown only.
+ * If this parameter is set registered indicator will be shown only in voice channel
+ * which has the same session id (EXT-5562).
*/
- void registerSpeakingIndicator(const LLUUID& speaker_id, LLSpeakingIndicator* const speaking_indicator);
+ void registerSpeakingIndicator(const LLUUID& speaker_id, LLSpeakingIndicator* const speaking_indicator,
+ const LLUUID& session_id);
/**
* Removes passed speaking indicator from observing.