Matrix Science header

ms_distiller_data.hpp

00001 /*
00002 ##############################################################################
00003 # file: ms_distiller_data.hpp
00004 # 'msparser' toolkit
00005 # An extracted ion chromatogram
00006 ##############################################################################
00007 # COPYRIGHT NOTICE
00008 # Copyright 1998-2014 Matrix Science Limited  All Rights Reserved.
00009 #
00010 ##############################################################################
00011  * @(#)$Source: /vol/cvsroot/parser/inc/ms_distiller_data.hpp,v $
00012  * @(#)$Revision: 1.9 $
00013  * @(#)$Date: 2017/02/16 15:44:18 $
00014 ##############################################################################
00015  */
00016 
00017 #ifndef MS_DISTILLER_DATA_HPP
00018 #define MS_DISTILLER_DATA_HPP
00019 
00020 #ifdef _WIN32
00021 #pragma warning(disable:4251)   // Don't want all classes to be exported
00022 #pragma warning(disable:4786)   // Debug symbols too long
00023 #   ifndef _MATRIX_USE_STATIC_LIB
00024 #       ifdef MS_MASCOTRESFILE_EXPORTS
00025 #           define MS_MASCOTRESFILE_API __declspec(dllexport)
00026 #       else
00027 #           define MS_MASCOTRESFILE_API __declspec(dllimport)
00028 #       endif
00029 #   else
00030 #       define MS_MASCOTRESFILE_API
00031 #   endif
00032 #else
00033 #   define MS_MASCOTRESFILE_API
00034 #endif
00035 
00036 // Includes from the standard template library
00037 #include <string>
00038 #include <vector>
00039 
00040 namespace msparser_internal
00041 {
00042     class ms_XMLHelper;
00043     class ms_XMLElement;
00044 }
00045 
00046 namespace matrix_science
00047 {
00048     //=========================================================================
00054      class ms_distiller_data_quant;
00055      class ms_distiller_data_search;
00056 
00058 
00061     class MS_MASCOTRESFILE_API ms_distiller_data : 
00062         public matrix_science::ms_errors
00063     {
00064         public:
00065 
00067             static time_t getDistillerResfileTimestamp();
00068 
00070             static std::vector<std::string> getRequiredSchemaFileNames();
00071 
00073             static std::string getDistillerProjectStreamName();
00074 
00075             ms_distiller_data();
00076             virtual ~ms_distiller_data();
00077             ms_distiller_data(const ms_distiller_data & copy);
00078 
00080             void copyFrom(const ms_distiller_data* right);
00081 
00082 #ifndef SWIG
00083             const ms_distiller_data & operator=(const ms_distiller_data & copy);
00084 #endif
00085 
00087             virtual int getSearchCount() const;
00089             virtual const ms_distiller_data_search & getSearch(int index) const;
00091             virtual int getLoadedSearchIndex() const;
00092 
00094             virtual int getQuantCount() const;
00096             virtual const ms_distiller_data_quant & getQuant(int index) const;
00097 
00099             virtual const ms_distiller_data_quant * getQuantForSearch(const std::string & taskId) const;
00100 
00102             virtual const ms_datfile & getDatfile() const;
00103 
00105             virtual const ms_fragrulesfile & getFragRulesFile() const;
00106 
00108             virtual const ms_quant_method & getQuantMethod() const;
00109 
00111             virtual bool loadXml(const char * xmlSchemaPath, const std::string & xmlText);
00113             virtual bool loadXmlFile(const char * xmlSchemaPath, const std::string & xmlFilename);
00115             virtual bool loadXmlStream(const char * xmlSchemaPath, matrix_science::ms_input_string_stream * xmlStream);
00116 
00117             virtual bool saveXmlFile(const char * xmlSchemaPath, const std::string & xmlFilename);
00118             virtual int addQuant(const std::string & taskId);
00119 
00120         private:
00121             bool extractXml(const char * xmlSchemaPath, msparser_internal::ms_XMLHelper & helper);
00122             bool saveXml(const char * xmlSchemaPath, msparser_internal::ms_XMLHelper & helper);
00123 
00124             int quantStreamCounter_;
00125             std::vector<ms_distiller_data_search> searches;
00126             std::vector<ms_distiller_data_quant> quantStreams;
00127             ms_datfile datfile;
00128             ms_fragrulesfile fragfile;
00129             ms_quant_method quantMethod;
00130 
00131             msparser_internal::ms_XMLHelper * helper_;
00132     };
00133  // end of quantitation_group
00135     //=========================================================================
00136 
00137 } // namespace matrix_science
00138 
00139 #endif // MS_DISTILLER_DATA_HPP
00140 
00141 /*------------------------------- End of File -------------------------------*/
Copyright © 2016 Matrix Science Ltd.  All Rights Reserved. Generated on Fri Jun 2 2017 01:44:50