X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/2d0d9ad2cf4891c5386a3d8ca040c2738b5c2532..a22c31de792a36f645c9c91d954e9d8e30f82064:/lib/dvb/dvb.h?ds=sidebyside diff --git a/lib/dvb/dvb.h b/lib/dvb/dvb.h index 037c1974..b23d047f 100644 --- a/lib/dvb/dvb.h +++ b/lib/dvb/dvb.h @@ -125,9 +125,9 @@ private: eSmartPtrList m_frontend; eSmartPtrList m_demux; }; - #endif // SWIG +SWIG_IGNORE(eDVBResourceManager); class eDVBResourceManager: public iObject, public Object { DECLARE_REF(eDVBResourceManager); @@ -149,7 +149,7 @@ class eDVBResourceManager: public iObject, public Object combinations. this will be evaluated here. */ RESULT allocateFrontend(ePtr &fe, ePtr &feparm); - RESULT allocateFrontendByIndex(ePtr &fe, int index); + RESULT allocateFrontendByIndex(ePtr &fe, int slot_index); /* allocate a demux able to filter on the selected frontend. */ RESULT allocateDemux(eDVBRegisteredFrontend *fe, ePtr &demux, int cap); @@ -181,11 +181,11 @@ class eDVBResourceManager: public iObject, public Object Connection m_cached_channel_state_changed_conn; eTimer m_releaseCachedChannelTimer; void DVBChannelStateChanged(iDVBChannel*); - void releaseCachedChannel(); void feStateChanged(); #ifndef SWIG public: #endif + void releaseCachedChannel(); eDVBResourceManager(); virtual ~eDVBResourceManager(); @@ -197,23 +197,34 @@ public: errNoDemux = -2, errChidNotFound = -3 }; - + RESULT connectChannelAdded(const Slot1 &channelAdded, ePtr &connection); int canAllocateChannel(const eDVBChannelID &channelid, const eDVBChannelID &ignore); /* allocate channel... */ RESULT allocateChannel(const eDVBChannelID &channelid, eUsePtr &channel); RESULT allocatePVRChannel(eUsePtr &channel); + static RESULT getInstance(ePtr &); #ifdef SWIG public: #endif PSignal1 frontendUseMaskChanged; - RESULT allocateRawChannel(eUsePtr &, int frontend_index); - static RESULT getInstance(ePtr &); + SWIG_VOID(RESULT) allocateRawChannel(eUsePtr &SWIG_OUTPUT, int slot_index); + PyObject *setFrontendSlotInformations(SWIG_PYOBJECT(ePyObject) list); }; -TEMPLATE_TYPEDEF(ePtr, eDVBResourceManagerPtr); +SWIG_TEMPLATE_TYPEDEF(ePtr, eDVBResourceManager); +SWIG_EXTEND(ePtr, + static ePtr getInstance() + { + extern ePtr NewResourceManagerPtr(void); + return NewResourceManagerPtr(); + } +); + #ifndef SWIG +class eDVBChannelFilePush; + /* iDVBPVRChannel includes iDVBChannel. don't panic. */ class eDVBChannel: public iDVBPVRChannel, public iFilePushScatterGather, public Object { @@ -265,7 +276,7 @@ private: ePtr m_conn_frontendStateChanged; /* for PVR playback */ - eFilePushThread *m_pvr_thread; + eDVBChannelFilePush *m_pvr_thread; void pvrEvent(int event); int m_pvr_fd_dst; @@ -289,6 +300,6 @@ private: void AddUse(); void ReleaseUse(); }; - #endif // SWIG + #endif