00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef MS_CROSSLINKING_PARAMETERS_HPP
00018 #define MS_CROSSLINKING_PARAMETERS_HPP
00019
00020
00021 #include <string>
00022 #include <vector>
00023
00024 namespace msparser_internal {
00025 class ms_crosslinking_xmlloader;
00026 }
00027
00028 namespace matrix_science {
00029 class ms_xml_parameters;
00030 class ms_xml_schema;
00031
00037
00038 class MS_MASCOTRESFILE_API ms_crosslinking_parameter: public ms_xml_parameter
00039 {
00040 friend class msparser_internal::ms_crosslinking_xmlloader;
00041
00042 public:
00044 ms_crosslinking_parameter();
00045
00047 ms_crosslinking_parameter(const ms_crosslinking_parameter& src);
00048
00050 virtual ~ms_crosslinking_parameter();
00051
00053 void defaultValues();
00054
00056 void copyFrom(const ms_crosslinking_parameter* right);
00057
00058 #ifndef SWIG
00059
00060 ms_crosslinking_parameter& operator=(const ms_crosslinking_parameter& right);
00061 #endif
00062
00063 virtual std::string getSchemaType() const;
00064
00066 virtual std::string getNameSchemaType() const;
00067
00069 virtual std::string getDescriptionSchemaType() const;
00070
00072 virtual std::string getValueSchemaType() const;
00073
00074 protected:
00075 virtual bool saveToXML_ParameterByNumber(msparser_internal::ms_XMLHelper &helper, msparser_internal::ms_XMLElement &rootEl) const;
00076
00077 };
00078
00080
00083 class MS_MASCOTRESFILE_API ms_crosslinking_parameters: public ms_xml_parameters
00084 {
00085 friend class msparser_internal::ms_crosslinking_xmlloader;
00086
00087 public:
00089 ms_crosslinking_parameters();
00090
00092 ms_crosslinking_parameters(const ms_crosslinking_parameters& src);
00093
00095 virtual ~ms_crosslinking_parameters();
00096
00098 void defaultValues();
00099
00101 void copyFrom(const ms_crosslinking_parameters* right);
00102
00103 #ifndef SWIG
00104
00105 ms_crosslinking_parameters& operator=(const ms_crosslinking_parameters& right);
00106 #endif
00107
00108 virtual std::string getSchemaType() const;
00109
00111 virtual int getNumberOfParameters() const;
00112
00114 virtual void clearParameters();
00115
00117 void appendParameter(const ms_crosslinking_parameter *item);
00118
00120 const ms_crosslinking_parameter * getParameterByNumber(const int idx) const;
00121
00123 const ms_crosslinking_parameter * getParameterByName(const char *name) const;
00124
00126 bool updateParameterByNumber(const int idx, const ms_crosslinking_parameter *param);
00127
00129 bool updateParameterByName(const char *name, const ms_crosslinking_parameter *param);
00130
00132 virtual bool deleteParameterByNumber(const int idx);
00133
00135 virtual bool deleteParameterByName(const char *name);
00136
00138 virtual std::string getParameterSchemaType() const;
00139
00140 protected:
00141 virtual bool saveToXML_Parameters(msparser_internal::ms_XMLHelper &helper, msparser_internal::ms_XMLElement &rootEl) const;
00142
00143 private:
00144 typedef std::vector< ms_crosslinking_parameter* > entries_vector;
00145 entries_vector _entries;
00146
00147 };
00148
00150
00151 }
00152
00153 #endif // MS_CROSSLINKING_PARAMETERS_HPP
00154
00155
00156