UltraScan III
us_distrib_plot.h
Go to the documentation of this file.
1 #ifndef US_DISTRIB_PLOT_H
3 #define US_DISTRIB_PLOT_H
4 
5 #include <QtGui>
6 
7 #include "us_extern.h"
8 #include "us_widgets_dialog.h"
9 #include "us_dataIO.h"
10 #include "us_plot.h"
11 #include "us_help.h"
12 
13 #ifndef DbgLv
14 #define DbgLv(a) if(dbg_level>=a)qDebug()
15 #endif
16 
18 
20 {
21  Q_OBJECT
22 
23  public:
27  US_DistribPlot( QVector< double >&, QVector< double >&, const double );
28 
31  void save_plots( QString&, QString& );
32 
33  private:
34  QVector< double >& bfracs; // boundary fractions for divisions
35  QVector< double >& dsedcs; // sed.coeff. intercepts for divisions
36  double tot_conc;
37 
38  enum pType { DISTR, HISTO, ENVEL, COMBO, NONE };
39 
41 
44 
45  QLabel* lb_sensitivity;
46  QLabel* lb_smoothing;
47 
48  QPushButton* pb_histogram;
49  QPushButton* pb_envelope;
50  QPushButton* pb_plot_type;
51  QPushButton* pb_help;
52  QPushButton* pb_close;
53 
54  QwtCounter* ct_sensitivity;
55  QwtCounter* ct_smoothing;
56 
57  QwtPlot* data_plot;
58  QwtPlotCurve* dcurve;
59  QwtPlotCurve* hcurve;
60  QwtPlotCurve* ecurve;
61 
62  int divsCount;
63  int nSensit;
64  int nSmooth;
65  int dbg_level;
66 
67  private slots:
68  void type_plot ( void );
69  void hide_histo ( void );
70  void hide_envel ( void );
71  void show_plot ( void );
72  void plot_distrib ( void );
73  void plot_histogram( void );
74  void plot_envelope ( void );
75  void plot_combined ( void );
76  void change_sensit ( double );
77  void change_smooth ( double );
78  int histo_data( QVector< double >&, QVector< double >& );
79  int envel_data( QVector< double >&, QVector< double >& );
80  void save_data_file( QString );
81  void save_and_close( void );
82  void help ( void )
83  { showHelp.show_help( "vhw_distrib_plot.html" ); };
84 };
85 #endif
86