X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/d0899514fa9495013cb73c8ead8c5a5baaf49111..7709c1d61e799fa06a257f1d6b9c23ae205fe0c9:/lib/service/servicefs.h diff --git a/lib/service/servicefs.h b/lib/service/servicefs.h index 73bfd985..eabdd3c7 100644 --- a/lib/service/servicefs.h +++ b/lib/service/servicefs.h @@ -5,7 +5,7 @@ class eServiceFactoryFS: public iServiceHandler { -DECLARE_REF(eServiceFactoryFS); + DECLARE_REF(eServiceFactoryFS); public: eServiceFactoryFS(); virtual ~eServiceFactoryFS(); @@ -23,19 +23,24 @@ private: class eServiceFS: public iListableService { -DECLARE_REF(eServiceFS); -private: + DECLARE_REF(eServiceFS); std::string path; friend class eServiceFactoryFS; - eServiceFS(const char *path); + eServiceFS(const char *path, const char *additional_extensions=0); + std::map > m_additional_extensions; int m_list_valid; std::list m_list; + int getServiceTypeForExtension(const char *str); + int getServiceTypeForExtension(const std::string &str); public: virtual ~eServiceFS(); - - RESULT getContent(std::list &list); + + RESULT getContent(std::list &list, bool sorted=false); + PyObject *getContent(const char *format, bool sorted=false); RESULT getNext(eServiceReference &ptr); + int compareLessEqual(const eServiceReference &, const eServiceReference &); + RESULT startEdit(ePtr &); }; #endif