Make MyGLWidget::pullData() a friend of WorkerThread class
[agianapa.git] / qt / sphere-orbit-camera-gui / workerthread.h
bloba17bcdf515c7800b794bd3b6e7145d06e283bc99
1 #ifndef WORKERTHREAD_H
2 #define WORKERTHREAD_H
4 #include <QDataStream>
5 #include <QFile>
6 #include <QMutex>
7 #include <QQueue>
8 #include <QThread>
9 #include <QWaitCondition>
11 #include "myglwidget.h"
12 //class MyGLWidget;
14 class WorkerThread : public QThread
16 Q_OBJECT
18 public:
19 WorkerThread(QObject *parent = 0);
20 ~WorkerThread();
21 QWaitCondition condition;
23 quint32 getMagicVersion(void) const;
24 quint32 getProtocolVersion(void) const;
25 quint32 getNumOfRecords(void) const;
27 //friend class MyGLWidget;
28 friend void MyGLWidget::pullData(void);
30 public slots:
31 void setFileName(QString fileName);
33 protected:
34 void run();
36 private:
37 void extractFileHeader(void);
39 QFile m_file;
40 QDataStream in;
41 QMutex mutex;
42 QQueue<float> m_data;
43 float prev;
44 bool abort;
46 // Header specific
47 quint32 m_magicVersion;
48 quint32 m_protocolVersion;
49 quint32 m_numOfRecords;
52 #endif // WORKERTHREAD_H