diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2005-06-30 14:52:13 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2005-06-30 14:52:13 +0000 |
| commit | a33ff213255db7f59090f70235ec06c502e2a2ce (patch) | |
| tree | c8d42ff6b5002bd0f4575a20ce3c294b08c7139d /lib/dvb/dvb.cpp | |
| parent | 62b8a649fcae500c983215fac2e5202916c0195f (diff) | |
| download | enigma2-a33ff213255db7f59090f70235ec06c502e2a2ce.tar.gz enigma2-a33ff213255db7f59090f70235ec06c502e2a2ce.zip | |
add dvb time handling with transponder time correction algo.. this use a rtc, when avail, mainloop changes for set linux time
Diffstat (limited to 'lib/dvb/dvb.cpp')
| -rw-r--r-- | lib/dvb/dvb.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
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<void,eDVBChannel*> &channelAdded, ePtr<eConnection> &connection) +{ + connection = new eConnection((eDVBResourceManager*)this, m_channelAdded.connect(channelAdded)); + return 0; +} + +RESULT eDVBResourceManager::connectChannelRemoved(const Slot1<void,eDVBChannel*> &channelRemoved, ePtr<eConnection> &connection) +{ + connection = new eConnection((eDVBResourceManager*)this, m_channelRemoved.connect(channelRemoved)); + return 0; +} + +RESULT eDVBResourceManager::connectChannelRunning(const Slot1<void,iDVBChannel*> &channelRunning, ePtr<eConnection> &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) |
