Matrix Science header

ms_umod_aminoacid.hpp

00001 /*
00002 ##############################################################################
00003 # file: ms_umod_aminoacid.hpp                                                #
00004 # 'msparser' toolkit                                                         #
00005 # Represents 'amino acid' object from unimod.xml file                        #
00006 ##############################################################################
00007 # COPYRIGHT NOTICE                                                           #
00008 # Copyright 1998-2006 Matrix Science Limited  All Rights Reserved.           #
00009 #                                                                            #
00010 ##############################################################################
00011  * @(#)$Source: parser/inc/ms_umod_aminoacid.hpp $
00012  * @(#)$Revision: 1b450440f9c97e1e41d0fc6016a27d68951d4532 | MSPARSER_REL_2_8_1-0-gea32989045 $
00013  * @(#)$Date: 2018-07-30 16:23:53 +0100 $
00014 ##############################################################################
00015  */
00016 
00017 #ifndef MS_UMOD_AMINOACID_HPP
00018 #define MS_UMOD_AMINOACID_HPP
00019 
00020 
00021 #include <string>
00022 #include <vector>
00023 
00024 // forward declarations
00025 namespace msparser_internal {
00026     class ms_umod_xmlloader;
00027 }
00028 
00029 namespace matrix_science {
00030 
00031     class ms_umod_elemref; // forward declaration
00032     class ms_xml_schema; // forward declaration
00033 
00039 
00040     class MS_MASCOTRESFILE_API ms_umod_aminoacid: public ms_xml_IValidatable
00041     {
00042         friend class msparser_internal::ms_umod_xmlloader;
00043         friend class ms_umod_configfile;
00044 
00045     public:
00047         ms_umod_aminoacid();
00048 
00050         ms_umod_aminoacid(const ms_umod_aminoacid& src);
00051 
00053         virtual ~ms_umod_aminoacid();
00054 
00056         void defaultValues();
00057 
00059         void copyFrom(const ms_umod_aminoacid* right);
00060 
00061 #ifndef SWIG
00062 
00063         ms_umod_aminoacid& operator=(const ms_umod_aminoacid& right);
00064 #endif
00065 
00066         virtual std::string getSchemaType() const;
00067 
00069         virtual std::string validateShallow(const ms_xml_schema *pSchemaFileObj) const;
00070 
00072         virtual std::string validateDeep(const ms_xml_schema *pSchemaFileObj) const;
00073 
00074 
00076         int getNumberOfElemRefs() const;
00077 
00079         void clearElemRefs();
00080 
00082         void appendElemRef(const ms_umod_elemref *elemref);
00083 
00085         const ms_umod_elemref* getElemRef(const int idx) const;
00086 
00088         bool updateElemRef(const int idx, const ms_umod_elemref *elemref);
00089 
00091         bool deleteElemRef(const int idx);
00092 
00094         std::string getElemRefSchemaType() const;
00095 
00096 
00098         bool haveTitle() const;
00099 
00101         std::string getTitle() const;
00102 
00104         void setTitle(const char* value);
00105 
00107         void dropTitle();
00108 
00110         std::string getTitleSchemaType() const;
00111 
00112 
00114         bool haveThreeLetter() const;
00115 
00117         std::string getThreeLetter() const;
00118 
00120         void setThreeLetter(const char* value);
00121 
00123         void dropThreeLetter();
00124 
00126         std::string getThreeLetterSchemaType() const;
00127 
00128 
00130         bool haveFullName() const;
00131 
00133         std::string getFullName() const;
00134 
00136         void setFullName(const char* value);
00137 
00139         void dropFullName();
00140 
00142         std::string getFullNameSchemaType() const;
00143 
00144 
00146         bool haveAvgeMass() const;
00147 
00149         double getAvgeMass() const;
00150 
00152         void setAvgeMass(const double value);
00153 
00155         void dropAvgeMass();
00156 
00158         std::string getAvgeMassSchemaType() const;
00159 
00160 
00162         bool haveMonoMass() const;
00163 
00165         double getMonoMass() const;
00166 
00168         void setMonoMass(const double value);
00169 
00171         void dropMonoMass();
00172 
00174         std::string getMonoMassSchemaType() const;
00175 
00176     private:
00177 
00178         typedef std::vector< ms_umod_elemref* > elemref_vector;
00179         elemref_vector _elemRefs;
00180 
00181         std::string _title;
00182         bool _title_set;
00183 
00184         std::string _threeLetter;
00185         bool _threeLetter_set;
00186 
00187         std::string _fullName;
00188         bool _fullName_set;
00189 
00190         double _avgeMass;
00191         bool _avgeMass_set;
00192 
00193         double _monoMass;
00194         bool _monoMass_set;
00195     }; // class ms_umod_aminoacid
00196  // end of config_group
00198 
00199 } // namespace matrix_science
00200 
00201 #endif // MS_UMOD_AMINOACID_HPP
00202 
00203 /*------------------------------- End of File -------------------------------*/

Copyright © 2022 Matrix Science Ltd.  All Rights Reserved. Generated on Thu Mar 31 2022 01:12:30