qavrg 0.0.28
qavrgapplication.h
Go to the documentation of this file.
00001 #ifndef QAVRGAPPLICATION_H
00002 #define QAVRGAPPLICATION_H
00003 
00004 #include <QApplication>
00005 #include "qcepsettingssaver.h"
00006 #include "qcepsettingssaver-ptr.h"
00007 
00008 class QavrgWindow;
00009 class QavrgServerThread;
00010 class QavrgServer;
00011 class QavrgSpecServerThread;
00012 class QavrgSpecServer;
00013 class QavrgScriptingThread;
00014 class QavrgScriptingEngine;
00015 class QavrgEpicsInterface;
00016 class QavrgAcquisitionThread;
00017 class QavrgAcquisition;
00018 class QavrgFillPattern;
00019 class QavrgSettings;
00020 class QDoubleSpinBox;
00021 
00022 class QavrgApplication : public QApplication
00023 {
00024   Q_OBJECT;
00025 
00026  public:
00027   QavrgApplication(int &argc, char **argv);
00028   ~QavrgApplication();
00029 
00030   QavrgFillPattern *fillPattern();
00031 
00032  public slots:
00033   void shutdownThreads();
00034   void possiblyQuit();
00035   void printMessage(QString msg, QDateTime ts=QDateTime::currentDateTime());
00036 
00037   void loadSettings();
00038   void saveSettings();
00039 
00040   void readSettings();
00041   void readSettings(QString filePath);
00042   void writeSettings();
00043   void writeSettings(QString filePath);
00044 
00045 public:
00046   QcepSettingsSaverWPtr saver() const;
00047 
00048  private:
00049   bool wantToQuit();
00050 
00051   void readSettings(QavrgSettings *settings);
00052   void writeSettings(QavrgSettings *settings);
00053 
00054  private:
00055   QcepSettingsSaverPtr           m_SettingsSaver;
00056   QavrgWindow                   *m_Window;
00057   QavrgServerThread             *m_ServerThread;
00058   QavrgServer                   *m_Server;
00059   QavrgSpecServerThread         *m_SpecServerThread;
00060   QavrgSpecServer               *m_SpecServer;
00061   QavrgScriptingThread          *m_ScriptingThread;
00062   QavrgScriptingEngine          *m_ScriptingEngine;
00063   QavrgAcquisitionThread        *m_AcquisitionThread;
00064   QavrgAcquisition              *m_Acquisition;
00065   QavrgEpicsInterface           *m_EpicsInterface;
00066 };
00067 
00068 #endif