THYFireMonkeyModule
Overview
The THYFireMonkeyModule class is a class that represents a FireMonkey plugin module loaded by the Hydra. This class is used internally by the Hydra framework to load and initialize FireMonkey plugins.
Note: There is no need to use this class to load plugin module, instead, you need to use the LoadModule
or one of the Load*
methods of the THYModuleManager.
Use Case
You won't usualy use this class directly, instead you can use THYModule to gain access to information on a loaded module. For example:
procedure TMainForm.ListLoadedPlugins;
var
I: Integer;
begin
PluginListBox.Items.BeginUpdate;
try
PluginListBox.Clear;
for I := 0 to HYModuleManager1.ModuleCount - 1 do
PluginListBox.Items.Add(HYModuleManager1.Modules[i].FileName);
finally
PluginListBox.Items.EndUpdate;
end;
end;
Location
- Unit: Hydra.VCL.FireMonkeyModule.pas
- Ancestry: THYBaseModule | THYCrossPlatformModule | THYModule | THYVCLUnmanagedModule | THYFireMonkeyModule
constructor Create override (declared in THYVCLUnmanagedModule)
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
EntryFunction protected override
Returns HYFMGetModuleController string
function EntryFunction: string
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 (declared in THYModule)
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 override
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 (declared in THYModule)
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 THYVCLUnmanagedModule)
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
EntryFunction protected override
Returns HYFMGetModuleController string
function EntryFunction: string
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 override
Releases resources of the loaded module.
procedure ReleaseModule