implement readFrontendData method to get a python dictionary containing data
[enigma2.git] / lib / dvb / idvb.h
index eacc49290bf5091f1d662cd362843a74d903820f..955688b95e679a306dea07336624023262c2561d 100644 (file)
@@ -358,9 +358,10 @@ public:
        virtual RESULT setSecSequence(const eSecCommandList &list)=0;
 
        enum {
-               bitErrorRate, signalPower, signalQuality
+               bitErrorRate, signalPower, signalQuality, Locked, Synced
        };
        virtual int readFrontendData(int type)=0;
+       virtual PyObject *readTransponderData(bool original)=0;
 
        virtual RESULT getData(int num, int &data)=0;
        virtual RESULT setData(int num, int val)=0;
@@ -372,7 +373,7 @@ public:
 class iDVBSatelliteEquipmentControl: public iObject
 {
 public:
-       virtual RESULT prepare(iDVBFrontend &frontend, FRONTENDPARAMETERS &parm, eDVBFrontendParametersSatellite &sat, int frontend_id)=0;
+       virtual RESULT prepare(iDVBFrontend &frontend, FRONTENDPARAMETERS &parm, const eDVBFrontendParametersSatellite &sat, int frontend_id)=0;
        virtual int canTune(const eDVBFrontendParametersSatellite &feparm, iDVBFrontend *fe, int frontend_id)=0;
        virtual void setRotorMoving(bool)=0;
 };
@@ -415,6 +416,7 @@ public:
        
                /* direct frontend access for raw channels and/or status inquiries. */
        virtual RESULT getFrontend(ePtr<iDVBFrontend> &frontend)=0;
+       virtual RESULT getCurrentFrontendParameters(ePtr<iDVBFrontendParameters> &)=0;
        
                /* use count handling */
        virtual void AddUse() = 0;
@@ -426,6 +428,7 @@ public:
 typedef long long pts_t;
 
 class iFilePushScatterGather;
+class iTSMPEGDecoder;
 
        /* note that a cue sheet describes the logical positions. thus 
           everything is specified in pts and not file positions */
@@ -442,9 +445,10 @@ public:
        
        void clear();
        void addSourceSpan(const pts_t &begin, const pts_t &end);
+       void commitSpans();
        
        void setSkipmode(const pts_t &ratio); /* 90000 is 1:1 */
-       void setDecodingDemux(iDVBDemux *demux);
+       void setDecodingDemux(iDVBDemux *demux, iTSMPEGDecoder *decoder);
        
                        /* frontend and backend */
        eSingleLock m_lock;
@@ -458,6 +462,7 @@ public:
        pts_t m_skipmode_ratio;
        Signal1<void,int> m_event;
        ePtr<iDVBDemux> m_decoding_demux;
+       ePtr<iTSMPEGDecoder> m_decoder;
 };
 
 class iDVBPVRChannel: public iDVBChannel
@@ -549,6 +554,8 @@ public:
        virtual RESULT setZoom(int what)=0;
        
        virtual RESULT setTrickmode(int what) = 0;
+       
+       virtual RESULT getPTS(int what, pts_t &pts) = 0;
 };
 
 #endif