00001
00002
00003 #ifndef FITLISTDIALOG_H
00004 #define FITLISTDIALOG_H
00005
00006 #include <qtextedit.h>
00007 #include "ListDialog.h"
00008
00009 #ifdef HAVE_GSL
00010 #include <gsl/gsl_multifit_nlin.h>
00011 int fun_f(const gsl_vector *x, void *params, gsl_vector *f);
00012 int fun_df(const gsl_vector *x, void *params, gsl_matrix *J);
00013 int fun_fdf(const gsl_vector *x, void *params, gsl_vector *f,gsl_matrix *J);
00014 #endif
00015
00016 #define NR_PARS 9
00017
00018 class FitListDialog : public ListDialog
00019 {
00020 Q_OBJECT
00021 public:
00022 FitListDialog(MainWin *mw, const char *name);
00023 private slots:
00024 void updateModel(int model);
00025 void updateParameter();
00026 void ok_clicked() { apply_clicked(); accept(); }
00027 void apply_clicked();
00028 private:
00029 #ifdef HAVE_GSL
00030 void print_state(int iter, gsl_multifit_fdfsolver * s);
00031 #endif
00032 QTextEdit *infote;
00033 KComboBox *modelcb, *weightcb;
00034 QCheckBox *regioncb, *baselinecb, *resultcb;
00035 KLineEdit *funle, *parle, *stepsle, *tolle;
00036 KLineEdit *parNle[NR_PARS];
00037 KLineEdit *regionminle, *regionmaxle, *baselinele;
00038 KLineEdit *minle, *maxle;
00039 };
00040
00041 #endif // FITLISTDIALOG_H
00042