Info Struct Reference
Holds info required to construct a plugin. More...
#include <Info.hh>
Public Types | |
using | InterfaceCastingMap = std::unordered_map< std::string, std::function< void *(void *)> > |
The keys are the names of the types of interfaces that this plugin provides. The values are functions that convert a void pointer (which actually points to the plugin instance) to another void pointer (which actually points to the location of the interface within the plugin instance). More... | |
Public Member Functions | |
void | Clear () |
Clear out all information contained in this Info object. More... | |
Public Attributes | |
IGN_UTILS_WARN_RESUME__DLL_INTERFACE_MISSING IGN_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING std::set< std::string > | aliases |
Alternative names that may be used to instantiate the plugin. More... | |
IGN_UTILS_WARN_RESUME__DLL_INTERFACE_MISSING IGN_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING std::function< void(void *)> | deleter |
A method that safely deletes an instance of the plugin. More... | |
IGN_UTILS_WARN_RESUME__DLL_INTERFACE_MISSING IGN_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING std::set< std::string > | demangledInterfaces |
This is a set containing the demangled versions of the names of the interfaces provided by this plugin. This gets filled in by the Loader after receiving the Info. It is only used by the user-facing API. Internally, when looking up Interfaces, the mangled interfaces map will still be used. More... | |
IGN_UTILS_WARN_RESUME__DLL_INTERFACE_MISSING IGN_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING std::function< void *()> | factory |
A method that instantiates a new instance of a plugin. More... | |
InterfaceCastingMap | interfaces |
IGN_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING std::string | name |
The name of the plugin. More... | |
Detailed Description
Holds info required to construct a plugin.
Member Typedef Documentation
◆ InterfaceCastingMap
using InterfaceCastingMap = std::unordered_map< std::string, std::function<void*(void*)> > |
The keys are the names of the types of interfaces that this plugin provides. The values are functions that convert a void pointer (which actually points to the plugin instance) to another void pointer (which actually points to the location of the interface within the plugin instance).
Member Function Documentation
◆ Clear()
void Clear | ( | ) |
Clear out all information contained in this Info object.
Member Data Documentation
◆ aliases
IGN_UTILS_WARN_RESUME__DLL_INTERFACE_MISSING IGN_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING std::set<std::string> aliases |
Alternative names that may be used to instantiate the plugin.
◆ deleter
IGN_UTILS_WARN_RESUME__DLL_INTERFACE_MISSING IGN_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING std::function<void(void*)> deleter |
A method that safely deletes an instance of the plugin.
◆ demangledInterfaces
IGN_UTILS_WARN_RESUME__DLL_INTERFACE_MISSING IGN_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING std::set<std::string> demangledInterfaces |
◆ factory
IGN_UTILS_WARN_RESUME__DLL_INTERFACE_MISSING IGN_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING std::function<void*()> factory |
A method that instantiates a new instance of a plugin.
◆ interfaces
InterfaceCastingMap interfaces |
◆ name
IGN_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING std::string name |
The name of the plugin.
The documentation for this struct was generated from the following file: