logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

MembershipBookkeeping::SyncSourceLink - Synchronization Source internal handler within the incoming

Author

       Generated automatically by Doxygen for ccRTP from the source code.

                                                      ccRTP             MembershipBookkeeping::SyncSourceLink(3)

Constructor & Destructor Documentation

MembershipBookkeeping::SyncSourceLink::SyncSourceLink(MembershipBookkeeping*m,SyncSource*s,IncomingRTPPktLink*fp=NULL,IncomingRTPPktLink*lp=NULL,SyncSourceLink*ps=NULL,SyncSourceLink*ns=NULL,SyncSourceLink*ncollis=NULL)[inline]MembershipBookkeeping::SyncSourceLink::~SyncSourceLink()
       Note it deletes the source.

Detailed Description

       Synchronization Source internal handler within the incoming packets queue.

       Incoming packets queue objects hold a hash table and a linked list of synchronization sources. For each
       of these sources, there is also a linked list of incoming rtp packets, which are linked in an 'all
       incoming packets' list as well. SyncSourceLink objects hold the necessary data to maintain these data
       estructures, as well as source specific information and statistics for RTCP,

       Author
           Federico Montesino Pouzols fedemp@altern.org

Member Data Documentation

uint32MembershipBookkeeping::SyncSourceLink::badSeqNumuint16MembershipBookkeeping::SyncSourceLink::baseSeqNumuint32MembershipBookkeeping::SyncSourceLink::cumulativePacketLostuint32MembershipBookkeeping::SyncSourceLink::expectedPrioruint32MembershipBookkeeping::SyncSourceLink::extendedMaxSeqNumIncomingRTPPktLink*MembershipBookkeeping::SyncSourceLink::firstboolMembershipBookkeeping::SyncSourceLink::flaguint8MembershipBookkeeping::SyncSourceLink::fractionLosttimevalMembershipBookkeeping::SyncSourceLink::initialDataTimeuint32MembershipBookkeeping::SyncSourceLink::initialDataTimestampfloatMembershipBookkeeping::SyncSourceLink::jitterIncomingRTPPktLink*MembershipBookkeeping::SyncSourceLink::lasttimevalMembershipBookkeeping::SyncSourceLink::lastPacketTimeuint32MembershipBookkeeping::SyncSourceLink::lastPacketTransitTimetimevalMembershipBookkeeping::SyncSourceLink::lastRTCPPacketTimetimevalMembershipBookkeeping::SyncSourceLink::lastRTCPSRTimeuint16MembershipBookkeeping::SyncSourceLink::maxSeqNumMembershipBookkeeping*MembershipBookkeeping::SyncSourceLink::membershipSyncSourceLink*MembershipBookkeeping::SyncSourceLink::nextSyncSourceLink*MembershipBookkeeping::SyncSourceLink::nextCollisuint32MembershipBookkeeping::SyncSourceLink::obsOctetCountuint32MembershipBookkeeping::SyncSourceLink::obsPacketCountSyncSourceLink*MembershipBookkeeping::SyncSourceLink::prevConflictingTransportAddress*MembershipBookkeeping::SyncSourceLink::prevConflictuint8MembershipBookkeeping::SyncSourceLink::probationuint32MembershipBookkeeping::SyncSourceLink::receivedPriorunsignedchar*MembershipBookkeeping::SyncSourceLink::receiverInfounsignedchar*MembershipBookkeeping::SyncSourceLink::senderInfouint32MembershipBookkeeping::SyncSourceLink::seqNumAccumconstuint32MembershipBookkeeping::SyncSourceLink::SEQNUMMOD[static]SyncSource*MembershipBookkeeping::SyncSourceLink::source

Member Function Documentation

voidMembershipBookkeeping::SyncSourceLink::computeStats()
       Compute cumulative packet lost and fraction of packets lost during the last reporting interval.

   voidMembershipBookkeeping::SyncSourceLink::decProbation()[inline]uint32MembershipBookkeeping::SyncSourceLink::getBadSeqNum()const[inline]uint16MembershipBookkeeping::SyncSourceLink::getBaseSeqNum()const[inline]uint32MembershipBookkeeping::SyncSourceLink::getCumulativePacketLost()const[inline]uint32MembershipBookkeeping::SyncSourceLink::getExtendedMaxSeqNum()const[inline]IncomingRTPPktLink*MembershipBookkeeping::SyncSourceLink::getFirst()[inline]
       Get first RTP (data) packet in the queue of packets received from this socket.

   uint8MembershipBookkeeping::SyncSourceLink::getFractionLost()const[inline]boolMembershipBookkeeping::SyncSourceLink::getGoodbye()[inline]
       Mark this source as having sent a BYE control packet.

       Returns
           whether some packet from this source had been received before (getHello() has been called at least
           once)

   boolMembershipBookkeeping::SyncSourceLink::getHello()[inline]
       Mark this source as having sent some packet.

       Returns
           whether no packet from this source had been received before

   timevalMembershipBookkeeping::SyncSourceLink::getInitialDataTime()const[inline]uint32MembershipBookkeeping::SyncSourceLink::getInitialDataTimestamp()const[inline]floatMembershipBookkeeping::SyncSourceLink::getJitter()const[inline]IncomingRTPPktLink*MembershipBookkeeping::SyncSourceLink::getLast()[inline]
       Get last RTP (data) packet in the queue of packets received from this socket.

   timevalMembershipBookkeeping::SyncSourceLink::getLastPacketTime()const[inline]uint32MembershipBookkeeping::SyncSourceLink::getLastPacketTransitTime()[inline]timevalMembershipBookkeeping::SyncSourceLink::getLastRTCPPacketTime()const[inline]timevalMembershipBookkeeping::SyncSourceLink::getLastRTCPSRTime()const[inline]uint16MembershipBookkeeping::SyncSourceLink::getMaxSeqNum()const[inline]
       Get the highest valid sequence number received.

   MembershipBookkeeping*MembershipBookkeeping::SyncSourceLink::getMembership()[inline]SyncSourceLink*MembershipBookkeeping::SyncSourceLink::getNext()[inline]
       Get the link object for the next RTP source.

   SyncSourceLink*MembershipBookkeeping::SyncSourceLink::getNextCollis()[inline]
       Get the link object for the next RTP source in the hash table entry collision list. Note that collision
       does not refer to SSRC collision, but hash table collision.

   uint32MembershipBookkeeping::SyncSourceLink::getObservedOctetCount()const[inline]
       Get the total number of payload octets received from this source.

   uint32MembershipBookkeeping::SyncSourceLink::getObservedPacketCount()const[inline]
       Get the total number of RTP packets received from this source.

   SyncSourceLink*MembershipBookkeeping::SyncSourceLink::getPrev()[inline]
       Get the link object for the previous RTP source.

   ConflictingTransportAddress*MembershipBookkeeping::SyncSourceLink::getPrevConflict()const[inline]uint8MembershipBookkeeping::SyncSourceLink::getProbation()const[inline]unsignedchar*MembershipBookkeeping::SyncSourceLink::getReceiverInfo()[inline]unsignedchar*MembershipBookkeeping::SyncSourceLink::getSenderInfo()[inline]uint32MembershipBookkeeping::SyncSourceLink::getSeqNumAccum()const[inline]SyncSource*MembershipBookkeeping::SyncSourceLink::getSource()[inline]
       Get the synchronization source object this link objet holds information for.

   voidMembershipBookkeeping::SyncSourceLink::incObservedOctetCount(uint32n)[inline]voidMembershipBookkeeping::SyncSourceLink::incObservedPacketCount()[inline]voidMembershipBookkeeping::SyncSourceLink::incSeqNumAccum()[inline]voidMembershipBookkeeping::SyncSourceLink::initSequence(uint16seqnum)[inline]
       Start a new sequence of received packets.

   voidMembershipBookkeeping::SyncSourceLink::initStats()boolMembershipBookkeeping::SyncSourceLink::isValid()const[inline]voidMembershipBookkeeping::SyncSourceLink::recordInsertion(constIncomingRTPPktLink&pl)
       Record the insertion of an RTP packet from this source into the scheduled reception queue. All received
       packets should be registered with recordReception(), but only those actually inserted into the queue
       should be registered via this method.

       Parameterspl Link structure for packet inserted into the queue.

   voidMembershipBookkeeping::SyncSourceLink::setBadSeqNum(uint32seq)[inline]voidMembershipBookkeeping::SyncSourceLink::setBaseSeqNum(uint16seqnum)[inline]voidMembershipBookkeeping::SyncSourceLink::setCumulativePacketLost(uint32pl)[inline]voidMembershipBookkeeping::SyncSourceLink::setExtendedMaxSeqNum(uint32seq)[inline]voidMembershipBookkeeping::SyncSourceLink::setFirst(IncomingRTPPktLink*fp)[inline]voidMembershipBookkeeping::SyncSourceLink::setFractionLost(uint8fl)[inline]voidMembershipBookkeeping::SyncSourceLink::setInitialDataTime(timevalit)[inline]voidMembershipBookkeeping::SyncSourceLink::setInitialDataTimestamp(uint32ts)[inline]voidMembershipBookkeeping::SyncSourceLink::setJitter(floatj)[inline]voidMembershipBookkeeping::SyncSourceLink::setLast(IncomingRTPPktLink*lp)[inline]voidMembershipBookkeeping::SyncSourceLink::setLastPacketTransitTime(uint32time)[inline]voidMembershipBookkeeping::SyncSourceLink::setMaxSeqNum(uint16max)[inline]
       Set the highest valid sequence number recived.

       Parametersmax Sequence number.

   voidMembershipBookkeeping::SyncSourceLink::setNext(SyncSourceLink*ns)[inline]voidMembershipBookkeeping::SyncSourceLink::setNextCollis(SyncSourceLink*ns)[inline]voidMembershipBookkeeping::SyncSourceLink::setPrev(SyncSourceLink*ps)[inline]voidMembershipBookkeeping::SyncSourceLink::setPrevConflict(InetAddress&addr,tpport_tdataPort,tpport_tcontrolPort)
       Get conflicting address.

   voidMembershipBookkeeping::SyncSourceLink::setProbation(uint8p)[inline]voidMembershipBookkeeping::SyncSourceLink::setReceiverInfo(unsignedchar*ri)voidMembershipBookkeeping::SyncSourceLink::setSenderInfo(unsignedchar*si)

Name

       MembershipBookkeeping::SyncSourceLink - Synchronization Source internal handler within the incoming
       packets queue.

Synopsis

       #include <iqueue.h>

   PublicMemberFunctionsSyncSourceLink (MembershipBookkeeping *m, SyncSource *s, IncomingRTPPktLink *fp=NULL, IncomingRTPPktLink
           *lp=NULL, SyncSourceLink *ps=NULL, SyncSourceLink *ns=NULL, SyncSourceLink *ncollis=NULL)
       ~SyncSourceLink ()
           Note it deletes the source.
       MembershipBookkeeping * getMembership ()
       SyncSource * getSource ()
           Get the synchronization source object this link objet holds information for.
       IncomingRTPPktLink * getFirst ()
           Get first RTP (data) packet in the queue of packets received from this socket.
       void setFirst (IncomingRTPPktLink *fp)
       IncomingRTPPktLink * getLast ()
           Get last RTP (data) packet in the queue of packets received from this socket.
       void setLast (IncomingRTPPktLink *lp)
       SyncSourceLink * getPrev ()
           Get the link object for the previous RTP source.
       void setPrev (SyncSourceLink *ps)
       SyncSourceLink * getNext ()
           Get the link object for the next RTP source.
       void setNext (SyncSourceLink *ns)
       SyncSourceLink * getNextCollis ()
           Get the link object for the next RTP source in the hash table entry collision list.
       void setNextCollis (SyncSourceLink *ns)
       ConflictingTransportAddress * getPrevConflict () const
       void setPrevConflict (InetAddress &addr, tpport_t dataPort, tpport_t controlPort)
           Get conflicting address.
       unsigned char * getSenderInfo ()
       void setSenderInfo (unsigned char *si)
       unsigned char * getReceiverInfo ()
       void setReceiverInfo (unsigned char *ri)
       timeval getLastPacketTime () const
       timeval getLastRTCPPacketTime () const
       timeval getLastRTCPSRTime () const
       uint32 getObservedPacketCount () const
           Get the total number of RTP packets received from this source.
       void incObservedPacketCount ()
       uint32 getObservedOctetCount () const
           Get the total number of payload octets received from this source.
       void incObservedOctetCount (uint32 n)
       uint16 getMaxSeqNum () const
           Get the highest valid sequence number received.
       void setMaxSeqNum (uint16 max)
           Set the highest valid sequence number recived.
       uint32 getExtendedMaxSeqNum () const
       void setExtendedMaxSeqNum (uint32 seq)
       uint32 getCumulativePacketLost () const
       void setCumulativePacketLost (uint32 pl)
       uint8 getFractionLost () const
       void setFractionLost (uint8 fl)
       uint32 getLastPacketTransitTime ()
       void setLastPacketTransitTime (uint32 time)
       float getJitter () const
       void setJitter (float j)
       uint32 getInitialDataTimestamp () const
       void setInitialDataTimestamp (uint32 ts)
       timeval getInitialDataTime () const
       void setInitialDataTime (timeval it)
       bool getGoodbye ()
           Mark this source as having sent a BYE control packet.
       bool getHello ()
           Mark this source as having sent some packet.
       uint32 getBadSeqNum () const
       void setBadSeqNum (uint32 seq)
       uint8 getProbation () const
       void setProbation (uint8 p)
       void decProbation ()
       bool isValid () const
       uint16 getBaseSeqNum () const
       void setBaseSeqNum (uint16 seqnum)
       uint32 getSeqNumAccum () const
       void incSeqNumAccum ()
       void initSequence (uint16 seqnum)
           Start a new sequence of received packets.
       void recordInsertion (const IncomingRTPPktLink &pl)
           Record the insertion of an RTP packet from this source into the scheduled reception queue.
       void initStats ()
       void computeStats ()
           Compute cumulative packet lost and fraction of packets lost during the last reporting interval.

   PublicAttributesMembershipBookkeeping * membershipSyncSource * sourceIncomingRTPPktLink * firstIncomingRTPPktLink * lastSyncSourceLink * prevSyncSourceLink * nextSyncSourceLink * nextCollisConflictingTransportAddress * prevConflict
       unsigned char * senderInfo
       unsigned char * receiverInfo
       timeval lastPacketTime
       timeval lastRTCPPacketTime
       timeval lastRTCPSRTime
       uint32 obsPacketCount
       uint32 obsOctetCount
       uint16 maxSeqNum
       uint32 extendedMaxSeqNum
       uint32 cumulativePacketLost
       uint8 fractionLost
       uint32 lastPacketTransitTime
       float jitter
       uint32 initialDataTimestamp
       timeval initialDataTime
       bool flag
       uint32 badSeqNum
       uint8 probation
       uint16 baseSeqNum
       uint32 expectedPrior
       uint32 receivedPrior
       uint32 seqNumAccumStaticPublicAttributes
       static const uint32 SEQNUMMOD

See Also