-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathgdbprocess.h
40 lines (36 loc) · 1.18 KB
/
gdbprocess.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#ifndef GDBPROCESS_H
#define GDBPROCESS_H
#include <QObject>
#include <QProcess>
#include <qcoreapplication.h>
#include <qfile.h>
#include <qregexp.h>
#include <qdebug.h>
#include <QTime>
class GDBProcess : public QObject
{
Q_OBJECT
public:
explicit GDBProcess(QObject *parent = nullptr);
~GDBProcess();
QString runCmd(const QString &cmd);
void start();
void stop();
void connectToRemote(const QString &addr);
void disconnectFromRemote();
void setTempSymbolFileName(const QString &name);
void loadSymbolFile(const QString &path);
void unloadSymbolFile();
void setDisplayList(QStringList &list);
QString captureValueFromDisplay(const QString &rawDisplay,const QString &name);
bool getDoubleFromDisplayValue(const QString &rawValue,double &result);
QList<uint> getUintArrayFromDisplay(const QString &rawDisplay);
void setVarValue(const QString &varFullName,double value);
bool checkExpandableType(const QString &varFullName);
QStringList getVarListFromRawOutput(const QString &rawVarList);
void removeInnerSection(QString &raw,int offset);
private:
QProcess *process;
QString tempSymbolFileName;
};
#endif // GDBPROCESS_H