Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
MS2Info.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-2017.
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: Timo Sachsenberg $
32 // $Authors: Lukas Mueller, Markus Mueller $
33 // --------------------------------------------------------------------------
34 //
36 //
37 // written by Lukas N Mueller, 30.3.05
38 // Lukas.Mueller@imsb.biol.ethz.ch
39 // Group of Prof. Ruedi Aebersold, IMSB, ETH Hoenggerberg, Zurich
40 //
41 // Ported to OpenMS by Florian Zeller, florian.zeller@bsse.ethz.ch
42 // December 2010
43 //
44 
45 #ifndef OPENMS_TRANSFORMATIONS_FEATUREFINDER_SUPERHIRN_MS2INFO_H
46 #define OPENMS_TRANSFORMATIONS_FEATUREFINDER_SUPERHIRN_MS2INFO_H
47 
48 #include <OpenMS/TRANSFORMATIONS/FEATUREFINDER/SUPERHIRN/SuperHirnConfig.h>
49 
50 #include <OpenMS/CONCEPT/Types.h>
51 
52 #include <string>
53 #include <vector>
54 #include <map>
55 
56 namespace OpenMS
57 {
58 
59  class SUPERHIRN_DLLAPI MS2Info
60  {
61 
63  // declaration of the private members:
64 
65 private:
66 
67  int ID;
68 
69  std::string SQ;
70  std::string FULL_SQ;
71  std::string PREV_AA;
72  std::vector<std::string> AC;
73 // std::string ORIGINAL_INTERACT_FILE;
74  std::string MS2_TYPE_TAG;
75 
76  // peptide prophet analysis:
77  float PEP_PROB;
78 
79  // sorcerer search results:
80  double XCORR;
81  double DELTA_CN;
82 
83  double MONO_MZ;
84  double THEO_MZ;
85  double NEUTRAL_MR;
86 
87  int CHRG;
89  int SCAN_END;
90 
91  double TR;
92 
93  std::map<int, double> MOD_LIST;
94 
95  // static values:
96  static const double _MONO_H;
97  static const double _MONO_O;
98 
100  // declaration of the public members:
101 
102 public:
103  static const double mono_mass[26];
104  static const char AA[20];
105 // static double MS2_TR_TOL;
106 // static bool THEO_MATCH_MODUS;
107 // static double MS2_MZ_PPM_TOLERANCE;
108 
109  // class destructor
110  ~MS2Info();
111 
112  // class constructor
113  MS2Info();
114  MS2Info(int);
115  MS2Info(std::string, std::string, float);
116  MS2Info(std::string, std::string, int, float);
117  MS2Info(std::string, std::string, float, int, int);
118  // class copy constructor
119  MS2Info(const MS2Info &);
120  // class copy constructor
121  MS2Info(const MS2Info *);
122 
124  // overload operators:
125  MS2Info & operator=(const MS2Info &);
126  bool operator==(const MS2Info &);
127  MS2Info & operator<=(const MS2Info &);
128  MS2Info & operator>=(const MS2Info &);
129  MS2Info & operator<(const MS2Info &);
130  MS2Info & operator>(const MS2Info &);
131 
132  // add modification
133  void add_modification(int, double);
134  std::map<int, double>::iterator get_Modification_list_start();
135 
136  std::map<int, double>::iterator get_Modification_list_end();
137 
138  std::map<int, double>::iterator find_Modification(int pos);
139 
140  std::map<int, double> * get_Modification_list();
141 
142  bool check_MODIFICATION();
143 
144  // calculates the theoretical mass from a sequence:
145  void set_THEO_MASS_from_SQ();
146  double get_THEO_MZ();
147 
148  // sets modification SQ:
149  void set_FULL_SQ();
150  void set_SQ(std::string in);
151 
152  // show info:
153  void show_info();
154 
155  // check whether proteotypic peptide:
156  bool get_PROTEO_TYPE();
157  // check the tryptic state:
158  // 2: full tryptic
159  // 1: semi tryptic
160  // 0: non tryptic
161  int get_TRYPTIC_STATE();
162 
163  // AC functions:
164  // check if this AC or not:
165  bool compare_AC(std::string);
166  // search a pattern in the AC list:
167  bool search_AC_pattern(std::string);
168 
170  // start here all the get / set
171  // function to access the
172  // variables of the class
173  std::string get_SQ();
174 
175  std::string get_MOD_SQ();
176 
177  std::string get_TOTAL_SQ();
178 
179  std::string get_AC();
180 
181  std::vector<std::string> get_ALL_AC();
182 
183  std::vector<std::string>::iterator get_ALL_AC_START();
184 
185  std::vector<std::string>::iterator get_ALL_AC_END();
186 
187  bool find_AC(std::string);
188  void set_AC(std::string);
189  float get_PEP_PROB();
190 
191  void set_PEP_PROB(float in);
192 
193  double get_MONO_MZ();
194 
195  void set_MONO_MZ(double);
196 
197  double get_NEUTRAL_MR();
198 
199  void set_NEUTRAL_MR(double);
200 
201  int get_CHRG();
202 
203  void set_CHRG(int in);
204 
205  int get_SCAN();
206 
207  int get_SCAN_START();
208 
209  void set_SCAN_START(int in);
210 
211  int get_SCAN_END();
212 
213  void set_SCAN_END(int in);
214 
215  int get_ID();
216 
217  double get_DELTA_CN();
218 
219  void set_DELTA_CN(double in);
220 
221  double get_XCORR();
222 
223  void set_XCORR(double in);
224 
225  void set_MS2_TYPE_TAG(std::string in);
226 
227  std::string get_MS2_TYPE_TAG();
228 
229  // access the retention parameter:
230  double getRetentionTime();
231 
232  void setRetentionTime(double in);
233 
234  double get_MONO_AA_MASS(int);
235 
236  std::string get_PREV_AA();
237 
238  void set_PREV_AA(std::string in);
239  };
240 
241 } // ns
242 
243 #endif // OPENMS_TRANSFORMATIONS_FEATUREFINDER_SUPERHIRN_MS2INFO_H
std::vector< std::string > AC
Definition: MS2Info.h:72
int SCAN_START
Definition: MS2Info.h:88
std::string MS2_TYPE_TAG
Definition: MS2Info.h:74
double THEO_MZ
Definition: MS2Info.h:84
int CHRG
Definition: MS2Info.h:87
double DELTA_CN
Definition: MS2Info.h:81
int SCAN_END
Definition: MS2Info.h:89
bool operator==(_Iterator< _Val, _Ref, _Ptr > const &, _Iterator< _Val, _Ref, _Ptr > const &)
Definition: KDTree.h:806
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
bool operator<(const MultiplexDeltaMasses &dm1, const MultiplexDeltaMasses &dm2)
int ID
Definition: MS2Info.h:67
std::string FULL_SQ
Definition: MS2Info.h:70
std::string PREV_AA
Definition: MS2Info.h:71
static const double _MONO_H
Definition: MS2Info.h:96
std::map< int, double > MOD_LIST
Definition: MS2Info.h:93
static const double _MONO_O
Definition: MS2Info.h:97
std::string SQ
Definition: MS2Info.h:69
double TR
Definition: MS2Info.h:91
double NEUTRAL_MR
Definition: MS2Info.h:85
double XCORR
Definition: MS2Info.h:80
double MONO_MZ
Definition: MS2Info.h:83
float PEP_PROB
Definition: MS2Info.h:77
Definition: MS2Info.h:59

OpenMS / TOPP release 2.3.0 Documentation generated on Tue Jan 9 2018 18:22:02 using doxygen 1.8.13