LoadedManagedModule

Overview

The LoadedManagedModule is a class that represents loaded managed plugin module. This class allows to load a module and provides access module data like plugins list or module controller.

Use Case

Usually you won't use this class directly, instead you will use base LoadedModule to get access to modules or ModuleManager to load module and create instances.

LoadedModule module = moduleManager.LoadModule("MyPlugin.dll");

foreach (PluginDescriptor plugin in module.Plugins)
{
  Console.WriteLine(string.Format("Name: {0} Description: {1}", plugin.Name, plugin.Description));
}

Location


 

constructor  protected    (declared in LoadedModule)

Creates a new instance of the class.

 

constructor

 

LoadedManagedModule()

 

Sub New()

constructor (array of Byte)

Creates a new instance of the class and loads the specified plugin module from array.

 

constructor(aAssembly: array of Byte)

 

LoadedManagedModule(Byte[] aAssembly)

 

Sub New(aAssembly As Byte())

Parameters:

  • aAssembly: A byte array that is a COFF-based image containing an emitted assembly.

constructor (Assembly)

Creates a new instance of the class with a pre-loaded assembly.

 

constructor(aAssembly: Assembly)

 

LoadedManagedModule(Assembly aAssembly)

 

Sub New(aAssembly As Assembly)

Parameters:

  • aAssembly: Reference to a pre-loaded assembly.

constructor (String)

 

constructor(filename: String)

 

LoadedManagedModule(String filename)

 

Sub New(filename As String)

Parameters:

  • filename:

constructor (String, AppDomain)

 

constructor(filename: String; appDomain: AppDomain)

 

LoadedManagedModule(String filename, AppDomain appDomain)

 

Sub New(filename As String, appDomain As AppDomain)

Parameters:

  • filename:
  • appDomain:

AppDomain

Returns reference to a AppDomain of the plugin module.

 

property AppDomain: AppDomain read;

 

AppDomain AppDomain { get; }

 

ReadOnly Property AppDomain() As AppDomain

Assembly

Returns reference to a loaded assembly.

 

property Assembly: Assembly read;

 

Assembly Assembly { get; }

 

ReadOnly Property Assembly() As Assembly

CreateInstance (PluginDescriptor): IHYCrossPlatformPlugin    (declared in LoadedModule)

Creates a new instance of a specified plugin.

 

method CreateInstance(aPluginDescriptor: PluginDescriptor): IHYCrossPlatformPlugin

 

IHYCrossPlatformPlugin CreateInstance(PluginDescriptor aPluginDescriptor)

 

Function CreateInstance(aPluginDescriptor As PluginDescriptor) As IHYCrossPlatformPlugin

Parameters:

  • aPluginDescriptor: Reference to a plugin descriptor.

 

method CreateInstance(pluginDescriptor: PluginDescriptor): IHYCrossPlatformPlugin

 

IHYCrossPlatformPlugin CreateInstance(PluginDescriptor pluginDescriptor)

 

Function CreateInstance(pluginDescriptor As PluginDescriptor) As IHYCrossPlatformPlugin

Parameters:

  • pluginDescriptor:

Dispose    (declared in LoadedModule)

Releases resources allocated by the object.

 

method Dispose

 

void Dispose()

 

Sub Dispose()

FileName

Returns the file name of a loaded plugin module.

 

property FileName: String read;

 

String FileName { get; }

 

ReadOnly Property FileName() As String

ModuleController

Returns reference to an instance of the cross platform module controller.

 

property ModuleController: IHYCrossPlatformModuleController read;

 

IHYCrossPlatformModuleController ModuleController { get; }

 

ReadOnly Property ModuleController() As IHYCrossPlatformModuleController

Name

Returns simple name of a loaded plugin module.

 

property Name: String read;

 

String Name { get; }

 

ReadOnly Property Name() As String

Plugins    (declared in LoadedModule)

Returns a list of the plugins that is contained in a loaded module.

 

property Plugins: PluginList read;

 

PluginList Plugins { get; }

 

ReadOnly Property Plugins() As PluginList

 

AppDomain

Returns reference to a AppDomain of the plugin module.

 

property AppDomain: AppDomain read;

 

AppDomain AppDomain { get; }

 

ReadOnly Property AppDomain() As AppDomain

Assembly

Returns reference to a loaded assembly.

 

property Assembly: Assembly read;

 

Assembly Assembly { get; }

 

ReadOnly Property Assembly() As Assembly

FileName

Returns the file name of a loaded plugin module.

 

property FileName: String read;

 

String FileName { get; }

 

ReadOnly Property FileName() As String

ModuleController

Returns reference to an instance of the cross platform module controller.

 

property ModuleController: IHYCrossPlatformModuleController read;

 

IHYCrossPlatformModuleController ModuleController { get; }

 

ReadOnly Property ModuleController() As IHYCrossPlatformModuleController

Name

Returns simple name of a loaded plugin module.

 

property Name: String read;

 

String Name { get; }

 

ReadOnly Property Name() As String

Plugins    (declared in LoadedModule)

Returns a list of the plugins that is contained in a loaded module.

 

property Plugins: PluginList read;

 

PluginList Plugins { get; }

 

ReadOnly Property Plugins() As PluginList

 

constructor  protected    (declared in LoadedModule)

Creates a new instance of the class.

 

constructor

 

LoadedManagedModule()

 

Sub New()

constructor (array of Byte)

Creates a new instance of the class and loads the specified plugin module from array.

 

constructor(aAssembly: array of Byte)

 

LoadedManagedModule(Byte[] aAssembly)

 

Sub New(aAssembly As Byte())

Parameters:

  • aAssembly: A byte array that is a COFF-based image containing an emitted assembly.

constructor (Assembly)

Creates a new instance of the class with a pre-loaded assembly.

 

constructor(aAssembly: Assembly)

 

LoadedManagedModule(Assembly aAssembly)

 

Sub New(aAssembly As Assembly)

Parameters:

  • aAssembly: Reference to a pre-loaded assembly.

constructor (String)

 

constructor(filename: String)

 

LoadedManagedModule(String filename)

 

Sub New(filename As String)

Parameters:

  • filename:

constructor (String, AppDomain)

 

constructor(filename: String; appDomain: AppDomain)

 

LoadedManagedModule(String filename, AppDomain appDomain)

 

Sub New(filename As String, appDomain As AppDomain)

Parameters:

  • filename:
  • appDomain:

CreateInstance (PluginDescriptor): IHYCrossPlatformPlugin    (declared in LoadedModule)

Creates a new instance of a specified plugin.

 

method CreateInstance(aPluginDescriptor: PluginDescriptor): IHYCrossPlatformPlugin

 

IHYCrossPlatformPlugin CreateInstance(PluginDescriptor aPluginDescriptor)

 

Function CreateInstance(aPluginDescriptor As PluginDescriptor) As IHYCrossPlatformPlugin

Parameters:

  • aPluginDescriptor: Reference to a plugin descriptor.

 

method CreateInstance(pluginDescriptor: PluginDescriptor): IHYCrossPlatformPlugin

 

IHYCrossPlatformPlugin CreateInstance(PluginDescriptor pluginDescriptor)

 

Function CreateInstance(pluginDescriptor As PluginDescriptor) As IHYCrossPlatformPlugin

Parameters:

  • pluginDescriptor:

Dispose    (declared in LoadedModule)

Releases resources allocated by the object.

 

method Dispose

 

void Dispose()

 

Sub Dispose()