44 #ifndef CCXX_RTP_SOURCES_H_
45 #define CCXX_RTP_SOURCES_H_
71 inline const std::string&
79 setPRIVPrefix(
const std::string& val)
151 inline const std::string&
255 bool isSender()
const
256 {
return activeSender; }
269 getParticipant()
const
270 {
return participant; }
272 tpport_t getDataTransportPort()
const
273 {
return dataTransportPort; }
275 tpport_t getControlTransportPort()
const
276 {
return controlTransportPort; }
278 const InetAddress& getNetworkAddress()
const
279 {
return networkAddress; }
302 { activeSender = active; }
306 { participant = &p; }
309 { dataTransportPort = p; }
312 { controlTransportPort = p; }
315 { networkAddress = addr; }
335 InetAddress networkAddress;
336 tpport_t dataTransportPort;
337 tpport_t controlTransportPort;
368 struct ParticipantLink;
394 inline const std::string&
420 {
return *(link->getParticipant()); }
423 {
return link->getParticipant(); }
426 link = link->getNext();
437 {
return l.link == r.link; }
441 {
return l.link != r.link; }
443 ParticipantLink *link;
453 getParticipant(
const std::string& cname)
const;
458 struct ParticipantLink {
460 ParticipantLink* l) :
461 participant(&p), next(l)
463 inline ~ParticipantLink() {
delete participant; }
464 inline Participant* getParticipant() {
return participant; }
465 inline ParticipantLink* getPrev() {
return prev; }
466 inline ParticipantLink* getNext() {
return next; }
467 inline void setPrev(ParticipantLink* l) { prev = l; }
468 inline void setNext(ParticipantLink* l) { next = l; }
470 ParticipantLink* next, *prev;
477 removeParticipant(ParticipantLink* part);
487 static const size_t defaultParticipantsNum;
490 ParticipantLink* firstPart, * lastPart;
508 #endif //CCXX_RTP_SOURCES_H_