1#if !defined(Conversation_hxx)
2#define Conversation_hxx
10class LocalParticipant;
11class RemoteParticipant;
12class RelatedConversationSet;
89 typedef std::map<ParticipantHandle, ConversationParticipantAssignment>
ParticipantMap;
119 unsigned int mNumLocalParticipants;
120 unsigned int mNumRemoteParticipants;
121 unsigned int mNumRemoteIMParticipants;
122 unsigned int mNumMediaParticipants;
124 unsigned int mMaxParticipants;
128 std::shared_ptr<BridgeMixer> mBridgeMixer;
129 bool mSharingMediaInterfaceWithAnotherConversation;
This class is used to control the sipX Bridge Mixer mix matrix.
This class is one of two main classes of concern to an application using the UserAgent library.
std::shared_ptr< resip::ConfigParse > getConfig()
This class is used to manage membership of participants.
ParticipantMap & getParticipants()
unsigned int getNumRemoteParticipants()
unsigned int getNumLocalParticipants()
unsigned int getNumMediaParticipants()
void addParticipant(Participant *participant, unsigned int inputGain=100, unsigned int outputGain=100)
void notifyRemoteParticipantsOfHoldChange()
void removeParticipant(Participant *participant)
std::shared_ptr< resip::ConfigParse > getConfig()
BridgeMixer * getBridgeMixer() noexcept
virtual void setBridgeMixer(std::shared_ptr< BridgeMixer > mixer)
virtual ConversationManager & getConversationManager()
void setMaxParticipants(unsigned int maxParticipants)
void join(Conversation *conversation)
std::shared_ptr< BridgeMixer > getBridgeMixerShared()
virtual void onParticipantAdded(Participant *participant)=0
ConversationHandle getHandle()
unsigned int getMaxParticipants() const
void relayInstantMessageToRemoteParticipants(ParticipantHandle sourceParticipant, const resip::Data &senderDisplayName, const resip::SipMessage &msg)
virtual bool isSharingMediaInterfaceWithAnotherConversation()
void registerParticipant(Participant *, unsigned int inputGain=100, unsigned int outputGain=100)
void unregisterParticipant(Participant *)
std::map< ParticipantHandle, ConversationParticipantAssignment > ParticipantMap
void modifyParticipantContribution(Participant *participant, unsigned int inputGain, unsigned int outputGain)
unsigned int getNumRemoteIMParticipants()
virtual void onParticipantRemoved(Participant *participant)=0
void createRelatedConversation(RemoteParticipant *newForkedParticipant, ParticipantHandle origParticipantHandle)
virtual void confirmParticipant(Participant *participant)
This class is used to control the sipX Bridge Mixer mix matrix.
This class is used to control the sipX Bridge Mixer mix matrix.
This class represent a remote participant.
This class is used to control the sipX Bridge Mixer mix matrix.
This class represents a local participant.
This is the base class for a RemoteParticipant, LocalParticipant and a MediaResourceParticipant.
This class represent a remote participant.
This class is used to control the sipX Bridge Mixer mix matrix.
This class represents a local participant.
This is the base class for a SipXRemoteParticipant, SipXLocalParticipant and a SipXMediaResourceParti...
This class represent a remote participant.
An alternative to std::string, encapsulates an arbitrary buffer of bytes.
Represents a SIP message.
unsigned int ConversationHandle
unsigned int ParticipantHandle