Matrix Science Mascot Parser toolkit
 
Loading...
Searching...
No Matches
ms_xic.hpp
1/*
2##############################################################################
3# file: ms_xic.hpp
4# 'msparser' toolkit
5# An extracted ion chromatogram
6##############################################################################
7# COPYRIGHT NOTICE
8# Copyright 1998-2014 Matrix Science Limited All Rights Reserved.
9#
10##############################################################################
11 * @(#)$Source: parser/inc/ms_xic.hpp $
12 * @(#)$Revision: f7c430569a82a92eac8833564053b59680ac20a8 | MSPARSER_REL_3_0_0-2024-09-24-0-g93ebaeb4f4 $
13 * @(#)$Date: 2021-01-11 13:23:17 +0000 $
14##############################################################################
15 */
16
17#ifndef MS_XIC_HPP
18#define MS_XIC_HPP
19
20
21// Includes from the standard template library
22#include <string>
23
24namespace matrix_science
25{
26 //=========================================================================
32 class ms_xic_body;
33 class ms_cache_file;
34
36
39 class MS_MASCOTRESFILE_API ms_xic_point
40 {
41 public:
43 ms_xic_point(double rt, int scanId, double intensity);
44
45 double getRt() const;
46 int getScanId() const;
47 double getIntensity() const;
48
49 void setRt(double rt);
50 void setScanId(int scanId);
51 void setIntensity(double intensity);
52
53 private:
54 double rt_;
55 int scanId_;
56 double intensity_;
57 };
58
60
67 class MS_MASCOTRESFILE_API ms_xic :
68 public ms_handle
69 {
70 public:
72
76 {
77 PEAK_STATE_UNKNOWN = 0,
78 PEAK_STATE_OK = 1,
79 PEAK_STATE_DISCARD =3,
80 };
81
83 static std::string getXmlCode(peakState code);
84
86 static peakState getCodeFromXml(std::string text);
87
89 ms_xic();
90
92 explicit ms_xic(const ms_xic_body & body);
93
95 explicit ms_xic(ms_xic_body * body);
96
98 void defaultValues();
99
101 void copyFrom(const ms_xic * src);
102
103#ifndef SWIG
105 ms_xic_body * body();
106
108 const ms_xic_body * body() const;
110 void setCacheFile(matrix_science::ms_cache_file * cacheFile);
111#endif
112
114 peakState getPeakState() const;
115
117 bool hasIndexes() const;
118
120 int getPeakStartIndex() const;
121
123 int getPeakEndIndex() const;
124
126 int getRegionStartIndex() const;
127
129 int getRegionEndIndex() const;
130
132 int getStartIndex() const;
133
135 int getEndIndex() const;
136
138 int getPeakStartScanId() const;
139
141 int getPeakEndScanId() const;
142
144 int getRegionStartScanId() const;
145
147 int getRegionEndScanId() const;
148
150 int getStartScanId() const;
151
153 int getEndScanId() const;
154
156 bool getUseTimeShift() const;
157
159 double getElutionTimeShift() const;
160
162 double getRtPeakStart() const;
163
165 double getRtPeakEnd() const;
166
168 double getRtRegionStart() const;
169
171 double getRtRegionEnd() const;
172
174 int getNumPoints() const;
175#ifndef SWIG
177 void getPoint(int index, double & rt, int & scanId, double & intensity) const;
178#else // SWIG Multiple return values
179 void getPoint(int index, double & OUTPUT, int & OUTPUT, double & OUTPUT) const;
180#endif
182 void setPeakStartIndex(int value);
183
185 void setPeakEndIndex(int value);
186
188 void setRegionStartIndex(int value);
189
191 void setRegionEndIndex(int value);
192
194 void setStartIndex(int value);
195
197 void setEndIndex(int value);
198
200 void setPeakStartScanId(int value);
201
203 void setPeakEndScanId(int scanId);
204
206 void setRegionStartScanId(int scanId);
207
209 void setRegionEndScanId(int scanId);
210
212 void setStartScanId(int scanId);
213
215 void setEndScanId(int scanId);
216
218 void setRtPeakStart(double value);
219
221 void setRtPeakEnd(double value);
222
224 void setRtRegionStart(double value);
225
227 void setRtRegionEnd(double value);
228
230 void setUseTimeShift(bool value);
231
233 void setElutionTimeShift(double value);
234
236 void setPeakState(peakState value);
237
238 protected:
240 std::deque<ms_xic_point> & getPoints();
241
243 const std::deque<ms_xic_point> & getPoints() const;
244
245 };
246 // end of quantitation_group
248 //=========================================================================
249
250} // namespace matrix_science
251
252#endif // MS_XIC_HPP
253
254/*------------------------------- End of File -------------------------------*/
A single point from a matrix_science::ms_xic object.
Definition: ms_xic.hpp:40
An eXtracted Ion Chromatogram (XIC).
Definition: ms_xic.hpp:69
peakState
Status codes from fitting peaks.
Definition: ms_xic.hpp:76