Matrix Science Mascot Parser toolkit
 
Loading...
Searching...
No Matches
ms_quant_specificity.hpp
1/*
2##############################################################################
3# file: ms_quant_specificity.hpp #
4# 'msparser' toolkit #
5# Describes \c specificity element from "quantitation.xml"-file #
6##############################################################################
7# COPYRIGHT NOTICE #
8# Copyright 1998-2006 Matrix Science Limited All Rights Reserved. #
9# #
10##############################################################################
11 * @(#)$Source: parser/inc/ms_quant_specificity.hpp $
12 * @(#)$Revision: 1b450440f9c97e1e41d0fc6016a27d68951d4532 | MSPARSER_REL_3_0_0-2024-09-24-0-g93ebaeb4f4 $
13 * @(#)$Date: 2018-07-30 16:23:53 +0100 $
14##############################################################################
15 */
16
17#ifndef MS_QUANT_SPECIFICITY_HPP
18#define MS_QUANT_SPECIFICITY_HPP
19
20
21#include <string>
22#include <vector>
23
24// forward declarations
25namespace msparser_internal {
26 class ms_quant_xmlloader;
27}
28
29namespace matrix_science {
30
31 class ms_quant_neutralloss; // forward declaration
32 class ms_quant_pepneutralloss; // forward declaration
33 class ms_xml_schema; // forward declaration
34
41
44 class MS_MASCOTRESFILE_API ms_quant_specificity: public ms_xml_IValidatable // defined in "ms_xml_typeinfo.hpp"
45 {
46 friend class msparser_internal::ms_quant_xmlloader;
47
48 public:
51
54
56 virtual ~ms_quant_specificity();
57
59 void defaultValues();
60
62 void copyFrom(const ms_quant_specificity* right);
63
64#ifndef SWIG
66 ms_quant_specificity& operator=(const ms_quant_specificity& right);
67#endif
68 // methods of ms_quant_IValidatable interface
69
71 virtual std::string getSchemaType() const;
72
74 virtual std::string validateShallow(const ms_xml_schema *pSchemaFileObj) const;
75
77 virtual std::string validateDeep(const ms_xml_schema *pSchemaFileObj) const;
78
79
81 int getNumberOfNeutralLosses() const;
82
84 void clearNeutralLosses();
85
87 void appendNeutralLoss(const ms_quant_neutralloss *neutralloss);
88
90 const ms_quant_neutralloss * getNeutralLoss(const int idx) const;
91
93 bool updateNeutralLoss(const int idx, const ms_quant_neutralloss* neutralloss);
94
96 bool deleteNeutralLoss(const int idx);
97
99 std::string getNeutralLossSchemaType() const;
100
101
103 int getNumberOfPepNeutralLosses() const;
104
106 void clearPepNeutralLosses();
107
109 void appendPepNeutralLoss(const ms_quant_pepneutralloss *neutralloss);
110
112 const ms_quant_pepneutralloss* getPepNeutralLoss(const int idx) const;
113
115 bool updatePepNeutralLoss(const int idx, const ms_quant_pepneutralloss* neutralloss);
116
118 bool deletePepNeutralLoss(const int idx);
119
121 std::string getPepNeutralLossSchemaType() const;
122
123
125 bool haveSite() const;
126
128 std::string getSite() const;
129
131 void setSite(const char* site);
132
134 void dropSite();
135
137 std::string getSiteSchemaType() const;
138
139
141 bool havePosition() const;
142
144 std::string getPosition() const;
145
147 void setPosition(const char* position);
148
150 void dropPosition();
151
153 std::string getPositionSchemaType() const;
154
155 private:
156 typedef std::vector< ms_quant_neutralloss* > neutralloss_vector;
157 neutralloss_vector _neutrallosses;
158
159 typedef std::vector< ms_quant_pepneutralloss* > pepneutralloss_vector;
160 pepneutralloss_vector _pepneutrallosses;
161
162 std::string _site;
163 bool _site_set;
164
165 std::string _position;
166 bool _position_set;
167 }; // class ms_quant_specificity
168 // end of config_group
170
171} // namespace matrix_science
172
173#endif // MS_QUANT_SPECIFICITY_HPP
174
175/*------------------------------- End of File -------------------------------*/
A neutral loss for the sequence ions, e.g. loss of phosphate.
Definition: ms_quant_neutralloss.hpp:37
A neutral loss from the precursor.
Definition: ms_quant_pepneutralloss.hpp:37
Describes a specificity element in quantitation.xml (Unimod style specificity).
Definition: ms_quant_specificity.hpp:45