UltraScan III
us_noise.h
Go to the documentation of this file.
1 #ifndef US_NOISE_H
2 #define US_NOISE_H
3 
4 #include <QtCore>
5 #include "us_extern.h"
6 #include "us_db2.h"
7 #include "us_dataIO.h"
8 
10 
18 {
19  public:
21  US_Noise();
22 
24  enum NoiseType { RI, TI };
25 
27 
28  QString description;
29  QString noiseGUID;
30  QString modelGUID;
31 
32  double minradius;
33  double maxradius;
34 
35  int count;
36 
37  QVector< double > values;
38 
39  QString message;
40 
47  int load( bool, const QString&, US_DB2* = 0 );
48 
53  int load( const QString&, US_DB2* );
54 
55 
59  int load( const QString& );
60 
62  bool operator== ( const US_Noise& ) const;
64  inline bool operator!= ( const US_Noise& n ) const
65  { return ! operator==(n); }
66 
74  int write( bool, const QString&, US_DB2* = 0 );
75 
79  int write( US_DB2* );
80 
84  int write( const QString& );
85 
94  int apply_to_data( US_DataIO::EditedData&, bool = true );
95 
105  static int apply_noise( US_DataIO::EditedData&, US_Noise* = 0,
106  bool = true );
107 
113  static bool noise_path( QString& );
114 
119  bool sum_noise( US_Noise, bool = false );
120 
126  static bool sum_noises( US_Noise&, US_Noise, bool = false );
127  private:
128 
129  int load_disk ( const QString& );
130  int load_db ( const QString&, US_DB2* );
131 
132  int load_stream ( QXmlStreamReader& );
133  void write_stream ( QXmlStreamWriter& );
134 
135  void debug( void );
136 };
137 #endif