Public Types | Public Member Functions | Protected Attributes | List of all members
gpp_plugin::PluginGroup< _Plugin > Struct Template Reference

Common interface to a plugin group. More...

#include <gpp_plugin.hpp>

Inheritance diagram for gpp_plugin::PluginGroup< _Plugin >:
Inheritance graph
[legend]

Public Types

using NamedPlugin = std::pair< PluginParameter, PluginPtr >
 
using PluginMap = std::vector< NamedPlugin >
 
using PluginPtr = typename pluginlib::UniquePtr< _Plugin >
 

Public Member Functions

const bool & getDefaultValue () const noexcept
 
const std::string & getName () const noexcept
 
const PluginMapgetPlugins () const noexcept
 

Protected Attributes

bool default_value_
 
std::string name_ = "undefined"
 
PluginMap plugins_
 

Detailed Description

template<typename _Plugin>
struct gpp_plugin::PluginGroup< _Plugin >

Common interface to a plugin group.

The class defines the ownership and storage of plugins. Typically we own the plugin and store all of them in a vector.

Definition at line 148 of file gpp_plugin.hpp.

Member Typedef Documentation

◆ NamedPlugin

template<typename _Plugin >
using gpp_plugin::PluginGroup< _Plugin >::NamedPlugin = std::pair<PluginParameter, PluginPtr>

Definition at line 152 of file gpp_plugin.hpp.

◆ PluginMap

template<typename _Plugin >
using gpp_plugin::PluginGroup< _Plugin >::PluginMap = std::vector<NamedPlugin>

Definition at line 153 of file gpp_plugin.hpp.

◆ PluginPtr

template<typename _Plugin >
using gpp_plugin::PluginGroup< _Plugin >::PluginPtr = typename pluginlib::UniquePtr<_Plugin>

Definition at line 150 of file gpp_plugin.hpp.

Member Function Documentation

◆ getDefaultValue()

template<typename _Plugin >
const bool& gpp_plugin::PluginGroup< _Plugin >::getDefaultValue ( ) const
inlinenoexcept

Definition at line 166 of file gpp_plugin.hpp.

◆ getName()

template<typename _Plugin >
const std::string& gpp_plugin::PluginGroup< _Plugin >::getName ( ) const
inlinenoexcept

Definition at line 161 of file gpp_plugin.hpp.

◆ getPlugins()

template<typename _Plugin >
const PluginMap& gpp_plugin::PluginGroup< _Plugin >::getPlugins ( ) const
inlinenoexcept

Definition at line 156 of file gpp_plugin.hpp.

Member Data Documentation

◆ default_value_

template<typename _Plugin >
bool gpp_plugin::PluginGroup< _Plugin >::default_value_
protected

Definition at line 171 of file gpp_plugin.hpp.

◆ name_

template<typename _Plugin >
std::string gpp_plugin::PluginGroup< _Plugin >::name_ = "undefined"
protected

Definition at line 172 of file gpp_plugin.hpp.

◆ plugins_

template<typename _Plugin >
PluginMap gpp_plugin::PluginGroup< _Plugin >::plugins_
protected

Definition at line 173 of file gpp_plugin.hpp.


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


gpp_plugin
Author(s):
autogenerated on Wed Mar 2 2022 00:21:23