fix
[enigma2.git] / lib / service / servicefs.h
index d8e77609d511941e20dbaa840b328fcfcbbb2789..46e8b890df61c1deeb4fac81158cbb3f7c03ccce 100644 (file)
@@ -5,7 +5,7 @@
 
 class eServiceFactoryFS: public iServiceHandler
 {
-DECLARE_REF;
+DECLARE_REF(eServiceFactoryFS);
 public:
        eServiceFactoryFS();
        virtual ~eServiceFactoryFS();
@@ -15,22 +15,29 @@ public:
        RESULT play(const eServiceReference &, ePtr<iPlayableService> &ptr);
        RESULT record(const eServiceReference &, ePtr<iRecordableService> &ptr);
        RESULT list(const eServiceReference &, ePtr<iListableService> &ptr);
-       RESULT info(const eServiceReference &, ePtr<iServiceInformation> &ptr);
+       RESULT info(const eServiceReference &, ePtr<iStaticServiceInformation> &ptr);
+       RESULT offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr);
 private:
-       ePtr<iServiceInformation> m_service_information;
+       ePtr<iStaticServiceInformation> m_service_information;
 };
 
 class eServiceFS: public iListableService
 {
-DECLARE_REF;
+DECLARE_REF(eServiceFS);
 private:
        std::string path;
        friend class eServiceFactoryFS;
        eServiceFS(const char *path);
+       
+       int m_list_valid;
+       std::list<eServiceReference> m_list;
 public:
        virtual ~eServiceFS();
        
        RESULT getContent(std::list<eServiceReference> &list);
+       RESULT getNext(eServiceReference &ptr);
+       int compareLessEqual(const eServiceReference &, const eServiceReference &);
+       RESULT startEdit(ePtr<iMutableServiceList> &);
 };
 
 #endif