.TH "RTPSessionPool" 3 "Sat Oct 27 2018" "ccRTP" \" -*- nroff -*- .ad l .nh .SH NAME RTPSessionPool \- This class is a base class for classes that define a group of RTP sessions that will be served by one or more execution threads\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits \fBRTPSessionBaseHandler\fP\&. .PP Inherited by \fBSingleRTPSessionPool\fP\&. .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBRTPSessionPool\fP ()" .br .ti -1c .RI "virtual \fB~RTPSessionPool\fP ()" .br .ti -1c .RI "bool \fBaddSession\fP (\fBRTPSessionBase\fP &session)" .br .ti -1c .RI "bool \fBremoveSession\fP (\fBRTPSessionBase\fP &session)" .br .ti -1c .RI "size_t \fBgetPoolLength\fP () const" .br .ti -1c .RI "virtual void \fBstartRunning\fP ()=0" .br .ti -1c .RI "bool \fBisActive\fP ()" .br .in -1c .SS "Protected Types" .in +1c .ti -1c .RI "typedef std::list< \fBSessionListElement\fP * >::iterator \fBPoolIterator\fP" .br .in -1c .SS "Protected Member Functions" .in +1c .ti -1c .RI "void \fBsetActive\fP ()" .br .ti -1c .RI "timeval \fBgetPoolTimeout\fP ()" .br .ti -1c .RI "void \fBsetPoolTimeout\fP (int sec, int usec)" .br .ti -1c .RI "void \fBsetPoolTimeout\fP (struct timeval to)" .br .in -1c .SS "Protected Attributes" .in +1c .ti -1c .RI "std::list< \fBSessionListElement\fP * > \fBsessionList\fP" .br .ti -1c .RI "ThreadLock \fBpoolLock\fP" .br .ti -1c .RI "fd_set \fBrecvSocketSet\fP" .br .ti -1c .RI "SOCKET \fBhighestSocket\fP" .br .in -1c .SH "Detailed Description" .PP This class is a base class for classes that define a group of RTP sessions that will be served by one or more execution threads\&. Derived classes are responsible for serving each RTP session with a thread at least\&. .PP In order to use the RTP session 'pool' you just have to build \fBRTPSessionBase\fP objects for each RTP session (instead of RTPSession objects)\&. Then, add the \fBRTPSessionBase\fP objects to an RTP session 'pool' and call \fBstartRunning()\fP method of the session pool\&. .PP \fBAuthor:\fP .RS 4 Federico Montesino Pouzols fedemp@altern.org .RE .PP .SH "Member Typedef Documentation" .PP .SS "typedef std::list<\fBSessionListElement\fP*>::iterator \fBRTPSessionPool::PoolIterator\fP\fC [protected]\fP" .SH "Constructor & Destructor Documentation" .PP .SS "RTPSessionPool::RTPSessionPool ()" .SS "virtual RTPSessionPool::~RTPSessionPool ()\fC [inline]\fP, \fC [virtual]\fP" .SH "Member Function Documentation" .PP .SS "bool RTPSessionPool::addSession (\fBRTPSessionBase\fP & session)" .SS "size_t RTPSessionPool::getPoolLength () const" .SS "timeval RTPSessionPool::getPoolTimeout ()\fC [inline]\fP, \fC [protected]\fP" .SS "bool RTPSessionPool::isActive ()\fC [inline]\fP" .SS "bool RTPSessionPool::removeSession (\fBRTPSessionBase\fP & session)" .SS "void RTPSessionPool::setActive ()\fC [inline]\fP, \fC [protected]\fP" .SS "void RTPSessionPool::setPoolTimeout (int sec, int usec)\fC [inline]\fP, \fC [protected]\fP" .SS "void RTPSessionPool::setPoolTimeout (struct timeval to)\fC [inline]\fP, \fC [protected]\fP" .SS "virtual void RTPSessionPool::startRunning ()\fC [pure virtual]\fP" .PP Implemented in \fBSingleRTPSessionPool\fP\&. .SH "Member Data Documentation" .PP .SS "SOCKET RTPSessionPool::highestSocket\fC [protected]\fP" .SS "ThreadLock RTPSessionPool::poolLock\fC [mutable]\fP, \fC [protected]\fP" .SS "fd_set RTPSessionPool::recvSocketSet\fC [protected]\fP" .SS "std::list<\fBSessionListElement\fP*> RTPSessionPool::sessionList\fC [protected]\fP" .SH "Author" .PP Generated automatically by Doxygen for ccRTP from the source code\&.