Man page - membershipbookkeeping(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
NAMESYNOPSIS
Classes
Public Member Functions
Protected Member Functions
Static Protected Attributes
Additional Inherited Members
Detailed Description
Constructor & Destructor Documentation
MembershipBookkeeping::MembershipBookkeeping (uint32 initialSize =defaultMembersHashSize) [protected]
virtual MembershipBookkeeping::˜MembershipBookkeeping () [inline],[protected], [virtual]
Member Function Documentation
bool MembershipBookkeeping::BYESource (uint32 ssrc) [protected]
size_t MembershipBookkeeping::getDefaultMembersHashSize () [inline]
SyncSourceLink * MembershipBookkeeping::getFirst () [inline], [protected]
SyncSourceLink * MembershipBookkeeping::getLast () [inline], [protected]
SyncSourceLink * MembershipBookkeeping::getLink (const SyncSource & source)const [inline], [protected]
uint32 MembershipBookkeeping::getMembersCount () [inline], [protected]
uint32 MembershipBookkeeping::getSendersCount () [inline], [protected]
SyncSourceLink * MembershipBookkeeping::getSourceBySSRC (uint32 ssrc, bool& created) [protected]
bool MembershipBookkeeping::isMine (const SyncSource & source) const[inline], [protected]
bool MembershipBookkeeping::isRegistered (uint32 ssrc) [protected]
bool MembershipBookkeeping::removeSource (uint32 ssrc) [protected]
void MembershipBookkeeping::setMembersCount (uint32 n) [inline],[protected]
Member Data Documentation
const size_t MembershipBookkeeping::defaultMembersHashSize [static],[protected]
const uint32 MembershipBookkeeping::SEQNUMMOD [static], [protected]
Author
NAME
MembershipBookkeeping - Controls the group membership in the current session.
SYNOPSIS
#include <iqueue.h>
Inherits SyncSourceHandler , ParticipantHandler , ApplicationHandler , ConflictHandler , and Members .
Inherited by IncomingDataQueue [protected] .
Classes
struct
IncomingRTPPktLink
Incoming RTP data packets control structure within the
incoming packet queue class.
struct
SyncSourceLink
Synchronization Source internal handler within the incoming
packets queue.
Public Member Functions
size_t getDefaultMembersHashSize ()
Public Member Functions inherited from SyncSourceHandler
void *
getLink
(const
SyncSource
&source) const
This requires
SyncSource
-
SyncSourceHandler
friendship.
void
setLink
(
SyncSource
&source, void
*link)
void
setParticipant
(
SyncSource
&source,
Participant
&p)
void
setState
(
SyncSource
&source,
SyncSource::State
ns)
void
setSender
(
SyncSource
&source, bool
active)
void
setDataTransportPort
(
SyncSource
&source, tpport_t p)
void
setControlTransportPort
(
SyncSource
&source, tpport_t p)
void
setNetworkAddress
(
SyncSource
&source, InetAddress addr)
Public Member Functions inherited from ParticipantHandler
void
setSDESItem
(
Participant
*part,
SDESItemType
item, const
std::string &val)
void
setPRIVPrefix
(
Participant
*part, const
std::string val)
Public Member Functions inherited from ApplicationHandler
void
addParticipant
(
RTPApplication
&app,
Participant
&part)
void
removeParticipant
(
RTPApplication
&app, RTPApplication::ParticipantLink *pl)
Public Member Functions inherited from ConflictHandler
ConflictingTransportAddress
*
searchDataConflict
(InetAddress na, tpport_t dtp)
ConflictingTransportAddress
*
searchControlConflict
(InetAddress na, tpport_t ctp)
void
updateConflict
(
ConflictingTransportAddress
&ca)
void
addConflict
(const InetAddress &na, tpport_t
dtp, tpport_t ctp)
Protected Member Functions
MembershipBookkeeping
(uint32 initialSize=
defaultMembersHashSize
)
The initial size is a hint to allocate the resources needed
in order to keep the members’ identifiers and
associated information.
virtual
˜MembershipBookkeeping
()
Purges all RTPSource structures created during the session,
as well as the hash table and the list of sources.
SyncSourceLink
*
getLink
(const
SyncSource
&source) const
bool
isMine
(const
SyncSource
&source)
const
Get whether a synchronization source is recorded in this
membership controller.
bool
isRegistered
(uint32 ssrc)
Returns whether there is already a synchronizacion source
with ’ssrc’ SSRC identifier.
SyncSourceLink
*
getSourceBySSRC
(uint32 ssrc,
bool &created)
Get the description of a source by its
ssrc
identifier.
bool
BYESource
(uint32 ssrc)
Mark the source identified by
ssrc
as having sent a
BYE packet.
bool
removeSource
(uint32 ssrc)
Remove the description of the source identified by
ssrc
SyncSourceLink
*
getFirst
()
SyncSourceLink
*
getLast
()
uint32
getMembersCount
()
void
setMembersCount
(uint32 n)
uint32
getSendersCount
()
Protected Member Functions inherited from SyncSourceHandler
SyncSourceHandler
()
virtual
˜SyncSourceHandler
()
Protected Member Functions inherited from ParticipantHandler
ParticipantHandler
()
virtual
˜ParticipantHandler
()
Protected Member Functions inherited from ApplicationHandler
ApplicationHandler
()
virtual
˜ApplicationHandler
()
Protected Member Functions inherited from ConflictHandler
ConflictHandler
()
virtual
˜ConflictHandler
()
Static Protected Attributes
static const
size_t
defaultMembersHashSize
static const uint32
SEQNUMMOD
Additional Inherited Members
Protected Attributes inherited from ConflictHandler
ConflictingTransportAddress
*
firstConflict
ConflictingTransportAddress
*
lastConflict
Detailed Description
Controls the group membership in the current session.
For now, this class implements only a hash table of members, but its design and relation with other classes is intented to support group membership sampling in case scalability problems arise.
Author
Federico Montesino Pouzols fedemp@altern.org
Constructor & Destructor Documentation
MembershipBookkeeping::MembershipBookkeeping (uint32 initialSize =defaultMembersHashSize) [protected]
The initial size is a hint to allocate the resources needed in order to keep the members’ identifiers and associated information. Although ccRTP will reallocate resources when it becomes necessary, a good hint may save a lot of unpredictable time penalties.
Parameters
initialSize an estimation of how many participants the session will consist of.
virtual MembershipBookkeeping::˜MembershipBookkeeping () [inline],[protected], [virtual]
Purges all RTPSource structures created during the session, as well as the hash table and the list of sources.
Member Function Documentation
bool MembershipBookkeeping::BYESource (uint32 ssrc) [protected]
Mark the source identified by ssrc as having sent a BYE packet. It is not deleted until a timeout expires, so that in case some packets from this source arrive a bit later the source is not inserted again in the table of known sources.
Returns
true if the source had been previously identified. false if it was not in the table of known sources.
size_t MembershipBookkeeping::getDefaultMembersHashSize () [inline]
SyncSourceLink * MembershipBookkeeping::getFirst () [inline], [protected]
SyncSourceLink * MembershipBookkeeping::getLast () [inline], [protected]
SyncSourceLink * MembershipBookkeeping::getLink (const SyncSource & source)const [inline], [protected]
uint32 MembershipBookkeeping::getMembersCount () [inline], [protected]
uint32 MembershipBookkeeping::getSendersCount () [inline], [protected]
SyncSourceLink * MembershipBookkeeping::getSourceBySSRC (uint32 ssrc, bool& created) [protected]
Get the description of a source by its ssrc identifier.
Parameters
ssrc
SSRC identifier, in
host order.
created
whether a new source has been created.
Returns
Pointer to the SyncSource object identified by ssrc .
bool MembershipBookkeeping::isMine (const SyncSource & source) const[inline], [protected]
Get whether a synchronization source is recorded in this membership controller.
bool MembershipBookkeeping::isRegistered (uint32 ssrc) [protected]
Returns whether there is already a synchronizacion source with ’ssrc’ SSRC identifier.
bool MembershipBookkeeping::removeSource (uint32 ssrc) [protected]
Remove the description of the source identified by ssrc
Returns
whether the source has been actually removed or it did not exist.
void MembershipBookkeeping::setMembersCount (uint32 n) [inline],[protected]
Member Data Documentation
const size_t MembershipBookkeeping::defaultMembersHashSize [static],[protected]
const uint32 MembershipBookkeeping::SEQNUMMOD [static], [protected]
Author
Generated automatically by Doxygen for ccRTP from the source code.