Click or drag to resize

UnmanagedLibrary Class

Represents management and access to an unmanaged library. An unmanaged library can be loaded and unloaded dynamically. The library then searches for a list of exported functions to create managed delegates for, allowing callers to access the library. Each OS platform has its own implementation to determine how to load unmanaged libraries.
Inheritance Hierarchy
SystemObject
  Internal.Assimp.UnmanagedUnmanagedLibrary
    Internal.Assimp.UnmanagedAssimpLibrary

Namespace: Internal.Assimp.Unmanaged
Assembly: NeoAxis.Core (in NeoAxis.Core.dll) Version: 2026.2.1.0 (2026.2.1.0)
Syntax
C#
public abstract class UnmanagedLibrary

The UnmanagedLibrary type exposes the following members.

Constructors
 NameDescription
Protected methodUnmanagedLibrary Constructs a new UnmanagedLibrary.
Top
Properties
 NameDescription
Public propertyDefaultLibraryName Gets the default name of the unmanaged library DLL. This is dependent based on the platform extension and name prefix. Additional names can be set in the UnmanagedLibraryResolver (e.g. to load versioned DLLs)
Public propertyStatic memberIs64Bit Queries if the OS is 64-bit, if false then it is 32-bit.
Public propertyIsLibraryLoaded Queries if the unmanaged library has been loaded or not.
Public propertyLibraryPath Gets the path to the unmanaged library DLL that is currently loaded.
Public propertyResolver Gets the resolver used to find the unmanaged library DLL when loading.
Public propertyThrowOnLoadFailure Gets or sets whether an AssimpException is thrown if the unmanaged DLL fails to load for whatever reason. By default this is true.
Top
Methods
 NameDescription
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
Public methodFreeLibrary Frees the unmanaged library that is currently loaded.
Public methodGetFunctionT Gets a delegate based on the unmanaged function name.
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodStatic memberGetPlatform Gets an enum representing the current OS that is application is executing on.
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Protected methodLoadIfNotLoaded If library is not explicitly loaded by user, call this when trying to call an unmanaged function to load the unmanaged library from the default path. This function is thread safe.
Public methodLoadLibrary Loads the unmanaged library using the UnmanagedLibraryResolver.
Public methodLoadLibrary(String) Loads the unmanaged library using the supplied path.
Public methodLoadLibrary(String, String) Loads the unmanaged library using the supplied 32 and 64 bit paths, the one chosen is based on the OS bitness.
Protected methodMemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Protected methodOnLibraryFreed Called when the library is freed.
Protected methodOnLibraryLoaded Called when the library is loaded.
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Top
Events
 NameDescription
Public eventLibraryFreed Occurs when the unmanaged library is freed.
Public eventLibraryLoaded Occurs when the unmanaged library is loaded.
Top
Extension Methods
 NameDescription
Public Extension MethodMethodInvoke Calls the object method by name.
(Defined by ObjectEx)
Public Extension MethodPropertyGet Gets the value of the object property by name.
(Defined by ObjectEx)
Public Extension MethodPropertyGetT Gets the value of the object property by name.
(Defined by ObjectEx)
Public Extension MethodPropertySet Sets the value of the object property by name.
(Defined by ObjectEx)
Top
See Also