AtCore 1.0.72
AtCore is a API to manage the serial connection between the computer and 3D Printers.
Loading...
Searching...
No Matches
ifirmware.h
Go to the documentation of this file.
1/* AtCore KDE Libary for 3D Printers
2 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
3 SPDX-FileCopyrightText: 2016, 2018 Tomaz Canabrava <tcanabrava@kde.org>
4 SPDX-FileCopyrightText: 2016-2019 Chris Rizzitello <rizzitello@kde.org>
5 SPDX-FileCopyrightText: 2016-2019 Patrick José Pereira <patrickjp@kde.org>
6 SPDX-FileCopyrightText: 2016, 2019 Lays Rodrigues <lays.rodrigues@kde.org>
7 SPDX-FileCopyrightText: 2018 Leandro Santiago <leandrosansilva@gmail.com>
8*/
9
10#pragma once
11
12#include <QObject>
13#include <QString>
14
15#include "atcore_export.h"
16
17class Temperature;
18class AtCore;
19
24class ATCORE_EXPORT IFirmware : public QObject
25{
26 Q_OBJECT
27 Q_PROPERTY(QString name READ name CONSTANT)
28 Q_PROPERTY(bool sdSupport READ isSdSupported CONSTANT)
29public:
30 IFirmware();
31 void init(AtCore *parent);
32 ~IFirmware() override;
33
38 virtual bool isSdSupported() const = 0;
39
46 virtual QString name() const = 0;
47
52 virtual void validateCommand(const QString &lastMessage);
53
61 virtual QByteArray translate(const QString &command);
62
67 AtCore *core() const;
68
69private:
70 struct IFirmwarePrivate;
72public slots:
77 void checkCommand(const QByteArray &lastMessage);
78signals:
82 void readyForCommand(void);
83};
84
85Q_DECLARE_INTERFACE(IFirmware, "org.kde.atelier.core.firmware")
The AtCore class aims to provides a high level interface for serial based gcode devices
Definition atcore.h:45
The IFirmware class Base Class for Firmware Plugins.
Definition ifirmware.h:25
The Temperature class.
Definition temperature.h:21
The IFirmwarePrivate struct.
Definition ifirmware.cpp:16