12345678910111213141516171819202122232425262728293031323334353637 |
- #ifndef _SVCENUMBYGUID_H
- #define _SVCENUMBYGUID_H
- #include "svc_enum.h"
- template <class SERVICETYPE>
- class SvcEnumByGuid {
- public:
- SvcEnumByGuid() : guid(SERVICETYPE::getServiceGuid()) {}
- SvcEnumByGuid(GUID _guid) : guid(_guid) {}
- SERVICETYPE *getInterface() {
- waServiceFactory *svc = WASABI_API_SVC->service_getServiceByGuid(guid);
- return castService<SERVICETYPE>(svc);
- }
- operator SERVICETYPE *() { return getInterface(); }
- private:
- GUID guid;
- };
- #endif
|