Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
MSPeak.h
Go to the documentation of this file.
1 // --------------------------------------------------------------------------
2 // OpenMS -- Open-Source Mass Spectrometry
3 // --------------------------------------------------------------------------
4 // Copyright The OpenMS Team -- Eberhard Karls University Tuebingen,
5 // ETH Zurich, and Freie Universitaet Berlin 2002-2013.
6 //
7 // This software is released under a three-clause BSD license:
8 // * Redistributions of source code must retain the above copyright
9 // notice, this list of conditions and the following disclaimer.
10 // * Redistributions in binary form must reproduce the above copyright
11 // notice, this list of conditions and the following disclaimer in the
12 // documentation and/or other materials provided with the distribution.
13 // * Neither the name of any author or any participating institution
14 // may be used to endorse or promote products derived from this software
15 // without specific prior written permission.
16 // For a full list of authors, refer to the file AUTHORS.
17 // --------------------------------------------------------------------------
18 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 // ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING
22 // INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
23 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
24 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
25 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
27 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
28 // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 //
30 // --------------------------------------------------------------------------
31 // $Maintainer: Florian Zeller $
32 // $Authors: Lukas Mueller, Markus Mueller $
33 // --------------------------------------------------------------------------
34 //
36 //
37 // PEAK DETECTION OF FOURIER TRANSFORME MS INSTRUMENT DATA
38 //
39 // written by Markus Mueller, markus.mueller@imsb.biol.ethz.ch
40 // and Lukas Mueller, Lukas.Mueller@imsb.biol.ethz.ch
41 // October 2005
42 //
43 // Ported to OpenMS by Florian Zeller, florian.zeller@bsse.ethz.ch
44 // December 2010
45 //
46 // Group of Prof. Ruedi Aebersold, IMSB, ETH Hoenggerberg, Zurich
47 //
48 
49 #ifndef OPENMS_TRANSFORMATIONS_FEATUREFINDER_SUPERHIRN_MSPEAK_H
50 #define OPENMS_TRANSFORMATIONS_FEATUREFINDER_SUPERHIRN_MSPEAK_H
51 
52 #include <string>
53 #include <vector>
54 #include <map>
55 
56 #include <OpenMS/CONCEPT/Types.h>
58 
59 namespace OpenMS
60 {
61 
62 //class CentroidPeak; // changed to include
63 
64  class OPENMS_DLLAPI MSPeak
65  {
66 
68  // declaration of the private members:
69 
70  double precursorMZ;
71  double MZ;
72  float INTENSITY;
73  int SCAN;
74  double TR;
75  unsigned int CHRG;
76  unsigned int NRISOTOPES;
77  float SCORE;
78 
79  std::string extraMSPeakInfo;
80 
81  // child scan options:
83  int childScan;
84 
85  double SignalToNoise;
86  std::vector<CentroidPeak> ISOPEAKS;
87 
88 private:
89 
91  // declaration of the public members:
92 
93 public:
94 
95  // class destructor
96  ~MSPeak();
97 
98  // class constructor
99  MSPeak(int, double, float);
100  MSPeak();
101  MSPeak(int, double, float, unsigned int, unsigned int, float, std::vector<CentroidPeak>);
102  MSPeak(const MSPeak &);
103  MSPeak(const MSPeak *);
104 
106  // overload operators:
107  MSPeak & operator=(const MSPeak &);
108  MSPeak & operator<=(const MSPeak &);
109  MSPeak & operator>=(const MSPeak &);
110  MSPeak & operator<(const MSPeak &);
111  MSPeak & operator>(const MSPeak &);
112 
113  // show content of peak:
114  void show_info();
115 
116  // store the MS/MS scan number and activate this peak as precursor peak:
117  void activateAsPrecursorPeak(int);
118 
120  // check if the input mass matches one of the isotopic masses
121  bool checkIsotopeBelongingAndAdjustMass(double, double);
122 
124  // start here all the get / set
125  // function to access the
126  // variables of the class
127 
128  std::vector<CentroidPeak> & get_isotopic_peaks()
129  {
130  return ISOPEAKS;
131  }
132 
133  std::vector<CentroidPeak>::iterator get_isotopic_peaks_start()
134  {
135  return ISOPEAKS.begin();
136  }
137 
138  std::vector<CentroidPeak>::iterator get_isotopic_peaks_end()
139  {
140  return ISOPEAKS.end();
141  }
142 
143  void setExtraPeakInfo(std::string in)
144  {
145  extraMSPeakInfo = in;
146  }
147 
148  std::string getExtraPeakInfo()
149  {
150  return extraMSPeakInfo;
151  }
152 
153  // precursor mass of the ms2 scane:
154  void setPrecursorMZ(double in)
155  {
156  precursorMZ = in;
157  }
158 
159  double getPrecursorMZ()
160  {
161  return precursorMZ;
162  }
163 
164  // precursor mass charge state:
165  void setPrecursorCHRG(int in)
166  {
167  CHRG = in;
168  }
169 
171  {
172  return CHRG;
173  }
174 
175  // check if this peak has been determined as precursor:
177  {
178  return precursorMass;
179  }
180 
181  int get_Chrg()
182  {
183  return CHRG;
184  }
185 
186  void set_Chrg(int z)
187  {
188  CHRG = z;
189  }
190 
191  int get_Scan()
192  {
193  return SCAN;
194  }
195 
197  {
198  return INTENSITY;
199  }
200 
201  double get_MZ()
202  {
203  return MZ;
204  }
205 
207  {
208  return SCAN;
209  }
210 
211  void set_retention_time(double IN)
212  {
213  TR = IN;
214  }
215 
217  {
218  return TR;
219  }
220 
221  unsigned int get_charge_state()
222  {
223  return CHRG;
224  }
225 
226  unsigned int get_nr_isotopes()
227  {
228  return NRISOTOPES;
229  }
230 
231  float get_score()
232  {
233  return SCORE;
234  }
235 
237  {
238  return SignalToNoise;
239  }
240 
241  void setSignalToNoise(double in)
242  {
243  SignalToNoise = in;
244  }
245 
246  };
247 
248 } // ns
249 
250 #endif // OPENMS_TRANSFORMATIONS_FEATUREFINDER_SUPERHIRN_MSPEAK_H
std::vector< CentroidPeak > & get_isotopic_peaks()
Definition: MSPeak.h:128
int get_scan_number()
Definition: MSPeak.h:206
double precursorMZ
Definition: MSPeak.h:70
double MZ
Definition: MSPeak.h:71
int SCAN
Definition: MSPeak.h:73
void setExtraPeakInfo(std::string in)
Definition: MSPeak.h:143
void setPrecursorCHRG(int in)
Definition: MSPeak.h:165
int childScan
Definition: MSPeak.h:83
void set_Chrg(int z)
Definition: MSPeak.h:186
void setPrecursorMZ(double in)
Definition: MSPeak.h:154
double get_MZ()
Definition: MSPeak.h:201
double SignalToNoise
Definition: MSPeak.h:85
float get_score()
Definition: MSPeak.h:231
int getPrecursorCHRG()
Definition: MSPeak.h:170
float INTENSITY
Definition: MSPeak.h:72
int get_Scan()
Definition: MSPeak.h:191
int get_Chrg()
Definition: MSPeak.h:181
void set_retention_time(double IN)
Definition: MSPeak.h:211
double get_retention_time()
Definition: MSPeak.h:216
float SCORE
Definition: MSPeak.h:77
std::vector< CentroidPeak >::iterator get_isotopic_peaks_start()
Definition: MSPeak.h:133
std::vector< CentroidPeak >::iterator get_isotopic_peaks_end()
Definition: MSPeak.h:138
unsigned int get_charge_state()
Definition: MSPeak.h:221
double getSignalToNoise()
Definition: MSPeak.h:236
std::string getExtraPeakInfo()
Definition: MSPeak.h:148
unsigned int NRISOTOPES
Definition: MSPeak.h:76
void setSignalToNoise(double in)
Definition: MSPeak.h:241
bool precursorMass
Definition: MSPeak.h:82
unsigned int CHRG
Definition: MSPeak.h:75
double getPrecursorMZ()
Definition: MSPeak.h:159
Definition: MSPeak.h:64
std::string extraMSPeakInfo
Definition: MSPeak.h:79
float get_intensity()
Definition: MSPeak.h:196
unsigned int get_nr_isotopes()
Definition: MSPeak.h:226
std::vector< CentroidPeak > ISOPEAKS
Definition: MSPeak.h:86
bool getPrecursorActivation()
Definition: MSPeak.h:176
double TR
Definition: MSPeak.h:74

OpenMS / TOPP release 1.11.1 Documentation generated on Thu Nov 14 2013 11:19:18 using doxygen 1.8.5