diff options
| author | Felix Domke <tmbinc@elitedvb.net> | 2003-10-17 15:36:42 +0000 |
|---|---|---|
| committer | Felix Domke <tmbinc@elitedvb.net> | 2003-10-17 15:36:42 +0000 |
| commit | d63d2c3c6cbbd574dda4f8b00ebe6c661735edd5 (patch) | |
| tree | 84d0cacfd0b6c1241c236c7860f7cbd7f26901bb /lib/service/servicemp3.h | |
| download | enigma2-d63d2c3c6cbbd574dda4f8b00ebe6c661735edd5.tar.gz enigma2-d63d2c3c6cbbd574dda4f8b00ebe6c661735edd5.zip | |
import of enigma2
Diffstat (limited to 'lib/service/servicemp3.h')
| -rw-r--r-- | lib/service/servicemp3.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/lib/service/servicemp3.h b/lib/service/servicemp3.h new file mode 100644 index 00000000..0f2c074f --- /dev/null +++ b/lib/service/servicemp3.h @@ -0,0 +1,42 @@ +#ifndef __servicemp3_h +#define __servicemp3_h + +#include <lib/service/iservice.h> + +class eServiceFactoryMP3: public virtual iServiceHandler, public virtual iObject +{ +DECLARE_REF; +public: + eServiceFactoryMP3(); + virtual ~eServiceFactoryMP3(); + enum { id = 0x1001 }; + + // iServiceHandler + RESULT play(const eServiceReference &, ePtr<iPlayableService> &ptr); + RESULT record(const eServiceReference &, ePtr<iRecordableService> &ptr); + RESULT list(const eServiceReference &, ePtr<iListableService> &ptr); +}; + +class eServiceMP3: public virtual iPlayableService, public virtual iPauseableService, public virtual iObject +{ + friend class eServiceFactoryMP3; + std::string filename; + eServiceMP3(const char *filename); + int ref; +public: + virtual ~eServiceMP3(); + + // iObject + void AddRef(); + void Release(); + + // iPlayableService + RESULT start(); + RESULT getIPausableService(ePtr<iPauseableService> &ptr); + + // iPausableService + RESULT pause(); + RESULT unpause(); +}; + +#endif |
