File indexing completed on 2024-05-19 15:45: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 LLDB_FRAMESTACKMODEL_H
0008 #define LLDB_FRAMESTACKMODEL_H
0009 
0010 #include "miframestackmodel.h"
0011 
0012 namespace KDevMI {
0013 
0014 namespace MI {
0015 struct AsyncRecord;
0016 }
0017 
0018 namespace LLDB {
0019 
0020 class DebugSession;
0021 class LldbFrameStackModel : public MIFrameStackModel
0022 {
0023     Q_OBJECT
0024 public:
0025     explicit LldbFrameStackModel(DebugSession* session);
0026 
0027     DebugSession* session();
0028 
0029 protected:
0030     void fetchThreads() override;
0031 
0032 private Q_SLOTS:
0033     void inferiorStopped(const MI::AsyncRecord& r);
0034 
0035 private:
0036     void handleThreadInfo(const MI::ResultRecord& r);
0037 
0038     int stoppedAtThread;
0039 };
0040 
0041 } // end of namespace LLDB
0042 } // end of namespace KDevMI
0043 
0044 #endif // LLDB_FRAMESTACKMODEL_H