KiCad PCB EDA Suite
Loading...
Searching...
No Matches
IO_MGR::PLUGIN_REGISTRY Class Reference

Hold a list of available plugins, created using a singleton REGISTER_PLUGIN object. More...

#include <io_mgr.h>

Classes

struct  ENTRY
 

Public Member Functions

void Register (PCB_FILE_T aType, const wxString &aName, std::function< PLUGIN *(void)> aCreateFunc)
 
PLUGINCreate (PCB_FILE_T aFileType) const
 
const std::vector< ENTRY > & AllPlugins () const
 

Static Public Member Functions

static PLUGIN_REGISTRYInstance ()
 

Private Attributes

std::vector< ENTRYm_plugins
 

Detailed Description

Hold a list of available plugins, created using a singleton REGISTER_PLUGIN object.

This way, plugins can be added link-time.

Definition at line 76 of file io_mgr.h.

Member Function Documentation

◆ AllPlugins()

const std::vector< ENTRY > & IO_MGR::PLUGIN_REGISTRY::AllPlugins ( ) const
inline

Definition at line 120 of file io_mgr.h.

References m_plugins.

Referenced by IO_MGR::EnumFromStr(), and IO_MGR::ShowType().

◆ Create()

PLUGIN * IO_MGR::PLUGIN_REGISTRY::Create ( PCB_FILE_T  aFileType) const
inline

Definition at line 107 of file io_mgr.h.

References m_plugins.

Referenced by IO_MGR::PluginFind().

◆ Instance()

static PLUGIN_REGISTRY * IO_MGR::PLUGIN_REGISTRY::Instance ( )
inlinestatic

◆ Register()

void IO_MGR::PLUGIN_REGISTRY::Register ( PCB_FILE_T  aType,
const wxString &  aName,
std::function< PLUGIN *(void)>  aCreateFunc 
)
inline

Member Data Documentation

◆ m_plugins

std::vector<ENTRY> IO_MGR::PLUGIN_REGISTRY::m_plugins
private

Definition at line 126 of file io_mgr.h.

Referenced by AllPlugins(), Create(), and Register().


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