UltraScan III
us_solute.h
Go to the documentation of this file.
1 #ifndef US_SOLUTE_H
3 #define US_SOLUTE_H
4 
5 #include <QtCore>
6 
7 #include "us_extern.h"
8 
12 
14 {
15  public:
21  US_Solute( double = 0.0, double = 0.0, double = 0.0,
22  double = 0.0, double = 0.0 );
23 
24  double s;
25  double k;
26  double c;
27  double v;
28  double d;
29 
32  bool operator== ( const US_Solute& solute )
33  {
34  return ( s == solute.s && k == solute.k &&
35  v == solute.v && d == solute.d );
36  }
37 
40  bool operator!= ( const US_Solute& solute )
41  {
42  return ( s != solute.s || k != solute.k ||
43  v != solute.v || d != solute.d );
44  }
45 
49  bool operator< ( const US_Solute& solute ) const
50  {
51  if ( s < solute.s )
52  return true;
53 
54  else if ( s == solute.s && k < solute.k )
55  return true;
56 
57  else if ( s == solute.s && k == solute.k &&
58  d < solute.d )
59  return true;
60 
61  else if ( s == solute.s && k == solute.k &&
62  d == solute.d && v < solute.v )
63  return true;
64 
65  else
66  return false;
67  }
68 
81  static void init_solutes( double, double, int,
82  double, double, int, int, double,
83  QList< QVector< US_Solute > >& );
84 
85  private:
86  static QVector< US_Solute > create_solutes(
87  double s_min, double s_max, double s_step,
88  double ff0_min, double ff0_max, double ff0_step,
89  double cnstff0 );
90 };
91 #endif