44 #ifndef CCXX_RTP_SOURCES_H_
45 #define CCXX_RTP_SOURCES_H_
51 #ifdef CCXX_NAMESPACES
74 inline const std::string&
82 setPRIVPrefix(
const std::string& val)
154 inline const std::string&
155 getPRIVPrefix()
const
258 bool isSender()
const
259 {
return activeSender; }
272 getParticipant()
const
273 {
return participant; }
275 tpport_t getDataTransportPort()
const
276 {
return dataTransportPort; }
278 tpport_t getControlTransportPort()
const
279 {
return controlTransportPort; }
281 const InetAddress& getNetworkAddress()
const
282 {
return networkAddress; }
305 { activeSender = active; }
309 { participant = &p; }
312 { dataTransportPort = p; }
315 { controlTransportPort = p; }
318 { networkAddress = addr; }
338 InetAddress networkAddress;
339 tpport_t dataTransportPort;
340 tpport_t controlTransportPort;
371 struct ParticipantLink;
390 setPRIVPrefix(
const std::string& val)
397 inline const std::string&
398 getPRIVPrefix()
const
423 {
return *(link->getParticipant()); }
426 {
return link->getParticipant(); }
429 link = link->getNext();
440 {
return l.link == r.link; }
444 {
return l.link != r.link; }
446 ParticipantLink *link;
456 getParticipant(
const std::string& cname)
const;
461 struct ParticipantLink {
463 ParticipantLink* l) :
464 participant(&p), next(l)
466 inline ~ParticipantLink() {
delete participant; }
467 inline Participant* getParticipant() {
return participant; }
468 inline ParticipantLink* getPrev() {
return prev; }
469 inline ParticipantLink* getNext() {
return next; }
470 inline void setPrev(ParticipantLink* l) { prev = l; }
471 inline void setNext(ParticipantLink* l) { next = l; }
473 ParticipantLink* next, *prev;
480 removeParticipant(ParticipantLink* part);
490 static const size_t defaultParticipantsNum;
493 ParticipantLink* firstPart, * lastPart;
509 #ifdef CCXX_NAMESPACES
513 #endif //CCXX_RTP_SOURCES_H_