summaryrefslogtreecommitdiffstats
path: root/tools/runonphone/trksignalhandler.h
diff options
context:
space:
mode:
authorShane Kearns <shane.kearns@accenture.com>2010-07-08 13:49:16 +0200
committerShane Kearns <shane.kearns@accenture.com>2010-07-08 14:08:21 +0200
commitae2dfea96819a7b145f083bf39a674df90239066 (patch)
tree66f153d538bfe87cf26acfed65b52898642d7075 /tools/runonphone/trksignalhandler.h
parent627d62c17b29cf5a99252aeff965b4f848d4d171 (diff)
Implement just in time debug feature for runonphone
When the test being run crashes, runonphone will now retrieve the registers and call stack for the crashing thread from the phone and save to a crash log (compatible with d_exc crash logs, so existing tools can be used to analyse the log) To disable just in time debug, use --nocrashlog on the command line To save the crash logs to a different location, use --crashlogpath <path> otherwise, they are saved to the working directory. To convert the crash logs into human readable form, use the crash analyser carbide plugin from symbian foundation; or another symbian tool that can process d_exc style logs. Reviewed-by: Thomas Zander
Diffstat (limited to 'tools/runonphone/trksignalhandler.h')
-rw-r--r--tools/runonphone/trksignalhandler.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/tools/runonphone/trksignalhandler.h b/tools/runonphone/trksignalhandler.h
index d31e46f0c8..bfe2c3ea5b 100644
--- a/tools/runonphone/trksignalhandler.h
+++ b/tools/runonphone/trksignalhandler.h
@@ -43,6 +43,7 @@
#define TRKSIGNALHANDLER_H
#include <QObject>
#include <QString>
+#include "symbianutils/trkutils.h"
class TrkSignalHandlerPrivate;
class TrkSignalHandler : public QObject
@@ -66,13 +67,20 @@ public slots:
void stateChanged(int);
void stopped(uint pc, uint pid, uint tid, const QString& reason);
void timeout();
+ void libraryLoaded(const trk::Library &lib);
+ void libraryUnloaded(const trk::Library &lib);
+ void registersAndCallStackReadComplete(const QList<uint>& registers, const QByteArray& stack);
signals:
void resume(uint pid, uint tid);
+ void stop(uint pid, uint tid);
void terminate();
+ void getRegistersAndCallStack(uint pid, uint tid);
public:
TrkSignalHandler();
~TrkSignalHandler();
void setLogLevel(int);
+ void setCrashLogging(bool);
+ void setCrashLogPath(QString);
private:
TrkSignalHandlerPrivate *d;
};