00001 #ifndef QSECONTROLLER_H 00002 #define QSECONTROLLER_H 00003 00004 #include <QPen> 00005 #include <QThread> 00006 #include <QTimer> 00007 00008 class QseProcessorMain; 00009 class ColoredTableItem; 00010 class QTableWidget; 00011 class QSettings; 00012 class QwtPlot; 00013 class QProgressBar; 00014 class QseGraphController; 00015 class SummaryTableController; 00016 class QseDataSetModel; 00017 class QseDataFlow; 00018 class QseScan; 00019 00020 class QseDataDeglitcherUI; 00021 class QseNormalizerUI; 00022 class QseEdgeAlignerUI; 00023 class QseScanAveragerUI; 00024 00025 class QseController : public QObject 00026 { 00027 Q_OBJECT; 00028 00029 public: 00030 QseController(QseProcessorMain *w, QObject *parent = 0); 00031 ~QseController(); 00032 00033 void readSettings(QSettings *settings); 00034 void writeSettings(QSettings *settings); 00035 00036 signals: 00037 void currentScanChanged(int); 00038 void normalizedScansChanged(); 00039 void averagedScansChanged(); 00040 00041 public slots: 00042 void message(const QString& message); 00043 void setProgress(int level); 00044 00045 void openCompleted(void); 00046 00047 void runNormalizer(void); 00048 00049 void averageSelectedScans(); 00050 00051 void openDataFile(); 00052 void appendDataFile(); 00053 void openControlFile(); 00054 void saveSplitDataFile(); 00055 void saveNormalizedFile(); 00056 void saveAveragedFile(); 00057 void saveControlFile(); 00058 void exitApplication(); 00059 void readDataFile(const QString &name); 00060 void appendDataFile(const QString &name); 00061 void readControlFile(const QString &name); 00062 void writeControlFile(const QString &name); 00063 00064 signals: 00065 int openFile(QString fileName); 00066 void writeScans(const QString &fileName); 00067 00068 private slots: 00069 00070 void openQSEHomePage(); 00071 00072 private: 00073 void setupActions(); 00074 00075 QseScan* scan(int n); 00076 QseScan* currentScan(); 00077 00078 private: 00079 QseDataFlow *m_DataFlow; 00080 QseProcessorMain *m_MainWindow; 00081 int m_CurrentScan; 00082 00083 QseGraphController *m_InputDataUI; 00084 QseDataDeglitcherUI *m_DeglitcherUI; 00085 QseNormalizerUI *m_NormalizerUI; 00086 QseEdgeAlignerUI *m_EdgeAlignerUI; 00087 QseScanAveragerUI *m_ScanAveragerUI; 00088 QseGraphController *m_NormalizedController; 00089 QseGraphController *m_AveragedController; 00090 00091 protected: 00092 00093 QProgressBar *m_Progress; 00094 }; 00095 00096 #endif
1.5.6