HAL  v4.5.0-83-g30c8f0afc
The Hardware Analyzer - a comprehensive reverse engineering and manipulation framework for gate-level netlists.
hal::GuiExtensionModuleIdentification Class Reference

GUI extension interface for the module identification plugin. More...

#include </home/runner/work/hal/hal/plugins/module_identification/include/module_identification/plugin_module_identification.h>

Inheritance diagram for hal::GuiExtensionModuleIdentification:
Inheritance graph
Collaboration diagram for hal::GuiExtensionModuleIdentification:
Collaboration graph

Public Member Functions

 GuiExtensionModuleIdentification ()=default
 Default constructor for GuiExtensionModuleIdentification. More...
 
std::vector< PluginParameterget_parameter () const override
 Get list of configurable parameters. More...
 
void set_parameter (const std::vector< PluginParameter > &params) override
 Set configurable parameters to values. More...
 
void execute_function (std::string tag, Netlist *nl, const std::vector< u32 > &mods, const std::vector< u32 > &gats, const std::vector< u32 > &nets) override
 Execute a function with a specific tag on a netlist. More...
 
virtual void register_progress_indicator (std::function< void(int, const std::string &)> pif) override
 Register function to indicate work progress when busy. More...
 
std::vector< ContextMenuContributionget_context_contribution (const Netlist *nl, const std::vector< u32 > &mods, const std::vector< u32 > &gats, const std::vector< u32 > &nets)
 Get context menu contributions based on the current netlist and selection. More...
 
- Public Member Functions inherited from hal::GuiExtensionInterface
 GuiExtensionInterface (const std::string &toplabel=std::string())
 
virtual ~GuiExtensionInterface ()
 
virtual void netlist_loaded (Netlist *nl)
 
virtual void netlist_about_to_close (Netlist *nl)
 
bool is_contribution_enabled () const
 
void set_contribution_enabled (bool enabled)
 
std::string contribution_top_label () const
 
- Public Member Functions inherited from hal::AbstractExtensionInterface
 AbstractExtensionInterface ()
 
virtual ~AbstractExtensionInterface ()
 

Static Public Attributes

static std::function< void(int, const std::string &)> s_progress_indicator_function = nullptr
 Static progress indicator function. More...
 

Detailed Description

GUI extension interface for the module identification plugin.

This class provides a GUI extension interface for the module identification plugin, allowing for parameter configuration, progress indication, and context menu contributions.

Definition at line 28 of file plugin_module_identification.h.

Constructor & Destructor Documentation

◆ GuiExtensionModuleIdentification()

hal::GuiExtensionModuleIdentification::GuiExtensionModuleIdentification ( )
default

Default constructor for GuiExtensionModuleIdentification.

Member Function Documentation

◆ execute_function()

void hal::GuiExtensionModuleIdentification::execute_function ( std::string  tag,
Netlist nl,
const std::vector< u32 > &  mods,
const std::vector< u32 > &  gats,
const std::vector< u32 > &  nets 
)
overridevirtual

◆ get_context_contribution()

std::vector< ContextMenuContribution > hal::GuiExtensionModuleIdentification::get_context_contribution ( const Netlist nl,
const std::vector< u32 > &  mods,
const std::vector< u32 > &  gats,
const std::vector< u32 > &  nets 
)
virtual

Get context menu contributions based on the current netlist and selection.

Parameters
[in]nl- The netlist to operate on.
[in]mods- The selected modules.
[in]gats- The selected gates.
[in]nets- The selected nets.
Returns
Vector of context menu contributions.

Reimplemented from hal::GuiExtensionInterface.

Definition at line 278 of file plugin_module_identification.cpp.

◆ get_parameter()

std::vector< PluginParameter > hal::GuiExtensionModuleIdentification::get_parameter ( ) const
overridevirtual

◆ register_progress_indicator()

void hal::GuiExtensionModuleIdentification::register_progress_indicator ( std::function< void(int, const std::string &)>  pif)
overridevirtual

Register function to indicate work progress when busy.

Parameters
[in]pif- Progress Indicator Function to register.

Reimplemented from hal::GuiExtensionInterface.

Definition at line 273 of file plugin_module_identification.cpp.

References s_progress_indicator_function.

◆ set_parameter()

void hal::GuiExtensionModuleIdentification::set_parameter ( const std::vector< PluginParameter > &  params)
overridevirtual

Set configurable parameters to values.

Parameters
[in]params- The parameters with values.

GUI extension

Reimplemented from hal::GuiExtensionInterface.

Definition at line 52 of file plugin_module_identification.cpp.

References hal::module_identification::all_checkable_candidate_types, hal::enum_to_string(), log_error, hal::module_identification::memory_priority, and hal::module_identification::time_priority.

Member Data Documentation

◆ s_progress_indicator_function

std::function< void(int, const std::string &)> hal::GuiExtensionModuleIdentification::s_progress_indicator_function = nullptr
static

Static progress indicator function.

Definition at line 112 of file plugin_module_identification.h.

Referenced by execute_function(), and register_progress_indicator().


The documentation for this class was generated from the following files: