00001 00013 #ifndef POSITRONIMP_H 00014 #define POSITRONIMP_H 00015 00016 #include "positron.h" 00017 #include "aiplot.h" 00018 #include <qprogressdialog.h> 00019 #include <qthread.h> 00020 #include <qfile.h> 00021 #include <qmessagebox.h> 00022 #include <qtextstream.h> 00023 #include <qlistbox.h> 00024 #include <qtabwidget.h> 00025 #include <qcombobox.h> 00026 #include <qtextbrowser.h> 00027 #include <qtable.h> 00028 #include <qspinbox.h> 00029 #include <qdir.h> 00030 #include <qslider.h> 00031 00035 #define SPEKTRUMMAX 50 00036 00041 #define VOREINSTELLUNGENMAX 20 00042 00043 00050 class PositronImp : public Positron 00051 { 00052 Q_OBJECT 00053 00054 public: 00055 00063 PositronImp( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); 00064 00070 ~PositronImp(); 00071 00072 public slots: 00073 00081 void Beenden_slot(); 00082 00090 void Hilfe_slot(); 00091 00101 void Einfuehrung_Weiter_slot(); 00102 00111 void Auswahl_EigeneSpektren_slot(int nr); 00112 00121 void Auswahl_VordefinierteSpektren_slot(int nr); 00122 00132 void Auswahl_Weiter_slot(); 00133 00143 void Auwahl_SpektrumSimulieren_slot(); 00144 00156 void Startwerte_VordefinierteStartwerte_slot(int nr); 00157 00168 void Startwerte_AnzahlderIterationen_slot(int nr); 00169 00181 void Startwerte_AnzahlderModellterme_slot(int nr); 00182 00191 void Startwerte_AuswertungStarten_slot(); 00192 00199 void Startwerte_Genauigkeit_slot(int nr); 00200 00206 void Animation_Slider_slot(int nr); 00207 00216 void Animation_Play_slot(); 00225 void Animation_Stop_slot(); 00226 /* \fn void Ergebnisse_Kovarianz_slot(); 00227 \brief Wird ausgelöst, wenn der Benutzer auf den Kovarianzmatrix-Button auf der Ergebnissseite drückt, öffnet den Kovarianzmatrixdialog 00228 */ 00229 void Ergebnisse_Kovarianz_slot(); 00233 void Ergebnisse_Weiter_slot(); 00234 private: 00241 int AnzahldervordefiniertenSpektren; 00242 00251 int AnzahlderBenutzerSpektren; 00252 00259 int AnzahlderVoreinstellungen[2*SPEKTRUMMAX]; 00263 int Voreinstellunggewaehlt; 00267 int Spektrumgewaehlt; 00271 int VordefinierteAnzahlderZerfallsterme[2*SPEKTRUMMAX]; 00275 QString voreinstellungennamen[VOREINSTELLUNGENMAX]; 00279 QString voreinstellungenergebnisstext[VOREINSTELLUNGENMAX]; 00283 int voreinstellungenjmax[VOREINSTELLUNGENMAX]; 00287 double voreinstellungenstartwerte[VOREINSTELLUNGENMAX][12]; 00288 00292 QString dateinamen[2*SPEKTRUMMAX]; 00296 QString spektrumnamen[2*SPEKTRUMMAX]; 00300 void init(); 00304 void initEinfuehrung(); 00309 void aktualisiereAuswahlGraphik(int nr); 00310 00337 double *xmess,*ymess,*sig,*yplot,alamda; 00344 double *astart; 00351 double residuummax,residuummin; 00355 int tatit; 00359 void initAuswahl(); 00363 void initStartwerte(); 00367 void aktualisiereAnimation(int frame); 00371 int leseDateiNamen(); 00375 int leseSpektrumName(int nummer); 00379 int leseSpektrum(int nummer); 00383 AIPlot *AnimationGraphic; 00387 AIPlot *AnimationGraphic2; 00391 AIPlot *AuswahlGraphic; 00395 AIPlot *ChisqGraphic; 00396 }; 00397 00398 #endif // POSITRONIMP_H 00399