Ignition Plugin

API Reference

1.2.1

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::stringaliases
 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::stringdemangledInterfaces
 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

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

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.

◆ 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: