diff --git a/cura/BackendPlugin.py b/cura/BackendPlugin.py index a92e4fe405..b4a6ad8835 100644 --- a/cura/BackendPlugin.py +++ b/cura/BackendPlugin.py @@ -6,9 +6,10 @@ from typing import Optional, List from UM.Logger import Logger from UM.Message import Message from UM.Settings.AdditionalSettingDefinitionAppender import AdditionalSettingDefinitionsAppender +from UM.PluginObject import PluginObject -class BackendPlugin(AdditionalSettingDefinitionsAppender): +class BackendPlugin(AdditionalSettingDefinitionsAppender, PluginObject): def __init__(self) -> None: super().__init__() self.__port: int = 0 diff --git a/plugins/CuraEngineBackend/Cura.proto b/plugins/CuraEngineBackend/Cura.proto index d5d7c92d0b..f60a7f96d8 100644 --- a/plugins/CuraEngineBackend/Cura.proto +++ b/plugins/CuraEngineBackend/Cura.proto @@ -19,8 +19,10 @@ enum SlotID { message EnginePlugin { SlotID id = 1; - optional string address = 2; - optional uint32 port = 3; + string address = 2; + uint32 port = 3; + string plugin_name = 4; + string plugin_version = 5; } message Slice diff --git a/plugins/CuraEngineBackend/StartSliceJob.py b/plugins/CuraEngineBackend/StartSliceJob.py index b1f92b3b25..892e4dfca6 100644 --- a/plugins/CuraEngineBackend/StartSliceJob.py +++ b/plugins/CuraEngineBackend/StartSliceJob.py @@ -314,6 +314,8 @@ class StartSliceJob(Job): plugin_message.id = slot plugin_message.address = plugin.getAddress() plugin_message.port = plugin.getPort() + plugin_message.plugin_name = plugin.getPluginId() + plugin_message.plugin_version = plugin.getVersion() for group in filtered_object_groups: group_message = self._slice_message.addRepeatedMessage("object_lists")