THYComModule
Overview
The THYComModule is a class that represents a COM module loaded by the Hydra framework.
Location
- Unit: Hydra.Core.ComModule.pas
- Ancestry: THYBaseModule | THYCrossPlatformModule | THYComModule
constructor Create (THYBaseModuleManager, string) 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.
constructor Create (THYBaseModuleManager, string) reintroduce overload
Creates a new instance of the class.
constructor Create(aModuleManager: THYBaseModuleManager; aGuid: string)
Parameters:
- aModuleManager: module manager
- aGuid: guid
CreateInstance override
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
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
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 (THYBaseModuleManager, string) 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.
constructor Create (THYBaseModuleManager, string) reintroduce overload
Creates a new instance of the class.
constructor Create(aModuleManager: THYBaseModuleManager; aGuid: string)
Parameters:
- aModuleManager: module manager
- aGuid: guid
CreateInstance override
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