diff options
| author | Felix Domke <tmbinc@elitedvb.net> | 2005-07-29 01:09:09 +0000 |
|---|---|---|
| committer | Felix Domke <tmbinc@elitedvb.net> | 2005-07-29 01:09:09 +0000 |
| commit | d5e22a275d2ecdf3205bfefa927be6e125ac27b8 (patch) | |
| tree | 91b5fda2f2dacce923ec56ea52fecad6f94de873 /lib/service/servicefs.cpp | |
| parent | 1d9b83e416ec6471e53844c80626dbf22a411e90 (diff) | |
| download | enigma2-d5e22a275d2ecdf3205bfefa927be6e125ac27b8.tar.gz enigma2-d5e22a275d2ecdf3205bfefa927be6e125ac27b8.zip | |
- add movie selector
Diffstat (limited to 'lib/service/servicefs.cpp')
| -rw-r--r-- | lib/service/servicefs.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/service/servicefs.cpp b/lib/service/servicefs.cpp index 9db85028..739dd0a6 100644 --- a/lib/service/servicefs.cpp +++ b/lib/service/servicefs.cpp @@ -81,6 +81,7 @@ DEFINE_REF(eServiceFS); eServiceFS::eServiceFS(const char *path): path(path) { + m_list_valid = 0; } eServiceFS::~eServiceFS() @@ -132,4 +133,22 @@ RESULT eServiceFS::getContent(std::list<eServiceReference> &list) return 0; } +RESULT eServiceFS::getNext(eServiceReference &ptr) +{ + if (!m_list_valid) + { + m_list_valid = 1; + int res = getContent(m_list); + if (res) + return res; + } + + if (!m_list.size()) + return -ERANGE; + + ptr = m_list.front(); + m_list.pop_front(); + return 0; +} + eAutoInitPtr<eServiceFactoryFS> init_eServiceFactoryFS(eAutoInitNumbers::service+1, "eServiceFactoryFS"); |
