Mass++ mzML IO Plugin v2.7.5
 All Classes Namespaces Files Functions Variables Enumerations
MzmlManager.h
Go to the documentation of this file.
1 
12 #ifndef __KOME_IO_MZML_MANAGER_H__
13 #define __KOME_IO_MZML_MANAGER_H__
14 
15 
16 namespace kome {
17  namespace io {
18  namespace mzml {
19 
20  class Accession;
21 
26  class MzmlManager {
27  protected:
32  MzmlManager();
33 
38  virtual ~MzmlManager();
39 
40  protected:
42  std::map< kome::objects::Spectrum*, long long > m_specIdxMap;
43 
45  std::map< kome::objects::Chromatogram*, long long > m_chromIdxMap;
46 
48  const bool m_reverseFlg;
49 
50  protected:
55  void init();
56 
57  public:
66  bool exportDataSet( const char* path,
67  kome::objects::DataSet& dataSet,
68  kome::core::Progress& progress,
69  kome::objects::SettingParameterValues* saveSettings // @date 2012/08/21 <Add> FUJITA
70  );
71 
72  protected:
80  void exportDataSet( FILE* fp,
81  kome::objects::DataSet& dataSet,
82  kome::core::Progress& progress,
83  kome::objects::SettingParameterValues* saveSettings // @date 2012/08/21 <Add> FUJITA
84  );
85 
93  static bool lessSpec( kome::objects::Spectrum* spec0, kome::objects::Spectrum* spec1 );
94  protected:
100  void writeHeader( FILE* fp );
101 
108  void writeFileDescription( FILE* fp, std::vector< kome::objects::Sample* >& samples );
109 
116  void writeFileContent( FILE* fp, std::vector< kome::objects::Sample* >& samples );
117 
124  void writeSourceFileList( FILE* fp, std::vector< kome::objects::Sample* >& samples );
125 
133  void writeReferenceableParamGroup( FILE* fp, const bool specFlg, const bool chromFlg );
134 
141  void writeSoftwareList( FILE* fp, std::vector< kome::objects::Sample* >& samples );
142 
149  void writeInstrumentList( FILE* fp, std::vector< kome::objects::Sample* >& samples );
150 
156  void writeProcessingList( FILE* fp );
157 
175  void writeRun(
176  FILE* fp,
177  std::vector< kome::objects::Sample* >& samples,
178  std::vector< kome::objects::Spectrum* >& spectra,
179  std::vector< kome::objects::Chromatogram* >& chroms,
180  kome::core::Progress* specPrgs,
181  kome::core::Progress* chromPrgs,
182  kome::objects::SettingParameterValues* saveSettings // @date 2012/08/21 <Add> FUJITA
183  );
184 
191  void writeSpectrum(
192  FILE* fp,
193  kome::objects::Spectrum& spec,
194  kome::objects::SettingParameterValues* saveSettings // @date 2012/08/21 <Add> FUJITA
195  );
196 
203  void writeChromatogram(
204  FILE* fp,
205  kome::objects::Chromatogram& chrom,
206  kome::objects::SettingParameterValues* saveSettings // @date 2012/08/21 <Add> FUJITA
207  );
208 
220  void writeIndexList(
221  FILE* fp,
222  std::vector< kome::objects::Spectrum* >& spectra,
223  std::vector< kome::objects::Chromatogram* >& chroms
224  );
225 
226  protected:
234  static double getSimilarityScore( const char* s0, const char* s1 );
235 
245  static double getMatchScore( const char* s0, int idx0, const char* s1, int idx1 );
246 
247  public:
253  static MzmlManager& getInstance();
254  };
255  }
256  }
257 }
258 
259 #endif // __KOME_IO_MZML_MANAGER_H__
std::map< kome::objects::Chromatogram *, long long > m_chromIdxMap
Definition: MzmlManager.h:45
static double getMatchScore(const char *s0, int idx0, const char *s1, int idx1)
gets match score
static bool lessSpec(kome::objects::Spectrum *spec0, kome::objects::Spectrum *spec1)
compare spectra to sort
void writeRun(FILE *fp, std::vector< kome::objects::Sample * > &samples, std::vector< kome::objects::Spectrum * > &spectra, std::vector< kome::objects::Chromatogram * > &chroms, kome::core::Progress *specPrgs, kome::core::Progress *chromPrgs, kome::objects::SettingParameterValues *saveSettings)
writes run tag
void writeInstrumentList(FILE *fp, std::vector< kome::objects::Sample * > &samples)
writes instrument list
std::map< kome::objects::Spectrum *, long long > m_specIdxMap
Definition: MzmlManager.h:42
void writeChromatogram(FILE *fp, kome::objects::Chromatogram &chrom, kome::objects::SettingParameterValues *saveSettings)
writes chromatogram
void writeSourceFileList(FILE *fp, std::vector< kome::objects::Sample * > &samples)
writes source file list
void writeHeader(FILE *fp)
writes header
void init()
initializes variables
Definition: MzmlManager.cpp:64
void writeFileContent(FILE *fp, std::vector< kome::objects::Sample * > &samples)
writes file content
virtual ~MzmlManager()
destructor
Definition: MzmlManager.cpp:60
void writeIndexList(FILE *fp, std::vector< kome::objects::Spectrum * > &spectra, std::vector< kome::objects::Chromatogram * > &chroms)
writes index list
static double getSimilarityScore(const char *s0, const char *s1)
gets similarity score between two character strings
static MzmlManager & getInstance()
gets mzML IO management object
mzML IO management class
Definition: MzmlManager.h:26
void writeFileDescription(FILE *fp, std::vector< kome::objects::Sample * > &samples)
writes file description
void writeReferenceableParamGroup(FILE *fp, const bool specFlg, const bool chromFlg)
writes referenceable parameters group
void writeSoftwareList(FILE *fp, std::vector< kome::objects::Sample * > &samples)
writes software list
void writeProcessingList(FILE *fp)
writes processing list
void writeSpectrum(FILE *fp, kome::objects::Spectrum &spec, kome::objects::SettingParameterValues *saveSettings)
writes spectrum