From 9475b11045089c9bc9773b16f7eb84f843db70c4 Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Thu, 1 Apr 2021 18:59:24 -0400 Subject: Associating GUID (or UUID) with types (#1776) * #include an absolute path didn't work - because paths were taken to always be relative. * Add mechanism to embed guid inside of type. --- source/core/slang-shared-library.cpp | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 'source/core/slang-shared-library.cpp') diff --git a/source/core/slang-shared-library.cpp b/source/core/slang-shared-library.cpp index 8d362fd89..17b881540 100644 --- a/source/core/slang-shared-library.cpp +++ b/source/core/slang-shared-library.cpp @@ -20,18 +20,13 @@ namespace Slang { -// Allocate static const storage for the various interface IDs that the Slang API needs to expose -static const Guid IID_ISlangUnknown = SLANG_UUID_ISlangUnknown; -static const Guid IID_ISlangSharedLibrary = SLANG_UUID_ISlangSharedLibrary; -static const Guid IID_ISlangSharedLibraryLoader = SLANG_UUID_ISlangSharedLibraryLoader; - /* !!!!!!!!!!!!!!!!!!!!!!!!!! DefaultSharedLibraryLoader !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/ /* static */DefaultSharedLibraryLoader DefaultSharedLibraryLoader::s_singleton; ISlangUnknown* DefaultSharedLibraryLoader::getInterface(const Guid& guid) { - return (guid == IID_ISlangUnknown || guid == IID_ISlangSharedLibraryLoader) ? static_cast(this) : nullptr; + return (guid == ISlangUnknown::getTypeGuid() || guid == ISlangSharedLibraryLoader::getTypeGuid()) ? static_cast(this) : nullptr; } SlangResult DefaultSharedLibraryLoader::loadSharedLibrary(const char* path, ISlangSharedLibrary** outSharedLibrary) @@ -83,7 +78,7 @@ TemporarySharedLibrary::~TemporarySharedLibrary() ISlangUnknown* DefaultSharedLibrary::getInterface(const Guid& guid) { - return (guid == IID_ISlangUnknown || guid == IID_ISlangSharedLibrary) ? static_cast(this) : nullptr; + return (guid == ISlangUnknown::getTypeGuid() || guid == ISlangSharedLibrary::getTypeGuid()) ? static_cast(this) : nullptr; } DefaultSharedLibrary::~DefaultSharedLibrary() -- cgit v1.2.3