File indexing completed on 2024-04-28 04:38:57

0001 /*
0002     SPDX-FileCopyrightText: 2016 Aetf <aetf@unlimitedcodeworks.xyz>
0003 
0004     SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005 */
0006 
0007 #ifndef LLDBLAUNCHER_H
0008 #define LLDBLAUNCHER_H
0009 
0010 #include <interfaces/ilauncher.h>
0011 
0012 class IExecutePlugin;
0013 namespace KDevMI { namespace LLDB {
0014 
0015 class LldbDebuggerPlugin;
0016 class LldbLauncher : public KDevelop::ILauncher
0017 {
0018 public:
0019     LldbLauncher(LldbDebuggerPlugin *plugin, IExecutePlugin *iexec);
0020     QList<KDevelop::LaunchConfigurationPageFactory*> configPages() const override;
0021     QString description() const override;
0022     QString id() override;
0023     QString name() const override;
0024     KJob* start(const QString &launchMode, KDevelop::ILaunchConfiguration *cfg) override;
0025     QStringList supportedModes() const override;
0026 
0027 private:
0028     QList<KDevelop::LaunchConfigurationPageFactory*> m_factoryList;
0029     LldbDebuggerPlugin *m_plugin;
0030     IExecutePlugin *m_iexec;
0031 };
0032 
0033 } // end of namespace LLDB
0034 } // end of namespace KDevMI
0035 
0036 #endif // LLDBLAUNCHER_H