From 3b389f92f943ef8384c52f81569dbb0ff4d90dde Mon Sep 17 00:00:00 2001 From: Egor Yusov Date: Sun, 4 Mar 2018 08:22:27 -0800 Subject: Fixed https://github.com/DiligentGraphics/DiligentEngine/issues/5 --- .../GraphicsEngineD3D11/interface/RenderDeviceFactoryD3D11.h | 11 ++++------- Graphics/GraphicsEngineD3D11/src/RenderDeviceFactoryD3D11.cpp | 11 ++++------- .../GraphicsEngineD3D12/interface/RenderDeviceFactoryD3D12.h | 10 ++++------ Graphics/GraphicsEngineD3D12/src/RenderDeviceFactoryD3D12.cpp | 11 +++-------- .../interface/RenderDeviceFactoryOpenGL.h | 10 ++++------ .../GraphicsEngineOpenGL/src/RenderDeviceFactoryOpenGL.cpp | 3 --- 6 files changed, 19 insertions(+), 37 deletions(-) (limited to 'Graphics') diff --git a/Graphics/GraphicsEngineD3D11/interface/RenderDeviceFactoryD3D11.h b/Graphics/GraphicsEngineD3D11/interface/RenderDeviceFactoryD3D11.h index c280cdb1..1f999e8a 100644 --- a/Graphics/GraphicsEngineD3D11/interface/RenderDeviceFactoryD3D11.h +++ b/Graphics/GraphicsEngineD3D11/interface/RenderDeviceFactoryD3D11.h @@ -63,13 +63,9 @@ public: Uint32 NumDeferredContexts) = 0; }; -} - -extern "C" -{ #if ENGINE_DLL - typedef Diligent::IEngineFactoryD3D11* (*GetEngineFactoryD3D11Type)(); + typedef IEngineFactoryD3D11* (*GetEngineFactoryD3D11Type)(); static bool LoadGraphicsEngineD3D11(GetEngineFactoryD3D11Type &GetFactoryFunc) { @@ -92,7 +88,7 @@ extern "C" #if PLATFORM_WIN32 auto hModule = LoadLibraryA( LibName.c_str() ); #elif PLATFORM_UNIVERSAL_WINDOWS - auto hModule = LoadPackagedLibrary(Diligent::WidenString(LibName).c_str(), 0); + auto hModule = LoadPackagedLibrary(WidenString(LibName).c_str(), 0); #else # error Unexpected platform #endif @@ -118,7 +114,8 @@ extern "C" } #else - Diligent::IEngineFactoryD3D11* GetEngineFactoryD3D11(); + IEngineFactoryD3D11* GetEngineFactoryD3D11(); #endif + } \ No newline at end of file diff --git a/Graphics/GraphicsEngineD3D11/src/RenderDeviceFactoryD3D11.cpp b/Graphics/GraphicsEngineD3D11/src/RenderDeviceFactoryD3D11.cpp index 34c0873a..dea8f0ec 100644 --- a/Graphics/GraphicsEngineD3D11/src/RenderDeviceFactoryD3D11.cpp +++ b/Graphics/GraphicsEngineD3D11/src/RenderDeviceFactoryD3D11.cpp @@ -343,13 +343,10 @@ void LoadGraphicsEngineD3D11(GetEngineFactoryD3D11Type &GetFactoryFunc) } #endif -} -using namespace Diligent; -extern "C" +IEngineFactoryD3D11* GetEngineFactoryD3D11() { - IEngineFactoryD3D11* GetEngineFactoryD3D11() - { - return EngineFactoryD3D11Impl::GetInstance(); - } + return EngineFactoryD3D11Impl::GetInstance(); +} + } diff --git a/Graphics/GraphicsEngineD3D12/interface/RenderDeviceFactoryD3D12.h b/Graphics/GraphicsEngineD3D12/interface/RenderDeviceFactoryD3D12.h index 63acabf7..bdc3d8a0 100644 --- a/Graphics/GraphicsEngineD3D12/interface/RenderDeviceFactoryD3D12.h +++ b/Graphics/GraphicsEngineD3D12/interface/RenderDeviceFactoryD3D12.h @@ -62,13 +62,10 @@ public: }; -} -extern "C" -{ #if ENGINE_DLL - typedef Diligent::IEngineFactoryD3D12* (*GetEngineFactoryD3D12Type)(); + typedef IEngineFactoryD3D12* (*GetEngineFactoryD3D12Type)(); static bool LoadGraphicsEngineD3D12(GetEngineFactoryD3D12Type &GetFactoryFunc) { @@ -91,7 +88,7 @@ extern "C" #if PLATFORM_WIN32 auto hModule = LoadLibraryA(LibName.c_str()); #elif PLATFORM_UNIVERSAL_WINDOWS - auto hModule = LoadPackagedLibrary(Diligent::WidenString(LibName).c_str(), 0); + auto hModule = LoadPackagedLibrary(WidenString(LibName).c_str(), 0); #else # error Unexpected platform #endif @@ -118,7 +115,8 @@ extern "C" } #else - Diligent::IEngineFactoryD3D12* GetEngineFactoryD3D12(); + IEngineFactoryD3D12* GetEngineFactoryD3D12(); #endif + } diff --git a/Graphics/GraphicsEngineD3D12/src/RenderDeviceFactoryD3D12.cpp b/Graphics/GraphicsEngineD3D12/src/RenderDeviceFactoryD3D12.cpp index 9ff5c668..ac3e1992 100644 --- a/Graphics/GraphicsEngineD3D12/src/RenderDeviceFactoryD3D12.cpp +++ b/Graphics/GraphicsEngineD3D12/src/RenderDeviceFactoryD3D12.cpp @@ -398,14 +398,9 @@ void LoadGraphicsEngineD3D12(GetEngineFactoryD3D12Type &GetFactoryFunc) #endif +IEngineFactoryD3D12* GetEngineFactoryD3D12() +{ + return EngineFactoryD3D12Impl::GetInstance(); } - -using namespace Diligent; -extern "C" -{ - IEngineFactoryD3D12* GetEngineFactoryD3D12() - { - return EngineFactoryD3D12Impl::GetInstance(); - } } diff --git a/Graphics/GraphicsEngineOpenGL/interface/RenderDeviceFactoryOpenGL.h b/Graphics/GraphicsEngineOpenGL/interface/RenderDeviceFactoryOpenGL.h index 6b85331b..b133b113 100644 --- a/Graphics/GraphicsEngineOpenGL/interface/RenderDeviceFactoryOpenGL.h +++ b/Graphics/GraphicsEngineOpenGL/interface/RenderDeviceFactoryOpenGL.h @@ -73,14 +73,10 @@ public: IDeviceContext **ppImmediateContext ) = 0; }; -} - -extern "C" -{ #if ENGINE_DLL && (PLATFORM_WIN32 || PLATFORM_UNIVERSAL_WINDOWS) - typedef Diligent::IEngineFactoryOpenGL* (*GetEngineFactoryOpenGLType)(); + typedef IEngineFactoryOpenGL* (*GetEngineFactoryOpenGLType)(); static bool LoadGraphicsEngineOpenGL(GetEngineFactoryOpenGLType &GetFactoryFunc) { @@ -125,6 +121,8 @@ extern "C" // Do not forget to call System.loadLibrary("GraphicsEngineOpenGL") in Java on Android! API_QUALIFIER - Diligent::IEngineFactoryOpenGL* GetEngineFactoryOpenGL(); + IEngineFactoryOpenGL* GetEngineFactoryOpenGL(); + #endif + } diff --git a/Graphics/GraphicsEngineOpenGL/src/RenderDeviceFactoryOpenGL.cpp b/Graphics/GraphicsEngineOpenGL/src/RenderDeviceFactoryOpenGL.cpp index 271c9f20..bb455da1 100644 --- a/Graphics/GraphicsEngineOpenGL/src/RenderDeviceFactoryOpenGL.cpp +++ b/Graphics/GraphicsEngineOpenGL/src/RenderDeviceFactoryOpenGL.cpp @@ -228,10 +228,7 @@ void EngineFactoryOpenGLImpl::CreateHLSL2GLSLConverter(IHLSL2GLSLConverter **ppC pConverter->QueryInterface( IID_HLSL2GLSLConverter, reinterpret_cast(ppConverter) ); } -} -extern "C" -{ API_QUALIFIER Diligent::IEngineFactoryOpenGL* GetEngineFactoryOpenGL() { -- cgit v1.2.3