Matrix Science header

ms_umod_element.hpp

00001 /*
00002 ##############################################################################
00003 # file: ms_umod_element.hpp                                                  #
00004 # 'msparser' toolkit                                                         #
00005 # Represents chemical element information 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_element.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_ELEMENT_HPP
00018 #define MS_UMOD_ELEMENT_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_xml_schema; // forward declaration
00032 
00038 
00039     class MS_MASCOTRESFILE_API ms_umod_element: public ms_xml_IValidatable
00040     {
00041         friend class msparser_internal::ms_umod_xmlloader;
00042         friend class ms_umod_configfile;
00043 
00044     public:
00046         ms_umod_element();
00047 
00049         ms_umod_element(const ms_umod_element& src);
00050 
00052         virtual ~ms_umod_element();
00053 
00055         void defaultValues();
00056 
00058         void copyFrom(const ms_umod_element* right);
00059 
00060 #ifndef SWIG
00061 
00062         ms_umod_element& operator=(const ms_umod_element& right);
00063 #endif
00064 
00065         virtual std::string getSchemaType() const;
00066 
00068         virtual std::string validateShallow(const ms_xml_schema *pSchemaFileObj) const;
00069 
00071         virtual std::string validateDeep(const ms_xml_schema *pSchemaFileObj) const;
00072 
00073 
00075         bool haveTitle() const;
00076 
00078         std::string getTitle() const;
00079 
00081         void setTitle(const char* value);
00082 
00084         void dropTitle();
00085 
00087         std::string getTitleSchemaType() const;
00088 
00089 
00091         bool haveFullName() const;
00092 
00094         std::string getFullName() const;
00095 
00097         void setFullName(const char* value);
00098 
00100         void dropFullName();
00101 
00103         std::string getFullNameSchemaType() const;
00104 
00105 
00107         bool haveAvgeMass() const;
00108 
00110         std::string getAvgeMass() const;
00111 
00113         double getAvgeMassAsNumber() const;
00114 
00116         bool setAvgeMass(const char* value, ms_errs* err = NULL);
00117 
00119         void dropAvgeMass();
00120 
00122         std::string getAvgeMassSchemaType() const;
00123 
00124 
00126         bool haveMonoMass() const;
00127 
00129         std::string getMonoMass() const;
00130 
00132         double getMonoMassAsNumber() const;
00133 
00135         bool setMonoMass(const char* value, ms_errs* err = NULL);
00136 
00138         void dropMonoMass();
00139 
00141         std::string getMonoMassSchemaType() const;
00142 
00143     private:
00144         std::string _title;
00145         bool _title_set;
00146 
00147         std::string _fullName;
00148         bool _fullName_set;
00149 
00150         std::string _avgeMass;
00151         double _avgeMassDouble;
00152         bool _avgeMass_set;
00153 
00154         std::string _monoMass;
00155         double _monoMassDouble;
00156         bool _monoMass_set;
00157     }; // class ms_umod_element
00158  // end of config_group
00160 
00161 } // namespace matrix_science
00162 
00163 #endif // MS_UMOD_ELEMENT_HPP
00164 
00165 /*------------------------------- End of File -------------------------------*/

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