factory_Handler.h 757 B

123456789101112131415161718192021222324252627282930
  1. #ifndef NULLSOFT_FACTORY_HANDLER_H
  2. #define NULLSOFT_FACTORY_HANDLER_H
  3. #include <api/service/waservicefactory.h>
  4. #include <api/service/services.h>
  5. class CommonHandlerFactory : public waServiceFactory
  6. {
  7. public:
  8. FOURCC GetServiceType();
  9. int SupportNonLockingInterface();
  10. int ReleaseInterface(void *ifc);
  11. const char *GetTestString();
  12. int ServiceNotify(int msg, int param1, int param2);
  13. };
  14. #define DECLARE_HANDLER_FACTORY(CLASSNAME) class CLASSNAME : public CommonHandlerFactory {\
  15. public:\
  16. const char *GetServiceName();\
  17. GUID GetGUID();\
  18. void *GetInterface(int global_lock);\
  19. protected:\
  20. RECVS_DISPATCH;}
  21. DECLARE_HANDLER_FACTORY(M3UHandlerFactory);
  22. DECLARE_HANDLER_FACTORY(PLSHandlerFactory);
  23. DECLARE_HANDLER_FACTORY(B4SHandlerFactory);
  24. #endif