QXRD  0.11.16
qxrdexperimentthread.h
Go to the documentation of this file.
1 #ifndef QXRDEXPERIMENTTHREAD_H
2 #define QXRDEXPERIMENTTHREAD_H
3 
4 #include <QThread>
5 #include <QSharedPointer>
6 #include <QSettings>
7 #include "qxrdthread.h"
8 
9 #include "qxrdexperiment-ptr.h"
10 #include "qxrdapplication-ptr.h"
12 
13 class QxrdExperimentThread : public QxrdThread, public QEnableSharedFromThis<QxrdExperimentThread>
14 {
15  Q_OBJECT
16 public:
17  QxrdExperimentThread(QString path, QxrdApplicationWPtr app, QSettings *settings);
18  virtual ~QxrdExperimentThread();
19 
20  void init(QxrdExperimentThreadWPtr expThread);
21 
22  static QxrdExperimentThreadPtr newExperiment(QString path, QxrdApplicationWPtr app, QSettings *settings);
23 
25 
26  void shutdown();
27 
28 signals:
29 
30 public slots:
31 
32 protected:
33  void run();
34 
35 private:
38  QSettings *m_Settings;
41 };
42 
43 typedef QSharedPointer<QxrdExperimentThread> QxrdExperimentThreadPtr;
44 typedef QWeakPointer<QxrdExperimentThread> QxrdExperimentThreadWPtr;
45 
46 #endif // QXRDEXPERIMENTTHREAD_H
QSharedPointer< QxrdExperiment > QxrdExperimentPtr
static QxrdExperimentThreadPtr newExperiment(QString path, QxrdApplicationWPtr app, QSettings *settings)
QxrdApplicationWPtr m_Application
QxrdExperimentThread(QString path, QxrdApplicationWPtr app, QSettings *settings)
QWeakPointer< QxrdApplication > QxrdApplicationWPtr
QSharedPointer< QxrdExperimentThread > QxrdExperimentThreadPtr
QxrdExperimentPtr experiment()
QWeakPointer< QxrdExperimentThread > QxrdExperimentThreadWPtr
QxrdExperimentPtr m_Experiment
QxrdExperimentThreadWPtr m_ExperimentThread
QWeakPointer< QxrdExperimentThread > QxrdExperimentThreadWPtr
void init(QxrdExperimentThreadWPtr expThread)
QSharedPointer< QxrdExperimentThread > QxrdExperimentThreadPtr