Go to the documentation of this file.
42 #ifndef CCXX_RTP_POOL_H
43 #define CCXX_RTP_POOL_H
57 {
return s.getSchedulingTimeout(); }
60 {
return s.getRTCPCheckInterval(); }
64 {
return s.takeInDataPacket(); }
68 {
return s.dispatchDataPacket(); }
72 { s.controlReceptionService(); }
76 { s.controlTransmissionService(); }
79 {
return s.getDataRecvSocket(); }
82 {
return s.getControlRecvSocket(); }
106 : elem(e), cleared(false) {
169 getPoolLength()
const;
171 virtual void startRunning() = 0;
174 {
return poolActive; }
178 { poolActive =
true; }
181 {
return poolTimeout; }
184 { poolTimeout.tv_sec = sec; poolTimeout.tv_usec = usec; }
187 { poolTimeout = to; }
201 mutable bool poolActive;
234 #endif //CCXX_RTP_POOL_H
bool operator()(SessionListElement *e)
Definition: pool.h:135
fd_set recvSocketSet
Definition: pool.h:195
ThreadLock poolLock
Definition: pool.h:192
void controlReceptionService(RTPSessionBase &s)
Definition: pool.h:71
void setPoolTimeout(int sec, int usec)
Definition: pool.h:183
bool isCleared()
Definition: pool.h:115
virtual ~RTPSessionPool()
Definition: pool.h:159
std::list< SessionListElement * > sessionList
Definition: pool.h:189
uint32 microtimeout_t
Time interval expressed in microseconds.
Definition: base.h:67
std::list< SessionListElement * >::iterator PoolIterator
Definition: pool.h:190
SessionListElement(RTPSessionBase *e)
Definition: pool.h:105
size_t takeInDataPacket(RTPSessionBase &s)
Definition: pool.h:63
timeval getPoolTimeout()
Definition: pool.h:180
microtimeout_t getSchedulingTimeout(RTPSessionBase &s)
Definition: pool.h:56
void clear()
Definition: pool.h:109
TRTPSessionBase RTPSessionBase
Definition: pool.h:51
SOCKET getDataRecvSocket(RTPSessionBase &s) const
Definition: pool.h:78
This class is a base class for classes that define a group of RTP sessions that will be served by one...
Definition: pool.h:154
RTP protocol stack based on Common C++.
bool isActive()
Definition: pool.h:173
void controlTransmissionService(RTPSessionBase &s)
Definition: pool.h:75
RTPSessionBase * elem
Definition: pool.h:131
Generic and audio/video profile specific RTP interface of ccRTP.
~SingleRTPSessionPool()
Definition: pool.h:218
size_t dispatchDataPacket(RTPSessionBase &s)
Definition: pool.h:67
SingleRTPSessionPool(int pri=0)
Definition: pool.h:213
RTPSessionBase * get()
Definition: pool.h:119
void startRunning()
Definition: pool.h:221
PredEquals(RTPSessionBase *e)
Definition: pool.h:133
SOCKET highestSocket
Definition: pool.h:196
SOCKET getControlRecvSocket(RTPSessionBase &s) const
Definition: pool.h:81
void setActive()
Definition: pool.h:177
void setPoolTimeout(struct timeval to)
Definition: pool.h:186
Class for tracking session status.
Definition: pool.h:92
timeval getRTCPCheckInterval(RTPSessionBase &s)
Definition: pool.h:59
std equality for SessionListElement objects.
Definition: pool.h:128