1
/****************************************************************************
2
**
3
** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
4
** All rights reserved.
5
** Contact: Nokia Corporation (qt-info@nokia.com)
6
**
7
** This file is part of the tools applications of the Qt Toolkit.
8
**
9
** $QT_BEGIN_LICENSE:LGPL$
10
** GNU Lesser General Public License Usage
11
** This file may be used under the terms of the GNU Lesser General Public
12
** License version 2.1 as published by the Free Software Foundation and
13
** appearing in the file LICENSE.LGPL included in the packaging of this
14
** file. Please review the following information to ensure the GNU Lesser
15
** General Public License version 2.1 requirements will be met:
16
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
17
**
18
** In addition, as a special exception, Nokia gives you certain additional
19
** rights. These rights are described in the Nokia Qt LGPL Exception
20
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
21
**
22
** GNU General Public License Usage
23
** Alternatively, this file may be used under the terms of the GNU General
24
** Public License version 3.0 as published by the Free Software Foundation
25
** and appearing in the file LICENSE.GPL included in the packaging of this
26
** file. Please review the following information to ensure the GNU General
27
** Public License version 3.0 requirements will be met:
28
** http://www.gnu.org/copyleft/gpl.html.
29
**
30
** Other Usage
31
** Alternatively, this file may be used in accordance with the terms and
32
** conditions contained in a signed written agreement between you and Nokia.
33
**
34
**
35
**
36
**
37
**
38
** $QT_END_LICENSE$
39
**
40
****************************************************************************/
41
42
#ifndef TRKSIGNALHANDLER_H
43
#define TRKSIGNALHANDLER_H
44
#include <QObject>
45
#include <QString>
46
#include "symbianutils/trkutils.h"
47
48
class TrkSignalHandlerPrivate;
49
class TrkSignalHandler : public QObject
50
{
51
    Q_OBJECT
52
public slots:
53
    void copyingStarted();
54
    void canNotConnect(const QString &errorMessage);
55
    void canNotCreateFile(const QString &filename, const QString &errorMessage);
56
    void canNotWriteFile(const QString &filename, const QString &errorMessage);
57
    void canNotCloseFile(const QString &filename, const QString &errorMessage);
58
    void installingStarted();
59
    void canNotInstall(const QString &packageFilename, const QString &errorMessage);
60
    void installingFinished();
61
    void startingApplication();
62
    void applicationRunning(uint pid);
63
    void canNotRun(const QString &errorMessage);
64
    void finished();
65
    void applicationOutputReceived(const QString &output);
66
    void copyProgress(int percent);
67
    void stateChanged(int);
68
    void stopped(uint pc, uint pid, uint tid, const QString& reason);
69
    void timeout();
70
    void libraryLoaded(const trk::Library &lib);
71
    void libraryUnloaded(const trk::Library &lib);
72
    void registersAndCallStackReadComplete(const QList<uint>& registers, const QByteArray& stack);
73
signals:
74
    void resume(uint pid, uint tid);
75
    void stop(uint pid, uint tid);
76
    void terminate();
77
    void getRegistersAndCallStack(uint pid, uint tid);
78
public:
79
    TrkSignalHandler();
80
    ~TrkSignalHandler();
81
    void setLogLevel(int);
82
    void setCrashLogging(bool);
83
    void setCrashLogPath(QString);
84
private:
85
    TrkSignalHandlerPrivate *d;
86
};
87
88
#endif // TRKSIGNALHANDLER_H