PyObject *getContent(const char* formatstr, bool sorted=false);
RESULT getContent(std::list<eServiceReference> &list, bool sorted=false);
RESULT getNext(eServiceReference &ptr);
- int compareLessEqual(const eServiceReference &a, const eServiceReference &b);
+ inline int compareLessEqual(const eServiceReference &a, const eServiceReference &b);
RESULT startEdit(ePtr<iMutableServiceList> &);
RESULT flushChanges();
eBouquet *m_bouquet;
};
+inline int eDVBServiceList::compareLessEqual(const eServiceReference &a, const eServiceReference &b)
+{
+ return m_query->compareLessEqual((const eServiceReferenceDVB&)a, (const eServiceReferenceDVB&)b);
+}
+
class eDVBServiceBase: public iFrontendInformation
{
protected:
- eDVBServicePMTHandler m_service_handler ;
+ eDVBServicePMTHandler m_service_handler;
public:
// iFrontendInformation
int getFrontendInfo(int w);
// iCueSheet
PyObject *getCutList();
- void setCutList(PyObject *);
+ void setCutList(SWIG_PYOBJECT(ePyObject));
void setCutListEnable(int enable);
// iSubtitleOutput
- RESULT enableSubtitles(eWidget *parent, PyObject *entry);
+ RESULT enableSubtitles(eWidget *parent, SWIG_PYOBJECT(ePyObject) entry);
RESULT disableSubtitles(eWidget *parent);
PyObject *getSubtitleList();
+ PyObject *getCachedSubtitle();
// iAudioDelay
int getAC3Delay();
ePtr<iTSMPEGDecoder> m_decoder;
int m_is_primary;
int m_have_video_pid;
+ int m_tune_state;
/* in timeshift mode, we essentially have two channels, and thus pmt handlers. */
eDVBServicePMTHandler m_service_handler_timeshift;
ePtr<eDVBRadioTextParser> m_radiotext_parser;
ePtr<eConnection> m_radiotext_updated_connection;
void radioTextUpdated();
+
+ ePtr<eConnection> m_video_event_connection;
+ void video_event(struct iTSMPEGDecoder::videoEvent);
+ struct iTSMPEGDecoder::videoEvent m_videoEventData;
+};
+
+class eStaticServiceDVBBouquetInformation: public iStaticServiceInformation
+{
+ DECLARE_REF(eStaticServiceDVBBouquetInformation);
+ eServiceReference m_playable_service;
+public:
+ eServiceReference &getPlayableService() { return m_playable_service; }
+ RESULT getName(const eServiceReference &ref, std::string &name);
+ int getLength(const eServiceReference &ref);
+ int isPlayable(const eServiceReference &ref, const eServiceReference &ignore);
+ RESULT getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &ptr, time_t start_time);
};
#endif