Add SnapmakerPrinterAgent with filament sync support

Introduce SnapmakerPrinterAgent as a MoonrakerPrinterAgent subclass
that handles Snapmaker UI -specific filament detection
This commit is contained in:
SoftFever
2026-02-01 21:35:53 +08:00
parent 1e1ffe72f6
commit 3da6f3bf77
7 changed files with 204 additions and 15 deletions

View File

@@ -0,0 +1,25 @@
#pragma once
#include "MoonrakerPrinterAgent.hpp"
#include <string>
namespace Slic3r {
class SnapmakerPrinterAgent final : public MoonrakerPrinterAgent
{
public:
explicit SnapmakerPrinterAgent(std::string log_dir);
~SnapmakerPrinterAgent() override = default;
static AgentInfo get_agent_info_static();
AgentInfo get_agent_info() override { return get_agent_info_static(); }
bool fetch_filament_info(std::string dev_id) override;
private:
// Combine filament_type + filament_sub_type into a unified type string
static std::string combine_filament_type(const std::string& type, const std::string& sub_type);
};
} // namespace Slic3r