api_servicex.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. // ----------------------------------------------------------------------------
  2. // Generated by InterfaceFactory [Wed May 07 00:56:11 2003]
  3. //
  4. // File : api_servicex.h
  5. // Class : api_service
  6. // class layer : Dispatchable Receiver
  7. // ----------------------------------------------------------------------------
  8. #ifndef __API_SERVICEX_H
  9. #define __API_SERVICEX_H
  10. #include "api_service.h"
  11. class waServiceFactory;
  12. // ----------------------------------------------------------------------------
  13. class api_serviceX : public api_service {
  14. protected:
  15. api_serviceX() {}
  16. public:
  17. virtual int service_register(waServiceFactory *svc)=0;
  18. virtual int service_deregister(waServiceFactory *svc)=0;
  19. virtual int service_getNumServices(FOURCC svc_type)=0;
  20. virtual waServiceFactory *service_enumService(FOURCC svc_type, int n)=0;
  21. virtual waServiceFactory *service_getServiceByGuid(GUID guid)=0;
  22. virtual int service_lock(waServiceFactory *owner, void *svcptr)=0;
  23. virtual int service_clientLock(void *svcptr)=0;
  24. virtual int service_release(void *svcptr)=0;
  25. virtual const char *service_getTypeName(FOURCC svc_type)=0;
  26. #ifdef WASABI_COMPILE_COMPONENTS
  27. virtual GUID service_getOwningComponent(void *svcptr)=0;
  28. virtual GUID service_getLockingComponent(void *svcptr)=0;
  29. #endif // WASABI_COMPILE_COMPONENTS
  30. virtual int service_unlock(void *svcptr)=0;
  31. virtual int service_isvalid(FOURCC svctype, waServiceFactory *service)=0;
  32. protected:
  33. RECVS_DISPATCH;
  34. };
  35. #endif // __API_SERVICEX_H