00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef MS_QUANT_NORMALISATION_PEPTIDE_HPP
00018 #define MS_QUANT_NORMALISATION_PEPTIDE_HPP
00019
00020
00021 #include <string>
00022 #include <vector>
00023
00024
00025 namespace msparser_internal {
00026 class ms_quant_xmlloader;
00027 }
00028
00029 namespace matrix_science {
00030
00031 class ms_quant_modgroup;
00032 class ms_xml_schema;
00033
00039
00040
00043 class MS_MASCOTRESFILE_API ms_quant_normalisation_peptide: public ms_xml_IValidatable
00044 {
00045 friend class msparser_internal::ms_quant_xmlloader;
00046
00047 public:
00049 ms_quant_normalisation_peptide();
00050
00052 ms_quant_normalisation_peptide(const ms_quant_normalisation_peptide& src);
00053
00055 virtual ~ms_quant_normalisation_peptide();
00056
00058 void defaultValues();
00059
00061 void copyFrom(const ms_quant_normalisation_peptide* right);
00062
00063 #ifndef SWIG
00064
00065 ms_quant_normalisation_peptide& operator=(const ms_quant_normalisation_peptide& right);
00066 #endif
00067
00068 virtual std::string getSchemaType() const;
00069
00071 virtual std::string validateShallow(const ms_xml_schema *pSchemaFileObj) const;
00072
00074 virtual std::string validateDeep(const ms_xml_schema *pSchemaFileObj) const;
00075
00076
00078 bool haveSequence() const;
00079
00081 std::string getSequence() const;
00082
00084 void setSequence(const char * value);
00085
00087 void dropSequence();
00088
00090 std::string getSequenceSchemaType() const;
00091
00092 private:
00093
00094 std::string _sequence;
00095 bool _sequence_set;
00096 };
00097
00099 class MS_MASCOTRESFILE_API ms_quant_normalisation_peptides: public ms_xml_IValidatable
00100 {
00101 friend class msparser_internal::ms_quant_xmlloader;
00102
00103 public:
00105 ms_quant_normalisation_peptides();
00106
00108 ms_quant_normalisation_peptides(const ms_quant_normalisation_peptides& src);
00109
00111 virtual ~ms_quant_normalisation_peptides();
00112
00114 void defaultValues();
00115
00117 void copyFrom(const ms_quant_normalisation_peptides* right);
00118
00119 #ifndef SWIG
00120
00121 ms_quant_normalisation_peptides& operator=(const ms_quant_normalisation_peptides& right);
00122 #endif
00123
00124 virtual std::string getSchemaType() const;
00125
00127 virtual std::string validateShallow(const ms_xml_schema *pSchemaFileObj) const;
00128
00130 virtual std::string validateDeep(const ms_xml_schema *pSchemaFileObj) const;
00131
00132
00134 int getNumberOfPeptides() const;
00135
00137 void clearPeptides();
00138
00140 void appendPeptide(const ms_quant_normalisation_peptide* pep);
00141
00143 const ms_quant_normalisation_peptide* getPeptide(const int idx) const;
00144
00146 bool updatePeptide(const int idx, const ms_quant_normalisation_peptide* pep);
00147
00149 bool deletePeptide(const int idx);
00150
00152 std::string getPeptideSchemaType() const;
00153
00154 private:
00155
00156 typedef std::vector< ms_quant_normalisation_peptide* > pep_vector;
00157 pep_vector _peptides;
00158 };
00159
00161
00162 }
00163
00164 #endif // MS_QUANT_NORMALISATION_PEPTIDE_HPP
00165
00166
00167