robokudo.analysis_engine

Classes

AnalysisEngineInterface

Protocol defining the interface for Analysis Engines.

SubtreeInterface

Analysis Engines often contain reusable components which are used across different use cases.

Module Contents

class robokudo.analysis_engine.AnalysisEngineInterface

Bases: Protocol

Protocol defining the interface for Analysis Engines.

This interface must be implemented by all Analysis Engines in RoboKudo. Each Analysis Engine provides a behavior tree implementation for a specific task or pipeline. The RoboKudo runner will load and execute these implementations.

Warning

Do not instantiate this class directly. Instead, create a subclass that implements this interface.

See robokudo.descriptors.analysis_engines for example implementations.

name() str

Get the name of this Analysis Engine.

Returns:

The unique name identifying this Analysis Engine

Return type:

str

implementation() py_trees.behaviour.Behaviour

Get the behavior tree implementation for this Analysis Engine.

Returns:

The root node of the behavior tree implementing this engine

Return type:

py_trees.Behaviour

class robokudo.analysis_engine.SubtreeInterface

Bases: AnalysisEngineInterface

Analysis Engines often contain reusable components which are used across different use cases. To represent these parts, use the SubtreeInterface and create a subclass. Similarly to an AnalysisEngine, return the py_trees.Behaviour in the implementation method.

To provide semantic difference,

top_level = False