43 #ifndef CCXX_RTP_SOURCES_H_
44 #define CCXX_RTP_SOURCES_H_
70 inline const std::string&
78 setPRIVPrefix(
const std::string& val)
150 inline const std::string&
254 bool isSender()
const
255 {
return activeSender; }
268 getParticipant()
const
269 {
return participant; }
271 tpport_t getDataTransportPort()
const
272 {
return dataTransportPort; }
274 tpport_t getControlTransportPort()
const
275 {
return controlTransportPort; }
277 const InetAddress& getNetworkAddress()
const
278 {
return networkAddress; }
301 { activeSender = active; }
305 { participant = &p; }
308 { dataTransportPort = p; }
311 { controlTransportPort = p; }
314 { networkAddress = addr; }
334 InetAddress networkAddress;
335 tpport_t dataTransportPort;
336 tpport_t controlTransportPort;
367 struct ParticipantLink;
393 inline const std::string&
419 {
return *(link->getParticipant()); }
422 {
return link->getParticipant(); }
425 link = link->getNext();
436 {
return l.link == r.link; }
440 {
return l.link != r.link; }
442 ParticipantLink *link;
452 getParticipant(
const std::string& cname)
const;
457 struct ParticipantLink {
459 ParticipantLink* l) :
460 participant(&p), next(l)
462 inline ~ParticipantLink() {
delete participant; }
463 inline Participant* getParticipant() {
return participant; }
464 inline ParticipantLink* getPrev() {
return prev; }
465 inline ParticipantLink* getNext() {
return next; }
466 inline void setPrev(ParticipantLink* l) { prev = l; }
467 inline void setNext(ParticipantLink* l) { next = l; }
469 ParticipantLink* next, *prev;
476 removeParticipant(ParticipantLink* part);
486 static const size_t defaultParticipantsNum;
489 ParticipantLink* firstPart, * lastPart;
507 #endif //CCXX_RTP_SOURCES_H_