Merge branch 'master' of fraxinas@git.opendreambox.org:/git/enigma2
[enigma2.git] / lib / dvb / db.h
index 430a5af0b48b692dd837458a43c2373886f28ad1..55e008fb0a7826c850f5d2eaedfe11f7861a5fe4 100644 (file)
@@ -2,16 +2,16 @@
 #define __db_h
 
 #ifndef SWIG
-#include <lib/base/eptrlist.h>
 #include <lib/dvb/idvb.h>
+#include <lib/base/eptrlist.h>
 #include <set>
 class ServiceDescriptionSection;
 #endif
 
 class eDVBDB: public iDVBChannelList
 {
+       DECLARE_REF(eDVBDB);
        static eDVBDB *instance;
-DECLARE_REF(eDVBDB);
        friend class eDVBDBQuery;
        friend class eDVBDBBouquetQuery;
        friend class eDVBDBSatellitesQuery;
@@ -38,9 +38,13 @@ public:
        RESULT removeService(const eServiceReference &service);
        RESULT addFlag(const eServiceReference &service, unsigned int flagmask);
        RESULT removeFlag(const eServiceReference &service, unsigned int flagmask);
+       PyObject *readSatellites(SWIG_PYOBJECT(ePyObject) sat_list, SWIG_PYOBJECT(ePyObject) sat_dict, SWIG_PYOBJECT(ePyObject) tp_dict);
+       PyObject *readTerrestrials(SWIG_PYOBJECT(ePyObject) ter_list, SWIG_PYOBJECT(ePyObject) tp_dict);
+       PyObject *readCables(SWIG_PYOBJECT(ePyObject) cab_list, SWIG_PYOBJECT(ePyObject) tp_dict);
 #ifndef SWIG
        RESULT removeFlags(unsigned int flagmask, eDVBChannelID chid, unsigned int orb_pos);
        RESULT removeServices(eDVBChannelID chid, unsigned int orb_pos);
+       RESULT removeServices(iDVBFrontendParameters *feparm);
 
        RESULT addChannelToList(const eDVBChannelID &id, iDVBFrontendParameters *feparm);
        RESULT removeChannel(const eDVBChannelID &id);
@@ -55,14 +59,16 @@ public:
 
        RESULT getBouquet(const eServiceReference &ref, eBouquet* &bouquet);
 //////
-       void saveServicelist();
        void loadBouquet(const char *path);
        eServiceReference searchReference(int tsid, int onid, int sid);
        eDVBDB();
        virtual ~eDVBDB();
 #endif
+       void loadServicelist(const char *filename);
        static eDVBDB *getInstance() { return instance; }
        void reloadServicelist();
+       void saveServicelist();
+       void saveServicelist(const char *file);
        void reloadBouquets();
 };
 
@@ -70,7 +76,7 @@ public:
        // we have to add a possibility to invalidate here.
 class eDVBDBQueryBase: public iDVBChannelListQuery
 {
-DECLARE_REF(eDVBDBQueryBase);
+       DECLARE_REF(eDVBDBQueryBase);
 protected:
        ePtr<eDVBDB> m_db;
        ePtr<eDVBChannelQuery> m_query;