00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef MS_QUANT_MULTIPLEX_HPP
00018 #define MS_QUANT_MULTIPLEX_HPP
00019
00020
00021
00022 namespace msparser_internal {
00023 class ms_quant_xmlloader;
00024 }
00025
00026 namespace matrix_science {
00027
00028 class ms_xml_schema;
00029
00035
00036
00039 class MS_MASCOTRESFILE_API ms_quant_multiplex: public ms_quant_parameters
00040 {
00041 friend class msparser_internal::ms_quant_xmlloader;
00042 public:
00044 ms_quant_multiplex();
00045
00047 ms_quant_multiplex(const ms_quant_multiplex& src);
00048
00050 virtual ~ms_quant_multiplex();
00051
00053 void defaultValues();
00054
00056 void copyFrom(const ms_quant_multiplex* right);
00057
00058 #ifndef SWIG
00059
00060 ms_quant_multiplex& operator=(const ms_quant_multiplex& right);
00061 #endif
00062
00063 virtual std::string getSchemaType() const;
00064
00066 virtual std::string validateShallow(const ms_xml_schema *pSchemaFileObj) const;
00067
00069 virtual std::string validateDeep(const ms_xml_schema *pSchemaFileObj) const;
00070
00071
00073 bool haveIonSeries() const;
00074
00076 void setIonSeries(const std::string ionSeries);
00077
00079 void dropIonSeries();
00080
00082 std::string getIonSeriesSchemaType() const;
00083
00085 int getNumberOfIonSeries() const;
00086
00088 void clearIonSeries();
00089
00091 void appendIonSeries(const std::string ionSeries);
00092
00094 const std::string getIonSeries(const int idx=0) const;
00095
00097 bool updateIonSeries(const int idx, const std::string ionSeries);
00098
00100 bool deleteIonSeries(const int idx);
00101
00103 bool haveExcludeInternalLabel() const;
00104
00106 bool isExcludeInternalLabel() const;
00107
00109 void setExcludeInternalLabel(const bool value);
00110
00112 void dropExcludeInternalLabel();
00113
00115 std::string getExcludeInternalLabelSchemaType() const;
00116
00117
00119 bool haveIonIntensityThreshold() const;
00120
00122 std::string getIonIntensityThreshold() const;
00123
00125 void setIonIntensityThreshold(const char* value);
00126
00128 void dropIonIntensityThreshold();
00129
00131 std::string getIonIntensityThresholdSchemaType() const;
00132
00133
00135 bool haveExcludeIsobaricFragments() const;
00136
00138 bool isExcludeIsobaricFragments() const;
00139
00141 void setExcludeIsobaricFragments(const bool value);
00142
00144 void dropExcludeIsobaricFragments();
00145
00147 std::string getExcludeIsobaricFragmentsSchemaType() const;
00148
00149
00151 bool haveMinIonPairs() const;
00152
00154 int getMinIonPairs() const;
00155
00157 void setMinIonPairs(const int value);
00158
00160 void dropMinIonPairs();
00161
00163 std::string getMinIonPairsSchemaType() const;
00164
00165 private:
00166
00167 typedef std::vector< std::string > string_vector;
00168 string_vector _ionSeries;
00169
00170 bool _excludeInternalLabel;
00171 bool _excludeInternalLabel_set;
00172
00173 std::string _ionIntensityThreshold;
00174 bool _ionIntensityThreshold_set;
00175
00176 bool _excludeIsobaricFragments;
00177 bool _excludeIsobaricFragments_set;
00178
00179 int _minIonPairs;
00180 bool _minIonPairs_set;
00181 };
00182
00184
00185 }
00186
00187 #endif // MS_QUANT_MULTIPLEX_HPP
00188
00189