add pcr handling
[enigma2.git] / lib / dvb / db.cpp
index 4e0332bac37df3fbfc329142eca498d5ce29f1e0..cdc05fcba8b06116cdd28203c91311b01d3fa5fd 100644 (file)
@@ -30,6 +30,7 @@ eDVBService &eDVBService::operator=(const eDVBService &s)
 RESULT eDVBService::getName(const eServiceReference &ref, std::string &name)
 {
        name = m_service_name;
+       return 0;
 }
 
 int eDVBService::checkFilter(const eServiceReferenceDVB &ref, const eDVBChannelQuery &query)
@@ -330,14 +331,15 @@ RESULT eDVBDB::getService(const eServiceReferenceDVB &reference, ePtr<eDVBServic
 
 RESULT eDVBDB::startQuery(ePtr<iDVBChannelListQuery> &query, eDVBChannelQuery *q)
 {
-       query = new eDVBDBQuery(this, q);
+       query = new eDVBDBQuery(this, eServiceReference(), q);
        return 0;
 }
 
 DEFINE_REF(eDVBDBQuery);
 
-eDVBDBQuery::eDVBDBQuery(eDVBDB *db, eDVBChannelQuery *query): m_db(db), m_query(query)
+eDVBDBQuery::eDVBDBQuery(eDVBDB *db, const eServiceReference &source, eDVBChannelQuery *query): m_db(db), m_query(query)
 {
+               // TODO: use SOURCE ...
        m_cursor = m_db->m_services.begin();
 }
 
@@ -486,12 +488,10 @@ RESULT parseExpression(ePtr<eDVBChannelQuery> &res, std::list<std::string>::cons
        return 0;
 }
 
-RESULT eDVBChannelQuery::compile(ePtr<eDVBChannelQuery> &res, const eServiceReferenceDVB &source, std::string query)
+RESULT eDVBChannelQuery::compile(ePtr<eDVBChannelQuery> &res, std::string query)
 {
        std::list<std::string> tokens;
        
-       m_source = source;
-       
        std::string current_token;
        
 //     eDebug("splitting %s....", query.c_str());