reSIProcate
SIP stack, Dialog Usage Manager and related libraries
Loading...
Searching...
No Matches
recon::GstConversation Class Reference

This class is used to manage membership of participants. More...

#include <GstConversation.hxx>

Inheritance diagram for recon::GstConversation:
[legend]

Public Member Functions

 GstConversation (ConversationHandle handle, ConversationManager &conversationManager, GstMediaStackAdapter &gstreamerMediaStackAdapter, RelatedConversationSet *relatedConversationSet, ConversationHandle sharedMediaInterfaceConvHandle, ConversationManager::AutoHoldMode autoHoldMode)
 
virtual ~GstConversation ()
 
virtual void confirmParticipant (Participant *participant)
 
- Public Member Functions inherited from recon::Conversation
virtual ~Conversation ()
 
void addParticipant (Participant *participant, unsigned int inputGain=100, unsigned int outputGain=100)
 
void removeParticipant (Participant *participant)
 
void modifyParticipantContribution (Participant *participant, unsigned int inputGain, unsigned int outputGain)
 
unsigned int getNumLocalParticipants ()
 
unsigned int getNumRemoteParticipants ()
 
unsigned int getNumRemoteIMParticipants ()
 
unsigned int getNumMediaParticipants ()
 
bool shouldHold ()
 
bool broadcastOnly ()
 
void notifyRemoteParticipantsOfHoldChange ()
 
void relayInstantMessageToRemoteParticipants (ParticipantHandle sourceParticipant, const resip::Data &senderDisplayName, const resip::SipMessage &msg)
 
void createRelatedConversation (RemoteParticipant *newForkedParticipant, ParticipantHandle origParticipantHandle)
 
void join (Conversation *conversation)
 
void destroy ()
 
ConversationHandle getHandle ()
 
void setMaxParticipants (unsigned int maxParticipants)
 
unsigned int getMaxParticipants () const
 

Protected Member Functions

virtual void onParticipantAdded (Participant *participant)
 
virtual void onParticipantRemoved (Participant *participant)
 
- Protected Member Functions inherited from recon::Conversation
 Conversation (ConversationHandle handle, ConversationManager &conversationManager, RelatedConversationSet *relatedConversationSet, ConversationHandle sharedMediaInterfaceConvHandle, ConversationManager::AutoHoldMode autoHoldMode, unsigned int maxParticipants=0)
 
std::shared_ptr< resip::ConfigParse > getConfig ()
 
void registerParticipant (Participant *, unsigned int inputGain=100, unsigned int outputGain=100)
 
void unregisterParticipant (Participant *)
 
ParticipantMap & getParticipants ()
 
BridgeMixer * getBridgeMixer () noexcept
 
std::shared_ptr< BridgeMixer > getBridgeMixerShared ()
 
virtual void setBridgeMixer (std::shared_ptr< BridgeMixer > mixer)
 
virtual bool isSharingMediaInterfaceWithAnotherConversation ()
 
virtual ConversationManager & getConversationManager ()
 

Friends

class Participant
 
class GstParticipant
 
class LocalParticipant
 
class GstLocalParticipant
 
class RemoteParticipant
 
class GstRemoteParticipant
 
class MediaResourceParticipant
 
class GstMediaResourceParticipant
 
class BridgeMixer
 
class GstBridgeMixer
 
class AddParticipantCmd
 
class JoinConversationCmd
 
class MoveParticipantCmd
 
class ConversationManager
 
class GstMediaStackAdapter
 

Additional Inherited Members

- Protected Types inherited from recon::Conversation
typedef std::map< ParticipantHandle, ConversationParticipantAssignment > ParticipantMap
 

Detailed Description

This class is used to manage membership of participants.

Conversations are used to designate the audio properties between a number of managed participants. By default all participants in a Conversation can talk to and hear all other participants. A modified participants contribution setting to a conversation can change this.

If a remote participant is a sole member in a conversation, then he/she will be put on hold for the default AutoHoldMode of enabled.

Definition at line 31 of file GstConversation.hxx.

Constructor & Destructor Documentation

◆ GstConversation()

GstConversation::GstConversation ( ConversationHandle  handle,
ConversationManager &  conversationManager,
GstMediaStackAdapter &  gstreamerMediaStackAdapter,
RelatedConversationSet *  relatedConversationSet,
ConversationHandle  sharedMediaInterfaceConvHandle,
ConversationManager::AutoHoldMode  autoHoldMode 
)

Definition at line 29 of file GstConversation.cxx.

◆ ~GstConversation()

GstConversation::~GstConversation ( )
virtual

Definition at line 67 of file GstConversation.cxx.

Member Function Documentation

◆ confirmParticipant()

void GstConversation::confirmParticipant ( Participant *  participant)
virtual

Reimplemented from recon::Conversation.

Definition at line 79 of file GstConversation.cxx.

◆ onParticipantAdded()

void GstConversation::onParticipantAdded ( Participant *  participant)
protectedvirtual

Implements recon::Conversation.

Definition at line 74 of file GstConversation.cxx.

◆ onParticipantRemoved()

void GstConversation::onParticipantRemoved ( Participant *  participant)
protectedvirtual

Implements recon::Conversation.

Definition at line 160 of file GstConversation.cxx.

Friends And Related Symbol Documentation

◆ AddParticipantCmd

Definition at line 57 of file GstConversation.hxx.

◆ BridgeMixer

Definition at line 54 of file GstConversation.hxx.

◆ ConversationManager

Definition at line 70 of file GstConversation.hxx.

◆ GstBridgeMixer

Definition at line 55 of file GstConversation.hxx.

◆ GstLocalParticipant

friend class GstLocalParticipant
friend

Definition at line 48 of file GstConversation.hxx.

◆ GstMediaResourceParticipant

friend class GstMediaResourceParticipant
friend

Definition at line 52 of file GstConversation.hxx.

◆ GstMediaStackAdapter

Definition at line 71 of file GstConversation.hxx.

◆ GstParticipant

Definition at line 46 of file GstConversation.hxx.

◆ GstRemoteParticipant

Definition at line 50 of file GstConversation.hxx.

◆ JoinConversationCmd

Definition at line 58 of file GstConversation.hxx.

◆ LocalParticipant

Definition at line 47 of file GstConversation.hxx.

◆ MediaResourceParticipant

Definition at line 51 of file GstConversation.hxx.

◆ MoveParticipantCmd

Definition at line 59 of file GstConversation.hxx.

◆ Participant

Definition at line 45 of file GstConversation.hxx.

◆ RemoteParticipant

Definition at line 49 of file GstConversation.hxx.


The documentation for this class was generated from the following files: