UltraScan III
us_convert.h
Go to the documentation of this file.
1 #ifndef US_CONVERT_H
3 #define US_CONVERT_H
4 
5 #include "us_extern.h"
6 #include "us_dataIO.h"
7 #include "us_solution.h"
8 
13 {
14  public:
16  enum ioError
17  {
18  OK,
23  NODB,
30  };
31 
34  class Excludes
35  {
36  public:
37  QList< int > excludes;
38  bool contains ( int x )
39  { return excludes.contains( x ); }
40  bool empty ()
41  { return excludes.empty(); }
42  void push_back( int x )
43  { excludes.push_back( x ); }
44  Excludes& operator<<( const int x )
45  { this->push_back( x ); return *this; }
46  int size( void )
47  { return excludes.size(); }
48  };
49 
52  class TripleInfo
53  {
54  public:
55  int tripleID;
56  QString tripleDesc;
57  QString description;
58  char tripleGUID[16];
59  QString tripleFilename;
60  bool excluded;
63  int channelID;
64  TripleInfo();
65  void clear( void );
66  void show( void );
67  };
68 
72  US_Convert( void );
73 
84  static void readLegacyData(
85  QString ,
86  QList< US_DataIO::BeckmanRawScan >& ,
87  QString& );
88 
105  static void convertLegacyData(
106  QList < US_DataIO::BeckmanRawScan >& ,
107  QVector< US_DataIO::RawData >& ,
108  QList< TripleInfo >& ,
109  QString ,
110  double );
111 
130  static int saveToDisk(
131  QVector< US_DataIO::RawData* >& ,
132  QList< TripleInfo >& ,
133  QVector< Excludes >& ,
134  QString ,
135  QString ,
136  QString,
137  bool );
138 
154  static int readUS3Disk(
155  QString ,
156  QVector< US_DataIO::RawData >& ,
157  QList< TripleInfo >& ,
158  QString& );
159 
170  static void splitRAData ( QVector< US_DataIO::RawData >& ,
171  QList< TripleInfo >& ,
172  int ,
173  QList< double >& );
174 
175  private:
176  static void convert( QList< US_DataIO::BeckmanRawScan >& rawLegacyData,
177  US_DataIO::RawData& newRawData,
178  QString triple,
179  QString runType,
180  double tolerance );
181 
182  static void setTriples (
183  QList< US_DataIO::BeckmanRawScan >& rawLegacyData,
184  QList< TripleInfo >& triples,
185  QString runType,
186  double tolerance );
187 
188  static void setCcwTriples (
189  QList< US_DataIO::BeckmanRawScan >& rawLegacyData,
190  QList< TripleInfo >& triples,
191  double tolerance );
192 
193  static void setCcrTriples (
194  QList< US_DataIO::BeckmanRawScan >& rawLegacyData,
195  QList< TripleInfo >& triples,
196  double tolerance );
197 
198  static void setInterpolated ( unsigned char*, int );
199 
201  QVector< double >& radii,
202  double r_start,
203  double r_end );
204 };
205 #endif