Matrix Science header

ms_xic.hpp

00001 /*
00002 ##############################################################################
00003 # file: ms_xic.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: parser/inc/ms_xic.hpp $
00012  * @(#)$Revision: f7c430569a82a92eac8833564053b59680ac20a8 | MSPARSER_REL_2_8_1-0-gea32989045 $
00013  * @(#)$Date: 2021-01-11 13:23:17 +0000 $
00014 ##############################################################################
00015  */
00016 
00017 #ifndef MS_XIC_HPP
00018 #define MS_XIC_HPP
00019 
00020 
00021 // Includes from the standard template library
00022 #include <string>
00023 
00024 namespace matrix_science
00025 {
00026     //=========================================================================
00032     class ms_xic_body;
00033     class ms_cache_file;
00034 
00036 
00039     class MS_MASCOTRESFILE_API ms_xic_point
00040     {
00041         public:
00042             ms_xic_point();
00043             ms_xic_point(double rt, int scanId, double intensity);
00044 
00045             double getRt() const;
00046             int    getScanId() const;
00047             double getIntensity() const;
00048 
00049             void setRt(double rt);
00050             void setScanId(int scanId);
00051             void setIntensity(double intensity);
00052 
00053         private:
00054             double rt_;
00055             int scanId_;
00056             double intensity_;
00057     };
00058 
00060 
00067     class MS_MASCOTRESFILE_API ms_xic :   
00068         public ms_handle
00069     {
00070         public:
00072 
00075             enum peakState
00076             {
00077                 PEAK_STATE_UNKNOWN = 0, 
00078                 PEAK_STATE_OK = 1,      
00079                 PEAK_STATE_DISCARD =3,  
00080             };
00081 
00083             static std::string getXmlCode(peakState code);
00084 
00086             static peakState getCodeFromXml(std::string text);
00087 
00089             ms_xic();
00090 
00092             explicit ms_xic(const ms_xic_body & body);
00093 
00095             explicit ms_xic(ms_xic_body * body);
00096 
00098             void defaultValues();
00099 
00101             void copyFrom(const ms_xic * src);
00102 
00103 #ifndef SWIG
00104 
00105             ms_xic_body * body();
00106 
00108             const ms_xic_body * body() const;
00110             void setCacheFile(matrix_science::ms_cache_file * cacheFile);
00111 #endif
00112 
00114             peakState getPeakState() const;
00115 
00117             bool hasIndexes() const;
00118 
00120             int getPeakStartIndex() const;
00121 
00123             int getPeakEndIndex() const;
00124 
00126             int getRegionStartIndex() const;
00127 
00129             int getRegionEndIndex() const;
00130 
00132             int getStartIndex() const;
00133 
00135             int getEndIndex() const;
00136 
00138             int getPeakStartScanId() const;
00139 
00141             int getPeakEndScanId() const;
00142 
00144             int getRegionStartScanId() const;
00145 
00147             int getRegionEndScanId() const;
00148 
00150             int getStartScanId() const;
00151 
00153             int getEndScanId() const;
00154 
00156             bool getUseTimeShift() const;
00157 
00159             double getElutionTimeShift() const;
00160 
00162             double getRtPeakStart() const;
00163 
00165             double getRtPeakEnd() const;
00166 
00168             double getRtRegionStart() const;
00169 
00171             double getRtRegionEnd() const;
00172 
00174             int getNumPoints() const;
00175 #ifndef SWIG
00176 
00177             void getPoint(int index, double & rt, int & scanId, double & intensity) const;
00178 #else // SWIG Multiple return values
00179             void getPoint(int index, double & OUTPUT, int & OUTPUT, double & OUTPUT) const;
00180 #endif
00181 
00182             void setPeakStartIndex(int value);
00183 
00185             void setPeakEndIndex(int value);
00186 
00188             void setRegionStartIndex(int value);
00189 
00191             void setRegionEndIndex(int value);
00192 
00194             void setStartIndex(int value);
00195 
00197             void setEndIndex(int value);
00198 
00200             void setPeakStartScanId(int value);
00201 
00203             void setPeakEndScanId(int scanId);
00204 
00206             void setRegionStartScanId(int scanId);
00207 
00209             void setRegionEndScanId(int scanId);
00210 
00212             void setStartScanId(int scanId);
00213 
00215             void setEndScanId(int scanId);
00216 
00218             void setRtPeakStart(double value);
00219 
00221             void setRtPeakEnd(double value);
00222 
00224             void setRtRegionStart(double value);
00225 
00227             void setRtRegionEnd(double value);
00228 
00230             void setUseTimeShift(bool value);
00231 
00233             void setElutionTimeShift(double value);
00234 
00236             void setPeakState(peakState value);
00237 
00238         protected:
00240             std::deque<ms_xic_point> & getPoints();
00241 
00243             const std::deque<ms_xic_point> & getPoints() const;
00244 
00245     };
00246  // end of quantitation_group
00248     //=========================================================================
00249 
00250 } // namespace matrix_science
00251 
00252 #endif // MS_XIC_HPP
00253 
00254 /*------------------------------- End of File -------------------------------*/

Copyright © 2022 Matrix Science Ltd.  All Rights Reserved. Generated on Thu Mar 31 2022 01:12:30