Matrix Science header

ms_quant_normalisation_protein.hpp

00001 /*
00002 ##############################################################################
00003 # file: ms_quant_normalisation_protein.hpp                                   #
00004 # 'msparser' toolkit                                                         #
00005 # Encapsulates protein-element from "quantitation.xml"-file                  #
00006 ##############################################################################
00007 # COPYRIGHT NOTICE                                                           #
00008 # Copyright 1998-2009 Matrix Science Limited  All Rights Reserved.           #
00009 #                                                                            #
00010 ##############################################################################
00011  * @(#)$Source: parser/inc/ms_quant_normalisation_protein.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_QUANT_NORMALISATION_PROTEIN_HPP
00018 #define MS_QUANT_NORMALISATION_PROTEIN_HPP
00019 
00020 
00021 #include <string>
00022 #include <vector>
00023 
00024 // forward declarations
00025 namespace msparser_internal {
00026     class ms_quant_xmlloader;
00027 }
00028 
00029 namespace matrix_science {
00030 
00031     class ms_quant_modgroup; // forward declaration
00032     class ms_xml_schema; // forward declaration
00033 
00039 
00040 
00043     class MS_MASCOTRESFILE_API ms_quant_normalisation_protein: public ms_xml_IValidatable
00044     {
00045         friend class msparser_internal::ms_quant_xmlloader;
00046 
00047     public:
00049         ms_quant_normalisation_protein();
00050 
00052         ms_quant_normalisation_protein(const ms_quant_normalisation_protein& src);
00053 
00055         virtual ~ms_quant_normalisation_protein();
00056 
00058         void defaultValues();
00059 
00061         void copyFrom(const ms_quant_normalisation_protein* right);
00062 
00063 #ifndef SWIG
00064 
00065         ms_quant_normalisation_protein& operator=(const ms_quant_normalisation_protein& 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 haveAccession() const;
00079 
00081         std::string getAccession() const;
00082 
00084         void setAccession(const char * value);
00085 
00087         void dropAccession();
00088 
00090         std::string getAccessionSchemaType() const;
00091 
00092     private:
00093 
00094         std::string _accession;
00095         bool _accession_set;
00096     }; // class ms_quant_normalisation_protein
00097 
00099     class MS_MASCOTRESFILE_API ms_quant_normalisation_proteins: public ms_xml_IValidatable
00100     {
00101         friend class msparser_internal::ms_quant_xmlloader;
00102 
00103     public:
00105         ms_quant_normalisation_proteins();
00106 
00108         ms_quant_normalisation_proteins(const ms_quant_normalisation_proteins& src);
00109 
00111         virtual ~ms_quant_normalisation_proteins();
00112 
00114         void defaultValues();
00115 
00117         void copyFrom(const ms_quant_normalisation_proteins* right);
00118 
00119 #ifndef SWIG
00120 
00121         ms_quant_normalisation_proteins& operator=(const ms_quant_normalisation_proteins& 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 getNumberOfProteins() const;
00135 
00137         void clearProteins();
00138 
00140         void appendProtein(const ms_quant_normalisation_protein* protein);
00141 
00143         const ms_quant_normalisation_protein* getProtein(const int idx) const;
00144 
00146         bool updateProtein(const int idx, const ms_quant_normalisation_protein* protein);
00147 
00149         bool deleteProtein(const int idx);
00150 
00152         std::string getProteinSchemaType() const;
00153 
00154     private:
00155 
00156         typedef std::vector< ms_quant_normalisation_protein* > prot_vector;
00157         prot_vector _proteins;
00158     }; // class ms_quant_normalisation_proteins
00159  // end of config_group
00161 
00162 } // namespace matrix_science
00163 
00164 #endif // MS_QUANT_NORMALISATION_PROTEIN_HPP
00165 
00166 /*------------------------------- End of File -------------------------------*/
00167 

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