ImFusion SDK 4.3
PythonPlugin Class Reference

#include <ImFusion/Python/PythonPlugin.h>

Enables Python bindings for the ImFusionLib. More...

+ Inheritance diagram for PythonPlugin:

Detailed Description

Enables Python bindings for the ImFusionLib.

Starts an embedded Python interpreter when loaded and imports the 'imfusion' module. The Python version of the interpreter depends on the activeEnvironment configured in PythonPluginSettings.

Public Member Functions

const AlgorithmFactorygetAlgorithmFactory () override
 Get algorithm factory for algorithms hosted by plugin.
 
const AlgorithmControllerFactorygetAlgorithmControllerFactory () override
 Get algorithm controller factory for algorithms hosted by plugin.
 
std::string pluginName () const override
 Return the name of the plugin.
 
void setApplicationController (ApplicationController &app) override
 Gives the plugin access to the application controller.
 
bool isInterpreterRunning () const
 Returns if an interpreter was started successfully and Python is available.
 
PythonInterpreterInterfaceinterpreter () const
 Returns the embedded interpreter or nullptr.
 
- Public Member Functions inherited from ImFusionPlugin
virtual const DataAnnotationFactorygetDataAnnotationFactory ()
 Get data GL annotation factory for annotations hosted by plugin.
 
virtual std::vector< WorkspaceConversionFunctiongetWorkspaceConversionFunctions ()
 Return a list of workspace conversion functions and the corresponding workspace versions they apply to.
 
virtual ImFusionPlugin::VersionInfo version () const
 Return version.
 

Member Function Documentation

◆ getAlgorithmFactory()

const AlgorithmFactory * getAlgorithmFactory ( )
overridevirtual

Get algorithm factory for algorithms hosted by plugin.

Implements ImFusionPlugin.

◆ getAlgorithmControllerFactory()

const AlgorithmControllerFactory * getAlgorithmControllerFactory ( )
overridevirtual

Get algorithm controller factory for algorithms hosted by plugin.

Implements ImFusionPlugin.

◆ pluginName()

std::string pluginName ( ) const
inlineoverridevirtual

Return the name of the plugin.

Note
When implementing this method, make sure to use a unique identifier to avoid conflicts with other plugins.

Reimplemented from ImFusionPlugin.

◆ setApplicationController()

void setApplicationController ( ApplicationController & )
overridevirtual

Gives the plugin access to the application controller.

Plugins should not rely on this method being called in all setups.

Reimplemented from ImFusionPlugin.

◆ interpreter()

PythonInterpreterInterface * interpreter ( ) const

Returns the embedded interpreter or nullptr.

The interpreter is owned by the plugin and is deleted when the plugin is unloaded.


The documentation for this class was generated from the following file:
Search Tab / S to search, Esc to close