Mass++ Common Libraries v2.7.5
 All Classes Namespaces Files Functions Variables Enumerations Macros
DataMapInfo.h
Go to the documentation of this file.
1 
12 #ifndef __KOME_IMG_DATA_MAP_INFO_H__
13 #define __KOME_IMG_DATA_MAP_INFO_H__
14 
15 
16 #include <vector>
17 
18 
19 namespace kome {
20  namespace objects {
21 
22  class Sample;
23  class DataGroupNode;
24  class Spectrum;
25  class DataSet;
26 
31  class DATA_OBJECTS_CLASS DataMapInfo {
32  public:
40  DataMapInfo( DataGroupNode& group, const unsigned int row, const unsigned int col );
41 
46  virtual ~DataMapInfo();
47 
48  protected:
50  unsigned int m_row;
52  unsigned int m_col;
55 
57  double* m_map;
58 
60  double m_minMz;
62  double m_maxMz;
64  double m_minRt;
66  double m_maxRt;
71 
73  bool m_completed;
74 
79  struct TmpData {
80  double* intensities;
81  double minMz;
82  double maxMz;
83  double minRt;
84  double maxRt;
85  double minIntensity;
86  double maxIntensity;
87  };
88 
91 
94 
95  public:
101  unsigned int getRowSize();
102 
108  unsigned int getColSize();
109 
115  DataGroupNode& getGroup();
116 
122  Sample* getSample();
123 
129  double getMinMz();
130 
136  double getMaxMz();
137 
143  double getMinRt();
144 
150  double getMaxRt();
151 
157  double getMinIntensity();
158 
164  double getMaxIntensity();
165 
173  double getIntensity( const unsigned int row, const unsigned int col );
174 
175  public:
181  void setCompleted( const bool completed );
182 
188  bool isCompleted();
189 
196  void setIntensityRange( const double minInt, const double maxInt );
197 
215  bool setRange(
216  double minMz,
217  double maxMz,
218  double minRt,
219  double maxRt,
220  const char* filterName,
221  kome::core::Progress& progress
222  );
223 
224  public:
230  void setAutoCommit( const bool autoCommit );
231 
237  bool isAutoCommit();
238 
243  void commit();
244 
249  void rollback();
250 
251  public:
258  bool saveDataMap( const char* path );
259 
266  bool loadDataMap( const char* path );
267 
268  protected:
278  void createImageMap(
279  std::vector< kome::objects::Spectrum* >& spectra,
280  kome::core::Progress& progress
281  );
282 
294  void getSpecIntensities(
295  Spectrum* spec,
296  double* intensities,
297  int size
298  );
299 
306  void getSpecArray( const char* filterName, std::vector< kome::objects::Spectrum* >& tmpSpecArray );
307  protected:
312  void createTmpData();
313 
318  void deleteTmpData();
319 
320  protected:
328  static bool lessSpec( Spectrum* spec0, Spectrum* spec1 );
329  };
330  }
331 }
332 
333 #endif // __KOME_IMG_DATA_MAP_INFO_H__
group of spectrum management class
Definition: DataGroupNode.h:33
sample information management class
Definition: Sample.h:34
deta map information
Definition: DataMapInfo.h:31
progress display abstract class
Definition: Progress.h:31
DataGroupNode * m_group
Definition: DataMapInfo.h:54
spectrum information management class
Definition: Spectrum.h:30