THYModule
Overview
The THYModule is a class that represents a module loaded by the Hydra framework.
Location
- Unit: Hydra.VCL.ModuleManager.pas
- Ancestry: THYBaseModule | THYCrossPlatformModule | THYModule
constructor Create override (declared in THYCrossPlatformModule)
Creates a new instance of the class.
constructor Create(aModuleManager: THYBaseModuleManager; aFileName: string)
Parameters:
- aModuleManager: Owner
- aFileName: Path to the plugin module file.
CreateInstance virtual (declared in THYCrossPlatformModule)
Creates a new instance of the plugin from Descriptor
parameter
function CreateInstance(Descriptor: THYCrossPlatformPluginDescriptor): IInterface
Parameters:
- Descriptor: Reference to a plugin descriptor.
CreateWrapper protected (declared in THYBaseModule)
Calls correspondent method in associated ModuleManager
function CreateWrapper(aPlugin: IDispatch; aDescriptor: THYPluginDescriptor): IInterface
Parameters:
- aPlugin: Cross-platform plugin instance
- aDescriptor: Plugin descriptor
CrossPlatformModuleController (declared in THYCrossPlatformModule)
Returns the interface of the current module controller.
property CrossPlatformModuleController: IHYCrossPlatformModuleController read
ErrorNotHydraModule protected (declared in THYCrossPlatformModule)
procedure ErrorNotHydraModule
FileName (declared in THYBaseModule)
Returns the file name of a loaded plugin module.
property FileName: string read
Handle (declared in THYBaseModule)
Gets the handle of the loaded plugin. Can be unavailable for some plugins.
property Handle: THandle read
LoadAsUnmanagedModule protected (declared in THYCrossPlatformModule)
Allows to load specified function
procedure LoadAsUnmanagedModule(ExportFunctionName: string)
Parameters:
- ExportFunctionName: Export function name
ModuleController (declared in THYCrossPlatformModule)
Gets reference to the plugin module controller.
property ModuleController: THYSimpleModuleController read
ModuleController
Gets reference to the THYModuleController that is used to manage this plugin.
property ModuleController: THYVCLModuleController read
Plugins (declared in THYCrossPlatformModule)
Gets a reference to a plugin descriptor with specified index.
property Plugins[Index: Integer]: THYCrossPlatformPluginDescriptor read
PluginsCount (declared in THYCrossPlatformModule)
Gets the number of plugins inside module.
property PluginsCount: Integer read
RegisterPlugin protected virtual (declared in THYCrossPlatformModule)
Registers a plugin descriptor in the module.
procedure RegisterPlugin(Plugin: THYCrossPlatformPluginDescriptor)
Parameters:
- Plugin: Reference to the plugin descriptor.
ReleaseModule protected virtual (declared in THYCrossPlatformModule)
Releases resources of the loaded module.
procedure ReleaseModule
CrossPlatformModuleController (declared in THYCrossPlatformModule)
Returns the interface of the current module controller.
property CrossPlatformModuleController: IHYCrossPlatformModuleController read
FileName (declared in THYBaseModule)
Returns the file name of a loaded plugin module.
property FileName: string read
Handle (declared in THYBaseModule)
Gets the handle of the loaded plugin. Can be unavailable for some plugins.
property Handle: THandle read
ModuleController (declared in THYCrossPlatformModule)
Gets reference to the plugin module controller.
property ModuleController: THYSimpleModuleController read
ModuleController
Gets reference to the THYModuleController that is used to manage this plugin.
property ModuleController: THYVCLModuleController read
Plugins (declared in THYCrossPlatformModule)
Gets a reference to a plugin descriptor with specified index.
property Plugins[Index: Integer]: THYCrossPlatformPluginDescriptor read
PluginsCount (declared in THYCrossPlatformModule)
Gets the number of plugins inside module.
property PluginsCount: Integer read
constructor Create override (declared in THYCrossPlatformModule)
Creates a new instance of the class.
constructor Create(aModuleManager: THYBaseModuleManager; aFileName: string)
Parameters:
- aModuleManager: Owner
- aFileName: Path to the plugin module file.
CreateInstance virtual (declared in THYCrossPlatformModule)
Creates a new instance of the plugin from Descriptor
parameter
function CreateInstance(Descriptor: THYCrossPlatformPluginDescriptor): IInterface
Parameters:
- Descriptor: Reference to a plugin descriptor.
CreateWrapper protected (declared in THYBaseModule)
Calls correspondent method in associated ModuleManager
function CreateWrapper(aPlugin: IDispatch; aDescriptor: THYPluginDescriptor): IInterface
Parameters:
- aPlugin: Cross-platform plugin instance
- aDescriptor: Plugin descriptor
ErrorNotHydraModule protected (declared in THYCrossPlatformModule)
procedure ErrorNotHydraModule
LoadAsUnmanagedModule protected (declared in THYCrossPlatformModule)
Allows to load specified function
procedure LoadAsUnmanagedModule(ExportFunctionName: string)
Parameters:
- ExportFunctionName: Export function name
RegisterPlugin protected virtual (declared in THYCrossPlatformModule)
Registers a plugin descriptor in the module.
procedure RegisterPlugin(Plugin: THYCrossPlatformPluginDescriptor)
Parameters:
- Plugin: Reference to the plugin descriptor.
ReleaseModule protected virtual (declared in THYCrossPlatformModule)
Releases resources of the loaded module.
procedure ReleaseModule