From 3dfe2108cfab31ba3ee5527e217d0d8e99a51162 Mon Sep 17 00:00:00 2001 From: git perforce import user Date: Tue, 25 Oct 2016 12:29:14 -0600 Subject: Initial commit: PhysX 3.4.0 Update @ 21294896 APEX 1.4.0 Update @ 21275617 [CL 21300167] --- APEX_1.4/common/include/ModuleUpdateLoader.h | 53 ++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 APEX_1.4/common/include/ModuleUpdateLoader.h (limited to 'APEX_1.4/common/include/ModuleUpdateLoader.h') diff --git a/APEX_1.4/common/include/ModuleUpdateLoader.h b/APEX_1.4/common/include/ModuleUpdateLoader.h new file mode 100644 index 00000000..d64d1eef --- /dev/null +++ b/APEX_1.4/common/include/ModuleUpdateLoader.h @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2008-2015, NVIDIA CORPORATION. All rights reserved. + * + * NVIDIA CORPORATION and its licensors retain all intellectual property + * and proprietary rights in and to this software, related documentation + * and any modifications thereto. Any use, reproduction, disclosure or + * distribution of this software and related documentation without an express + * license agreement from NVIDIA CORPORATION is strictly prohibited. + */ + + +#ifndef MODULEUPDATELOADER_H +#define MODULEUPDATELOADER_H + +#ifdef WIN32 + +#if PX_X64 +#define UPDATE_LOADER_DLL_NAME "PhysXUpdateLoader64.dll" +#else +#define UPDATE_LOADER_DLL_NAME "PhysXUpdateLoader.dll" +#endif + +// This GUID should change any time we release APEX with a public interface change. +#if PX_PHYSICS_VERSION_MAJOR == 0 +#define DEFAULT_APP_GUID "165F143C-15CB-47FA-ACE3-2002B3684026" +#else +#define DEFAULT_APP_GUID "1AE7180B-79E5-4234-91A7-E387331B5993" +#endif + +//#include "PsWindowsInclude.h" +#include + +class ModuleUpdateLoader +{ +public: + ModuleUpdateLoader(const char* updateLoaderDllName); + ~ModuleUpdateLoader(); + + // Loads the given module through the update loader. Loads it from the path if + // the update loader doesn't find the requested module. Returns NULL if no + // module found. + HMODULE loadModule(const char* moduleName, const char* appGuid); + +protected: + HMODULE mUpdateLoaderDllHandle; + FARPROC mGetUpdatedModuleFunc; + + // unit test fixture + friend class ModuleUpdateLoaderTest; +}; + +#endif // WIN32 +#endif // MODULEUPDATELOADER_H -- cgit v1.2.3