12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- // ----------------------------------------------------------------------------
- // Generated by InterfaceFactory [Wed May 07 00:57:16 2003]
- //
- // File : waservicefactory.h
- // Class : waServiceFactory
- // class layer : Dispatchable Interface
- // ----------------------------------------------------------------------------
- #ifndef __WASERVICEFACTORY_H
- #define __WASERVICEFACTORY_H
- #include "../../bfc/dispatch.h"
- #include "../../bfc/nsguid.h"
- #include "api_service.h"
- // ----------------------------------------------------------------------------
- class NOVTABLE waServiceFactory: public Dispatchable {
- protected:
- waServiceFactory() throw() {}
- ~waServiceFactory() throw() {}
- protected:
-
- public:
- FOURCC getServiceType();
- const char *getServiceName();
- GUID getGuid();
- void *getInterface(int global_lock = TRUE);
- int supportNonLockingGetInterface();
- int releaseInterface(void *ifc);
- const wchar_t *getTestString();
- int serviceNotify(int msg, intptr_t param1 = 0, intptr_t param2 = 0);
-
- protected:
- enum {
- WASERVICEFACTORY_GETSERVICETYPE = 100,
- WASERVICEFACTORY_GETSERVICENAME = 200,
- WASERVICEFACTORY_GETGUID = 210,
- WASERVICEFACTORY_GETINTERFACE = 300,
- WASERVICEFACTORY_SUPPORTNONLOCKINGGETINTERFACE = 301,
- WASERVICEFACTORY_RELEASEINTERFACE = 310,
- WASERVICEFACTORY_GETTESTSTRING = 500,
- WASERVICEFACTORY_SERVICENOTIFY = 600,
- };
- };
- // ----------------------------------------------------------------------------
- inline FOURCC waServiceFactory::getServiceType() {
- FOURCC __retval = _call(WASERVICEFACTORY_GETSERVICETYPE, (FOURCC)NULL);
- return __retval;
- }
- inline const char *waServiceFactory::getServiceName() {
- const char *__retval = _call(WASERVICEFACTORY_GETSERVICENAME, (const char *)0);
- return __retval;
- }
- inline GUID waServiceFactory::getGuid() {
- GUID __retval = _call(WASERVICEFACTORY_GETGUID, INVALID_GUID);
- return __retval;
- }
- inline void *waServiceFactory::getInterface(int global_lock) {
- void *__retval = _call(WASERVICEFACTORY_GETINTERFACE, (void *)NULL, global_lock);
-
- #if 0 // unused in Winamp 5
- // -- generated code - edit in waservicefactoryi.h
- // support old code that always locks even when global_lock==FALSE
- if (!global_lock && __retval != NULL && !supportNonLockingGetInterface())
- WASABI_API_SVC->service_unlock(__retval);
- #endif
- return __retval;
- }
- inline int waServiceFactory::supportNonLockingGetInterface() {
- int __retval = _call(WASERVICEFACTORY_SUPPORTNONLOCKINGGETINTERFACE, (int)0);
- return __retval;
- }
- inline int waServiceFactory::releaseInterface(void *ifc) {
- int __retval = _call(WASERVICEFACTORY_RELEASEINTERFACE, (int)0, ifc);
- return __retval;
- }
- inline const wchar_t *waServiceFactory::getTestString() {
- return _call(WASERVICEFACTORY_GETTESTSTRING, (const wchar_t *)0);
- }
- inline int waServiceFactory::serviceNotify(int msg, intptr_t param1, intptr_t param2) {
- int __retval = _call(WASERVICEFACTORY_SERVICENOTIFY, (int)0, msg, param1, param2);
- return __retval;
- }
- // ----------------------------------------------------------------------------
- #endif // __WASERVICEFACTORY_H
|