Style AllStatic
JavaClass WindowsDynamicLinkerImpl
Package com.jogamp.gluegen.runtime
Implements WindowsDynamicLinkerImpl DynamicLinker
JavaOutputDir ../src/java
NativeOutputDir ../src/native/windows
HierarchicalNativeOutput false

IncludeAs CustomJavaCode WindowsDynamicLinkerImpl dynlink-windows-CustomJavaCode.java
CustomCCode #include <windows.h>
CustomCCode /* This typedef is apparently needed for compilers before VC8,
CustomCCode    and for the embedded ARM compilers we're using */
CustomCCode #if (_MSC_VER < 1400) || defined(UNDER_CE)
CustomCCode typedef int intptr_t;
CustomCCode #endif
CustomCCode /* GetProcAddress doesn't exist in A/W variants under desktop Windows */
CustomCCode #ifndef UNDER_CE
CustomCCode #define GetProcAddressA GetProcAddress
CustomCCode #endif

ArgumentIsString LoadLibraryW 0
ArgumentIsString GetProcAddressA 1
Opaque long HANDLE
Opaque long PROC

# Hide the platform-specific functions
AccessControl GetLastError    PRIVATE
AccessControl LoadLibraryW    PRIVATE
AccessControl GetProcAddressA PRIVATE
AccessControl FreeLibrary     PRIVATE