From a33ff213255db7f59090f70235ec06c502e2a2ce Mon Sep 17 00:00:00 2001 From: Andreas Monzner Date: Thu, 30 Jun 2005 14:52:13 +0000 Subject: add dvb time handling with transponder time correction algo.. this use a rtc, when avail, mainloop changes for set linux time --- lib/dvb/dvb.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'lib/dvb/dvb.cpp') diff --git a/lib/dvb/dvb.cpp b/lib/dvb/dvb.cpp index e0df1dc1..f1f5580a 100644 --- a/lib/dvb/dvb.cpp +++ b/lib/dvb/dvb.cpp @@ -321,6 +321,7 @@ RESULT eDVBResourceManager::addChannel(const eDVBChannelID &chid, eDVBChannel *c { eDebug("add channel %p", ch); m_active_channels.push_back(active_channel(chid, ch)); + /* emit */ m_channelAdded(ch); return 0; } @@ -333,6 +334,7 @@ RESULT eDVBResourceManager::removeChannel(eDVBChannel *ch) { i = m_active_channels.erase(i); ++cnt; + /* emit */ m_channelRemoved(ch); } else ++i; } @@ -342,6 +344,24 @@ RESULT eDVBResourceManager::removeChannel(eDVBChannel *ch) return -ENOENT; } +RESULT eDVBResourceManager::connectChannelAdded(const Slot1 &channelAdded, ePtr &connection) +{ + connection = new eConnection((eDVBResourceManager*)this, m_channelAdded.connect(channelAdded)); + return 0; +} + +RESULT eDVBResourceManager::connectChannelRemoved(const Slot1 &channelRemoved, ePtr &connection) +{ + connection = new eConnection((eDVBResourceManager*)this, m_channelRemoved.connect(channelRemoved)); + return 0; +} + +RESULT eDVBResourceManager::connectChannelRunning(const Slot1 &channelRunning, ePtr &connection) +{ + connection = new eConnection((eDVBResourceManager*)this, m_channelRunning.connect(channelRunning)); + return 0; +} + DEFINE_REF(eDVBChannel); eDVBChannel::eDVBChannel(eDVBResourceManager *mgr, eDVBAllocatedFrontend *frontend, eDVBAllocatedDemux *demux): m_state(state_idle), m_mgr(mgr) -- cgit v1.2.3