Noether  0.0.0
Loading...
Searching...
No Matches
noether::SimplePlugin< DerivedT, BaseT > Struct Template Reference

Template for a simple implementation of Plugin. More...

Detailed Description

template<typename DerivedT, typename BaseT>
struct noether::SimplePlugin< DerivedT, BaseT >

This plugin makes a new instance of DerivedT and configures it with the input YAML config.

Use this class to define a plugin for your custom tool path planning component class if your class can be fully configured using only the YAML::Node configuration:

using Plugin_MyClass = SimplePlugin<MyClass>;
Template for a simple implementation of Plugin.
Definition plugin_interface.h:92

#include <plugin_interface.h>

Inheritance diagram for noether::SimplePlugin< DerivedT, BaseT >:

Public Member Functions

std::unique_ptr< BaseT > create (const YAML::Node &config, std::shared_ptr< const Factory >) const override final
 Returns a pointer to a configured tool path planning component (e.g., mesh modifier, tool path planner, tool path modifier).
 

Additional Inherited Members

- Public Types inherited from noether::Plugin< BaseT >
typedef BaseT ComponentT
 Typedef for the tool path planning component type.
 
using Ptr = std::shared_ptr< Plugin >
 

Member Function Documentation

◆ create()

template<typename DerivedT , typename BaseT >
std::unique_ptr< BaseT > noether::SimplePlugin< DerivedT, BaseT >::create ( const YAML::Node &  config,
std::shared_ptr< const Factory factory 
) const
inlinefinaloverridevirtual
Parameters
configYAML configuration node used to configure the component
factoryFactory for loading nested tool path planning components

Implements noether::Plugin< BaseT >.