#ifndef __service_h #define __service_h #include #include #include class eServiceCenter: public virtual iServiceHandler, public virtual iObject { DECLARE_REF; private: std::map > handler; static eServiceCenter *instance; public: eServiceCenter(); virtual ~eServiceCenter(); // iServiceHandler RESULT play(const eServiceReference &, ePtr &ptr); RESULT record(const eServiceReference &, ePtr &ptr); RESULT list(const eServiceReference &, ePtr &ptr); // eServiceCenter static RESULT getInstance(ePtr &ptr) { ptr = instance; return 0; } RESULT addServiceFactory(int id, iServiceHandler *hnd); RESULT removeServiceFactory(int id); }; #endif