Man page - membershipbookkeeping_syncsourcelink(3)
Packages contains this manual
- rtppkt.h(3)
- cqueue(3)
- formats.h(3)
- private.h(3)
- sockets(3)
- queuebase.h(3)
- sessions(3)
- ioqueue(3)
- oqueue.h(3)
- rtppacket(3)
- ext.h(3)
- cqueue.h(3)
- base.h(3)
- rtpext(3)
- rtp.h(3)
- sources.h(3)
- iqueue(3)
- pool.h(3)
- queuebase(3)
- channel.h(3)
- sources(3)
- iqueue.h(3)
- ioqueue.h(3)
- payload(3)
- rtcppacket(3)
- rtcppkt.h(3)
- oqueue(3)
apt-get install libccrtp-doc
Manual
MembershipBookkeeping::SyncSourceLink
NAMESYNOPSIS
Public Member Functions
Public Attributes
Static Public Attributes
Detailed Description
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 ()
Member Function Documentation
void MembershipBookkeeping::SyncSourceLink::computeStats ()
void MembershipBookkeeping::SyncSourceLink::decProbation () [inline]
uint32 MembershipBookkeeping::SyncSourceLink::getBadSeqNum () const[inline]
uint16 MembershipBookkeeping::SyncSourceLink::getBaseSeqNum () const[inline]
uint32 MembershipBookkeeping::SyncSourceLink::getCumulativePacketLost ()const [inline]
uint32 MembershipBookkeeping::SyncSourceLink::getExtendedMaxSeqNum () const[inline]
IncomingRTPPktLink * MembershipBookkeeping::SyncSourceLink::getFirst ()[inline]
uint8 MembershipBookkeeping::SyncSourceLink::getFractionLost () const[inline]
bool MembershipBookkeeping::SyncSourceLink::getGoodbye () [inline]
bool MembershipBookkeeping::SyncSourceLink::getHello () [inline]
timeval MembershipBookkeeping::SyncSourceLink::getInitialDataTime () const[inline]
uint32 MembershipBookkeeping::SyncSourceLink::getInitialDataTimestamp ()const [inline]
float MembershipBookkeeping::SyncSourceLink::getJitter () const [inline]
IncomingRTPPktLink * MembershipBookkeeping::SyncSourceLink::getLast ()[inline]
timeval MembershipBookkeeping::SyncSourceLink::getLastPacketTime () const[inline]
uint32 MembershipBookkeeping::SyncSourceLink::getLastPacketTransitTime ()[inline]
timeval MembershipBookkeeping::SyncSourceLink::getLastRTCPPacketTime ()const [inline]
timeval MembershipBookkeeping::SyncSourceLink::getLastRTCPSRTime () const[inline]
uint16 MembershipBookkeeping::SyncSourceLink::getMaxSeqNum () const[inline]
MembershipBookkeeping *MembershipBookkeeping::SyncSourceLink::getMembership () [inline]
SyncSourceLink * MembershipBookkeeping::SyncSourceLink::getNext () [inline]
SyncSourceLink * MembershipBookkeeping::SyncSourceLink::getNextCollis ()[inline]
uint32 MembershipBookkeeping::SyncSourceLink::getObservedOctetCount ()const [inline]
uint32 MembershipBookkeeping::SyncSourceLink::getObservedPacketCount ()const [inline]
SyncSourceLink * MembershipBookkeeping::SyncSourceLink::getPrev () [inline]
ConflictingTransportAddress *MembershipBookkeeping::SyncSourceLink::getPrevConflict () const[inline]
uint8 MembershipBookkeeping::SyncSourceLink::getProbation () const [inline]
unsigned char * MembershipBookkeeping::SyncSourceLink::getReceiverInfo ()[inline]
unsigned char * MembershipBookkeeping::SyncSourceLink::getSenderInfo ()[inline]
uint32 MembershipBookkeeping::SyncSourceLink::getSeqNumAccum () const[inline]
SyncSource * MembershipBookkeeping::SyncSourceLink::getSource () [inline]
void MembershipBookkeeping::SyncSourceLink::incObservedOctetCount (uint32n) [inline]
void MembershipBookkeeping::SyncSourceLink::incObservedPacketCount ()[inline]
void MembershipBookkeeping::SyncSourceLink::incSeqNumAccum () [inline]
void MembershipBookkeeping::SyncSourceLink::initSequence (uint16 seqnum)[inline]
void MembershipBookkeeping::SyncSourceLink::initStats ()
bool MembershipBookkeeping::SyncSourceLink::isValid () const [inline]
void MembershipBookkeeping::SyncSourceLink::recordInsertion (constIncomingRTPPktLink & pl)
void MembershipBookkeeping::SyncSourceLink::setBadSeqNum (uint32 seq)[inline]
void MembershipBookkeeping::SyncSourceLink::setBaseSeqNum (uint16 seqnum)[inline]
void MembershipBookkeeping::SyncSourceLink::setCumulativePacketLost (uint32pl) [inline]
void MembershipBookkeeping::SyncSourceLink::setExtendedMaxSeqNum (uint32seq) [inline]
void MembershipBookkeeping::SyncSourceLink::setFirst (IncomingRTPPktLink *fp) [inline]
void MembershipBookkeeping::SyncSourceLink::setFractionLost (uint8 fl)[inline]
void MembershipBookkeeping::SyncSourceLink::setInitialDataTime (timeval it)[inline]
void MembershipBookkeeping::SyncSourceLink::setInitialDataTimestamp (uint32ts) [inline]
void MembershipBookkeeping::SyncSourceLink::setJitter (float j) [inline]
void MembershipBookkeeping::SyncSourceLink::setLast (IncomingRTPPktLink *lp) [inline]
void MembershipBookkeeping::SyncSourceLink::setLastPacketTransitTime(uint32 time) [inline]
void MembershipBookkeeping::SyncSourceLink::setMaxSeqNum (uint16 max)[inline]
void MembershipBookkeeping::SyncSourceLink::setNext (SyncSourceLink * ns)[inline]
void MembershipBookkeeping::SyncSourceLink::setNextCollis (SyncSourceLink *ns) [inline]
void MembershipBookkeeping::SyncSourceLink::setPrev (SyncSourceLink * ps)[inline]
void MembershipBookkeeping::SyncSourceLink::setPrevConflict (InetAddress &addr, tpport_t dataPort, tpport_t controlPort)
void MembershipBookkeeping::SyncSourceLink::setProbation (uint8 p) [inline]
void MembershipBookkeeping::SyncSourceLink::setReceiverInfo (unsigned char* ri)
void MembershipBookkeeping::SyncSourceLink::setSenderInfo (unsigned char *si)
Member Data Documentation
uint32 MembershipBookkeeping::SyncSourceLink::badSeqNum
uint16 MembershipBookkeeping::SyncSourceLink::baseSeqNum
uint32 MembershipBookkeeping::SyncSourceLink::cumulativePacketLost
uint32 MembershipBookkeeping::SyncSourceLink::expectedPrior
uint32 MembershipBookkeeping::SyncSourceLink::extendedMaxSeqNum
IncomingRTPPktLink* MembershipBookkeeping::SyncSourceLink::first
bool MembershipBookkeeping::SyncSourceLink::flag
uint8 MembershipBookkeeping::SyncSourceLink::fractionLost
timeval MembershipBookkeeping::SyncSourceLink::initialDataTime
uint32 MembershipBookkeeping::SyncSourceLink::initialDataTimestamp
float MembershipBookkeeping::SyncSourceLink::jitter
IncomingRTPPktLink * MembershipBookkeeping::SyncSourceLink::last
timeval MembershipBookkeeping::SyncSourceLink::lastPacketTime
uint32 MembershipBookkeeping::SyncSourceLink::lastPacketTransitTime
timeval MembershipBookkeeping::SyncSourceLink::lastRTCPPacketTime
timeval MembershipBookkeeping::SyncSourceLink::lastRTCPSRTime
uint16 MembershipBookkeeping::SyncSourceLink::maxSeqNum
MembershipBookkeeping* MembershipBookkeeping::SyncSourceLink::membership
SyncSourceLink * MembershipBookkeeping::SyncSourceLink::next
SyncSourceLink* MembershipBookkeeping::SyncSourceLink::nextCollis
uint32 MembershipBookkeeping::SyncSourceLink::obsOctetCount
uint32 MembershipBookkeeping::SyncSourceLink::obsPacketCount
SyncSourceLink* MembershipBookkeeping::SyncSourceLink::prev
ConflictingTransportAddress*MembershipBookkeeping::SyncSourceLink::prevConflict
uint8 MembershipBookkeeping::SyncSourceLink::probation
uint32 MembershipBookkeeping::SyncSourceLink::receivedPrior
unsigned char* MembershipBookkeeping::SyncSourceLink::receiverInfo
unsigned char* MembershipBookkeeping::SyncSourceLink::senderInfo
uint32 MembershipBookkeeping::SyncSourceLink::seqNumAccum
const uint32 MembershipBookkeeping::SyncSourceLink::SEQNUMMOD [static]
SyncSource* MembershipBookkeeping::SyncSourceLink::source
Author
NAME
MembershipBookkeeping::SyncSourceLink - Synchronization Source internal handler within the incoming packets queue.
SYNOPSIS
#include <iqueue.h>
Public Member Functions
SyncSourceLink
(
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.
Public Attributes
MembershipBookkeeping
*
membership
SyncSource
*
source
IncomingRTPPktLink
*
first
IncomingRTPPktLink
*
last
SyncSourceLink
*
prev
SyncSourceLink
*
next
SyncSourceLink
*
nextCollis
ConflictingTransportAddress
*
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
seqNumAccum
Static Public Attributes
static const uint32 SEQNUMMOD
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
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.
Member Function Documentation
void MembershipBookkeeping::SyncSourceLink::computeStats ()
Compute cumulative packet lost and fraction of packets lost during the last reporting interval.
void MembershipBookkeeping::SyncSourceLink::decProbation () [inline]
uint32 MembershipBookkeeping::SyncSourceLink::getBadSeqNum () const[inline]
uint16 MembershipBookkeeping::SyncSourceLink::getBaseSeqNum () const[inline]
uint32 MembershipBookkeeping::SyncSourceLink::getCumulativePacketLost ()const [inline]
uint32 MembershipBookkeeping::SyncSourceLink::getExtendedMaxSeqNum () const[inline]
IncomingRTPPktLink * MembershipBookkeeping::SyncSourceLink::getFirst ()[inline]
Get first RTP (data) packet in the queue of packets received from this socket.
uint8 MembershipBookkeeping::SyncSourceLink::getFractionLost () const[inline]
bool MembershipBookkeeping::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)
bool MembershipBookkeeping::SyncSourceLink::getHello () [inline]
Mark this source as having sent some packet.
Returns
whether no packet from this source had been received before
timeval MembershipBookkeeping::SyncSourceLink::getInitialDataTime () const[inline]
uint32 MembershipBookkeeping::SyncSourceLink::getInitialDataTimestamp ()const [inline]
float MembershipBookkeeping::SyncSourceLink::getJitter () const [inline]
IncomingRTPPktLink * MembershipBookkeeping::SyncSourceLink::getLast ()[inline]
Get last RTP (data) packet in the queue of packets received from this socket.
timeval MembershipBookkeeping::SyncSourceLink::getLastPacketTime () const[inline]
uint32 MembershipBookkeeping::SyncSourceLink::getLastPacketTransitTime ()[inline]
timeval MembershipBookkeeping::SyncSourceLink::getLastRTCPPacketTime ()const [inline]
timeval MembershipBookkeeping::SyncSourceLink::getLastRTCPSRTime () const[inline]
uint16 MembershipBookkeeping::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.
uint32 MembershipBookkeeping::SyncSourceLink::getObservedOctetCount ()const [inline]
Get the total number of payload octets received from this source.
uint32 MembershipBookkeeping::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]
uint8 MembershipBookkeeping::SyncSourceLink::getProbation () const [inline]
unsigned char * MembershipBookkeeping::SyncSourceLink::getReceiverInfo ()[inline]
unsigned char * MembershipBookkeeping::SyncSourceLink::getSenderInfo ()[inline]
uint32 MembershipBookkeeping::SyncSourceLink::getSeqNumAccum () const[inline]
SyncSource * MembershipBookkeeping::SyncSourceLink::getSource () [inline]
Get the synchronization source object this link objet holds information for.
void MembershipBookkeeping::SyncSourceLink::incObservedOctetCount (uint32n) [inline]
void MembershipBookkeeping::SyncSourceLink::incObservedPacketCount ()[inline]
void MembershipBookkeeping::SyncSourceLink::incSeqNumAccum () [inline]
void MembershipBookkeeping::SyncSourceLink::initSequence (uint16 seqnum)[inline]
Start a new sequence of received packets.
void MembershipBookkeeping::SyncSourceLink::initStats ()
bool MembershipBookkeeping::SyncSourceLink::isValid () const [inline]
void MembershipBookkeeping::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.
Parameters
pl Link structure for packet inserted into the queue.
void MembershipBookkeeping::SyncSourceLink::setBadSeqNum (uint32 seq)[inline]
void MembershipBookkeeping::SyncSourceLink::setBaseSeqNum (uint16 seqnum)[inline]
void MembershipBookkeeping::SyncSourceLink::setCumulativePacketLost (uint32pl) [inline]
void MembershipBookkeeping::SyncSourceLink::setExtendedMaxSeqNum (uint32seq) [inline]
void MembershipBookkeeping::SyncSourceLink::setFirst (IncomingRTPPktLink *fp) [inline]
void MembershipBookkeeping::SyncSourceLink::setFractionLost (uint8 fl)[inline]
void MembershipBookkeeping::SyncSourceLink::setInitialDataTime (timeval it)[inline]
void MembershipBookkeeping::SyncSourceLink::setInitialDataTimestamp (uint32ts) [inline]
void MembershipBookkeeping::SyncSourceLink::setJitter (float j) [inline]
void MembershipBookkeeping::SyncSourceLink::setLast (IncomingRTPPktLink *lp) [inline]
void MembershipBookkeeping::SyncSourceLink::setLastPacketTransitTime(uint32 time) [inline]
void MembershipBookkeeping::SyncSourceLink::setMaxSeqNum (uint16 max)[inline]
Set the highest valid sequence number recived.
Parameters
max Sequence number.
void MembershipBookkeeping::SyncSourceLink::setNext (SyncSourceLink * ns)[inline]
void MembershipBookkeeping::SyncSourceLink::setNextCollis (SyncSourceLink *ns) [inline]
void MembershipBookkeeping::SyncSourceLink::setPrev (SyncSourceLink * ps)[inline]
void MembershipBookkeeping::SyncSourceLink::setPrevConflict (InetAddress &addr, tpport_t dataPort, tpport_t controlPort)
Get conflicting address.
void MembershipBookkeeping::SyncSourceLink::setProbation (uint8 p) [inline]
void MembershipBookkeeping::SyncSourceLink::setReceiverInfo (unsigned char* ri)
void MembershipBookkeeping::SyncSourceLink::setSenderInfo (unsigned char *si)
Member Data Documentation
uint32 MembershipBookkeeping::SyncSourceLink::badSeqNum
uint16 MembershipBookkeeping::SyncSourceLink::baseSeqNum
uint32 MembershipBookkeeping::SyncSourceLink::cumulativePacketLost
uint32 MembershipBookkeeping::SyncSourceLink::expectedPrior
uint32 MembershipBookkeeping::SyncSourceLink::extendedMaxSeqNum
IncomingRTPPktLink* MembershipBookkeeping::SyncSourceLink::first
bool MembershipBookkeeping::SyncSourceLink::flag
uint8 MembershipBookkeeping::SyncSourceLink::fractionLost
timeval MembershipBookkeeping::SyncSourceLink::initialDataTime
uint32 MembershipBookkeeping::SyncSourceLink::initialDataTimestamp
float MembershipBookkeeping::SyncSourceLink::jitter
IncomingRTPPktLink * MembershipBookkeeping::SyncSourceLink::last
timeval MembershipBookkeeping::SyncSourceLink::lastPacketTime
uint32 MembershipBookkeeping::SyncSourceLink::lastPacketTransitTime
timeval MembershipBookkeeping::SyncSourceLink::lastRTCPPacketTime
timeval MembershipBookkeeping::SyncSourceLink::lastRTCPSRTime
uint16 MembershipBookkeeping::SyncSourceLink::maxSeqNum
MembershipBookkeeping* MembershipBookkeeping::SyncSourceLink::membership
SyncSourceLink * MembershipBookkeeping::SyncSourceLink::next
SyncSourceLink* MembershipBookkeeping::SyncSourceLink::nextCollis
uint32 MembershipBookkeeping::SyncSourceLink::obsOctetCount
uint32 MembershipBookkeeping::SyncSourceLink::obsPacketCount
SyncSourceLink* MembershipBookkeeping::SyncSourceLink::prev
ConflictingTransportAddress*MembershipBookkeeping::SyncSourceLink::prevConflict
uint8 MembershipBookkeeping::SyncSourceLink::probation
uint32 MembershipBookkeeping::SyncSourceLink::receivedPrior
unsigned char* MembershipBookkeeping::SyncSourceLink::receiverInfo
unsigned char* MembershipBookkeeping::SyncSourceLink::senderInfo
uint32 MembershipBookkeeping::SyncSourceLink::seqNumAccum
const uint32 MembershipBookkeeping::SyncSourceLink::SEQNUMMOD [static]
SyncSource* MembershipBookkeeping::SyncSourceLink::source
Author
Generated automatically by Doxygen for ccRTP from the source code.