Fabric 0.2.0
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
fabric::ValidationBase Class Referenceabstract

Abstract base class for XML plan validation plugins. More...

#include <validation_base.hpp>

Inheritance diagram for fabric::ValidationBase:
Inheritance graph
[legend]

Public Member Functions

virtual ~ValidationBase ()=default
 
virtual void initialize (const rclcpp::Node::SharedPtr &node)
 Initialize the validation plugin with the given ROS2 node.
 
virtual void validate (fabric::Plan &plan, std::vector< CapabilityInfo > &capabilities)=0
 Validate the given XML plan.
 

Protected Member Functions

void initialize_base (const rclcpp::Node::SharedPtr &node, const std::string &plugin_name)
 Base initialization method for derived classes.
 

Protected Attributes

rclcpp::Node::SharedPtr node_
 Shared pointer to the ROS2 node.
 
std::string plugin_name_
 Name of the validation plugin.
 

Detailed Description

Abstract base class for XML plan validation plugins.

Implementations should provide a validate() method that checks the XML plan for errors.

Constructor & Destructor Documentation

◆ ~ValidationBase()

virtual fabric::ValidationBase::~ValidationBase ( )
virtualdefault

Member Function Documentation

◆ initialize()

virtual void fabric::ValidationBase::initialize ( const rclcpp::Node::SharedPtr &  node)
inlinevirtual

Initialize the validation plugin with the given ROS2 node.

Parameters
nodeShared pointer to the ROS2 node.

Reimplemented in fabric::CompatibilityValidation.

◆ initialize_base()

void fabric::ValidationBase::initialize_base ( const rclcpp::Node::SharedPtr &  node,
const std::string &  plugin_name 
)
inlineprotected

Base initialization method for derived classes.

Parameters
nodeShared pointer to the ROS2 node.
plugin_nameName of the validation plugin.

◆ validate()

virtual void fabric::ValidationBase::validate ( fabric::Plan plan,
std::vector< CapabilityInfo > &  capabilities 
)
pure virtual

Validate the given XML plan.

Parameters
planThe fabric::Plan to validate.
capabilitiesSupport data for evaluation as a vector of fabric::CapabilityInfo.

Implemented in fabric::CompatibilityValidation.

Member Data Documentation

◆ node_

rclcpp::Node::SharedPtr fabric::ValidationBase::node_
protected

Shared pointer to the ROS2 node.

◆ plugin_name_

std::string fabric::ValidationBase::plugin_name_
protected

Name of the validation plugin.


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