private void CreateRuntimeImplementation(String default32BitName, String default64BitName, Type[] unmanagedFunctionDelegateTypes)
        {
            switch (GetPlatform())
            {
            case Platform.Windows:
                m_impl = new UnmanagedWindowsLibraryImplementation(default32BitName, default64BitName, unmanagedFunctionDelegateTypes);
                break;

            case Platform.Unix:
                m_impl = new UnmanagedLinuxLibraryImplementation(default32BitName, default64BitName, unmanagedFunctionDelegateTypes);
                break;

            case Platform.Mac:
                m_impl = new UnmanagedMacLibraryImplementation(default32BitName, default64BitName, unmanagedFunctionDelegateTypes);
                break;

            default:
                throw new PlatformNotSupportedException();
            }
        }
Beispiel #2
0
        private void CreateRuntimeImplementation(String defaultLibName, Type[] unmanagedFunctionDelegateTypes)
        {
            Platform platform = GetPlatform();

            m_resolver = new UnmanagedLibraryResolver(platform);

            switch (platform)
            {
            case Platform.Windows:
                m_impl = new UnmanagedWindowsLibraryImplementation(defaultLibName, unmanagedFunctionDelegateTypes);
                break;

            case Platform.Linux:
                m_impl = new UnmanagedLinuxLibraryImplementation(defaultLibName, unmanagedFunctionDelegateTypes);
                break;

            case Platform.Mac:
                m_impl = new UnmanagedMacLibraryImplementation(defaultLibName, unmanagedFunctionDelegateTypes);
                break;

            default:
                throw new PlatformNotSupportedException();
            }
        }