rtpsessionpool(3)

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.

SYNOPSIS

#include <pool.h>
Inherits RTPSessionBaseHandler.
Inherited by SingleRTPSessionPool.
Public Member Functions
RTPSessionPool ()
virtual ~RTPSessionPool ()
bool addSession (RTPSessionBase &session)
bool removeSession (RTPSessionBase &session)
size_t getPoolLength () const
virtual void startRunning ()=0
bool isActive ()
Protected Types
typedef std::list< SessionListElement * >::iterator PoolIterator
Protected Member Functions
void setActive ()
timeval getPoolTimeout ()
void setPoolTimeout (int sec, int usec)
void setPoolTimeout (struct timeval to)
Protected Attributes
std::list< SessionListElement * > sessionList
ThreadLock poolLock
fd_set recvSocketSet
SOCKET highestSocket

Detailed Description

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.

In order to use the RTP session 'pool' you just have to build
RTPSessionBase objects for each RTP session (instead of RTPSession objects). Then, add the RTPSessionBase objects to an RTP session 'pool' and call startRunning() method of the session pool.

Author:
Federico Montesino Pouzols <fedemp@altern.org>

Member Typedef Documentation

typedef std::list<SessionListElement*>::iterator
RTPSessionPool::PoolIterator [protected]

Constructor & Destructor Documentation

RTPSessionPool::RTPSessionPool () virtual RTPSessionPool::~RTPSessionPool () [inline, virtual]

Member Function Documentation

bool RTPSessionPool::addSession (RTPSessionBase & session) bool RTPSessionPool::removeSession (RTPSessionBase & session) size_t RTPSessionPool::getPoolLength () const virtual void RTPSessionPool::startRunning () [pure virtual]
Implemented in SingleRTPSessionPool.
bool RTPSessionPool::isActive () [inline] void RTPSessionPool::setActive () [inline, protected] timeval RTPSessionPool::getPoolTimeout () [inline, protected] void RTPSessionPool::setPoolTimeout (int sec, int usec) [inline, protected] void RTPSessionPool::setPoolTimeout (struct timeval to) [inline, protected]

Member Data Documentation

std::list<SessionListElement*> RTPSessionPool::sessionList [protected] ThreadLock RTPSessionPool::poolLock [mutable, protected] fd_set RTPSessionPool::recvSocketSet [protected] SOCKET RTPSessionPool::highestSocket [protected]

Author

Generated automatically by Doxygen for ccRTP from the source code.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout