1 // Copyright (C) 2000-2005 Open Source Telecom Corporation.
2 // Copyright (C) 2006-2014 David Sugar, Tycho Softworks.
3 // Copyright (C) 2015 Cherokees of Idaho.
4 //
5 // This program is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation; either version 2 of the License, or
8 // (at your option) any later version.
9 //
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
14 //
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software
17 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18
19 #include <cc++/slog.h>
21
22 using namespace std;
23
24 #ifdef CCXX_NAMESPACES
25 namespace ost {
26 using namespace std;
27 #endif
28
30
32 {
33 next = first;
34 first = this;
35 }
36
39 {
46 }
47
49 {
52 sleep(500);
55 }
56
58 {
60
61 slog(Slog::levelDebug) <<
"hello(" << src.
getID() <<
") ";
64
65 while(event)
66 {
67 event->gotHello(src);
68 event = event->next;
69 }
70 }
71
73 {
75
76 slog(Slog::levelDebug) <<
"bye(" << src.
getID() <<
") ";
79 slog() << std::endl;
80
81 while(event)
82 {
83 event->gotGoodbye(src, reason);
84 event = event->next;
85 }
86 }
87
89
90 #ifdef CCXX_NAMESPACES
91 }
92 #endif
Synchronization source in an RTP session.
Canonical end-point identifier.
microtimeout_t getExpire(void)
Get packet expiration timer.
size_t dispatchBYE(const std::string &str)
Process RTP Events for plugins and special purpose classes.
A class of objects representing remote participants (RTP applications) in a multimedia session...
Participant * getParticipant() const
Get the participant this synchronization source is asociated to.
This is the base session stack that will maintain all network audio activity.
void onGotHello(const SyncSource &src)
This template class adds the threading aspect to the RTPSessionBase template in one of the many possi...
void exit(const char *reason)
void onGotGoodbye(const SyncSource &src, const std::string &reason)
microtimeout_t getTimer(void)
Get stack timer.
const std::string & getSDESItem(SDESItemType type) const
Get the value of an SDES item.