Хранилища Subversion OpenInventory

Редакция

Редакция 242 | Редакция 248 | К новейшей редакции | Только различия | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS

Редакция 242 Редакция 243
1
#ifndef WMITHREAD_H
1
#ifndef WMITHREAD_H
2
#define WMITHREAD_H
2
#define WMITHREAD_H
3
3
4
#include <QThread>
4
#include <QThread>
5
#include <QProcess>
5
#include <QProcess>
6
#include <QMutex>
6
#include <QMutex>
7
#include <QDebug>
7
#include <QDebug>
-
 
8
#include <QEventLoop>
-
 
9
#include "woker.h"
8
10
9
class WmiThread : public QThread
11
class WmiThread : public QThread
10
{
12
{
11
    Q_OBJECT
13
    Q_OBJECT
12
public:
14
public:
13
    explicit WmiThread(QObject *parent = 0);
15
    explicit WmiThread(QObject *parent = 0);
14
    void run();
16
    void run();
15
    void stop();
17
    void stop();
16
    void setHost(QString new_host){host = new_host;}
18
    void setHost(QString new_host){host = new_host;}
17
    void setUser(QString new_user){user_name = new_user;}
19
    void setUser(QString new_user){user_name = new_user;}
18
    void setPassword(QString new_password){password = new_password;}
20
    void setPassword(QString new_password){password = new_password;}
19
    QByteArray buffer(){return p_buffer;}
21
    QByteArray buffer(){return p_buffer;}
20
    void clearBuffer(){p_buffer.clear();}
22
    void clearBuffer(){p_buffer.clear();}
21
    bool isError(){return error;}
23
    bool isError(){return error;}
22
    bool isStopped(){
24
    bool isStopped(){
23
        mutex.lock();
25
        mutex.lock();
24
        return stopped;
26
        return stopped;
25
        mutex.unlock();
27
        mutex.unlock();
26
28
27
                        };
29
                        };
28
    void setWmiString(QString new_wmi_string){wmi_string = new_wmi_string;}
30
    void setWmiString(QString new_wmi_string){wmi_string = new_wmi_string;}
-
 
31
volatile bool stopped;
29
private:
32
private:
30
    volatile bool stopped;
-
 
-
 
33
31
    volatile bool error;
34
    volatile bool error;
-
 
35
32
   QProcess process;
36
   QProcess process;
33
    QString host;
37
    QString host;
34
    QString user_name;
38
    QString user_name;
35
    QString password;
39
    QString password;
36
    QMutex mutex;
40
    QMutex mutex;
37
    QByteArray p_buffer; //çäåñü áóäåì õðàíèòü äàííûå, ñ÷èòàííûå èç ñòàíäàðòíîãî ïîòîêà äëÿ ÷òåíèÿ (ïðîöåññà)
41
    QByteArray p_buffer; //çäåñü áóäåì õðàíèòü äàííûå, ñ÷èòàííûå èç ñòàíäàðòíîãî ïîòîêà äëÿ ÷òåíèÿ (ïðîöåññà)
38
    QString wmi_string;  //çäåñü áóäåì õðàíèòü wmi-çàïðîñ
42
    QString wmi_string;  //çäåñü áóäåì õðàíèòü wmi-çàïðîñ
39
43
40
signals:
44
signals:
41
45
42
public slots:
46
public slots:
43
    void readStandartProcessOutput();
47
    void readStandartProcessOutput();
44
    void readStandartProcessError();
48
    void readStandartProcessError();
-
 
49
    void wokerIsStopped();
45
50
46
private slots:
51
private slots:
47
52
48
53
49
54
50
};
55
};
51
56
52
#endif // WMITHREAD_H
57
#endif // WMITHREAD_H
53
 
58