| 1 | // SPDX-FileCopyrightText: 2023 UnionTech Software Technology Co., Ltd. |
| 2 | // |
| 3 | // SPDX-License-Identifier: GPL-3.0-or-later |
| 4 | |
| 5 | #ifndef DAPPROXY_H |
| 6 | #define DAPPROXY_H |
| 7 | |
| 8 | #include "dap/protocol.h" |
| 9 | #include <QObject> |
| 10 | |
| 11 | class DapProxy final: public QObject |
| 12 | { |
| 13 | Q_OBJECT |
| 14 | public: |
| 15 | static DapProxy *instance(); |
| 16 | |
| 17 | Q_SIGNALS: |
| 18 | void sigStart(); |
| 19 | void sigQuit(); |
| 20 | void sigKill(); |
| 21 | void sigLaunchLocal(); |
| 22 | void sigLaunchRemote(const QString& remoteTarget); |
| 23 | void sigAttachProcess(const int pid); |
| 24 | void sigAttachThreadGroup(const QString& gid); |
| 25 | void sigDetachProcess(const int pid); |
| 26 | void sigDetachThreadGroup(const QString& gid); |
| 27 | void sigDetach(); |
| 28 | void sigDisconnect(); |
| 29 | void sigContinue(); |
| 30 | void sigPause(); |
| 31 | void sigNext(); |
| 32 | void sigStepin(); |
| 33 | void sigStepout(); |
| 34 | void sigStepover(); |
| 35 | void sigBreakInsert(const QString& path); |
| 36 | void sigThreads(); |
| 37 | void sigSelectThread(const int threadId); |
| 38 | void sigStackTrace(); |
| 39 | void sigSelectStackFrame(const dap::StackFrame& stackFrame); |
| 40 | void sigScopes(const qint64 frame); |
| 41 | void sigVariables(); |
| 42 | void sigSource(); |
| 43 | void sigStreamOutput(const QString sOut); |
| 44 | void sigBreakRemoveAll(); |
| 45 | |
| 46 | private: |
| 47 | explicit DapProxy(QObject *parent = nullptr); |
| 48 | virtual ~DapProxy(); |
| 49 | }; |
| 50 | |
| 51 | #endif //DAPPROXY_H |
| 52 | |