Matrix Science header

ms_quant_normalisation_peptide.hpp

00001 /*
00002 ##############################################################################
00003 # file: ms_quant_normalisation_peptide.hpp                                   #
00004 # 'msparser' toolkit                                                         #
00005 # Encapsulates peptide-element from "quantitation.xml"-file                  #
00006 ##############################################################################
00007 # COPYRIGHT NOTICE                                                           #
00008 # Copyright 1998-2009 Matrix Science Limited  All Rights Reserved.           #
00009 #                                                                            #
00010 ##############################################################################
00011  * @(#)$Source: /vol/cvsroot/parser/inc/ms_quant_normalisation_peptide.hpp,v $
00012  * @(#)$Revision: 1.5 $
00013  * @(#)$Date: 2010/09/06 16:18:57 $
00014 ##############################################################################
00015  */
00016 
00017 #ifndef MS_QUANT_NORMALISATION_PEPTIDE_HPP
00018 #define MS_QUANT_NORMALISATION_PEPTIDE_HPP
00019 
00020 #ifdef _WIN32
00021 #pragma warning(disable:4251)   // Don't want all classes to be exported
00022 #pragma warning(disable:4786)   // Debug symbols too long
00023 #   ifndef _MATRIX_USE_STATIC_LIB
00024 #       ifdef MS_MASCOTRESFILE_EXPORTS
00025 #           define MS_MASCOTRESFILE_API __declspec(dllexport)
00026 #       else
00027 #           define MS_MASCOTRESFILE_API __declspec(dllimport)
00028 #       endif
00029 #   else
00030 #       define MS_MASCOTRESFILE_API
00031 #   endif
00032 #else
00033 #   define MS_MASCOTRESFILE_API
00034 #endif
00035 
00036 #include <string>
00037 #include <vector>
00038 
00039 // forward declarations
00040 namespace msparser_internal {
00041     class ms_quant_xmlloader;
00042 }
00043 
00044 namespace matrix_science {
00045 
00046     class ms_quant_modgroup; // forward declaration
00047     class ms_xml_schema; // forward declaration
00048 
00054 
00055 
00058     class MS_MASCOTRESFILE_API ms_quant_normalisation_peptide: public ms_xml_IValidatable
00059     {
00060         friend class msparser_internal::ms_quant_xmlloader;
00061 
00062     public:
00064         ms_quant_normalisation_peptide();
00065 
00067         ms_quant_normalisation_peptide(const ms_quant_normalisation_peptide& src);
00068 
00070         virtual ~ms_quant_normalisation_peptide();
00071 
00073         void defaultValues();
00074 
00076         void copyFrom(const ms_quant_normalisation_peptide* right);
00077 
00078 #ifndef SWIG
00079 
00080         ms_quant_normalisation_peptide& operator=(const ms_quant_normalisation_peptide& right);
00081 #endif
00082 
00083         virtual std::string getSchemaType() const;
00084 
00086         virtual std::string validateShallow(const ms_xml_schema *pSchemaFileObj) const;
00087 
00089         virtual std::string validateDeep(const ms_xml_schema *pSchemaFileObj) const;
00090 
00091 
00093         bool haveSequence() const;
00094 
00096         std::string getSequence() const;
00097 
00099         void setSequence(const char * value);
00100 
00102         void dropSequence();
00103 
00105         std::string getSequenceSchemaType() const;
00106 
00107     private:
00108 
00109         std::string _sequence;
00110         bool _sequence_set;
00111     }; // class ms_quant_normalisation_peptide
00112 
00114     class MS_MASCOTRESFILE_API ms_quant_normalisation_peptides: public ms_xml_IValidatable
00115     {
00116         friend class msparser_internal::ms_quant_xmlloader;
00117 
00118     public:
00120         ms_quant_normalisation_peptides();
00121 
00123         ms_quant_normalisation_peptides(const ms_quant_normalisation_peptides& src);
00124 
00126         virtual ~ms_quant_normalisation_peptides();
00127 
00129         void defaultValues();
00130 
00132         void copyFrom(const ms_quant_normalisation_peptides* right);
00133 
00134 #ifndef SWIG
00135 
00136         ms_quant_normalisation_peptides& operator=(const ms_quant_normalisation_peptides& right);
00137 #endif
00138 
00139         virtual std::string getSchemaType() const;
00140 
00142         virtual std::string validateShallow(const ms_xml_schema *pSchemaFileObj) const;
00143 
00145         virtual std::string validateDeep(const ms_xml_schema *pSchemaFileObj) const;
00146 
00147 
00149         int getNumberOfPeptides() const;
00150 
00152         void clearPeptides();
00153 
00155         void appendPeptide(const ms_quant_normalisation_peptide* pep);
00156 
00158         const ms_quant_normalisation_peptide* getPeptide(const int idx) const;
00159 
00161         bool updatePeptide(const int idx, const ms_quant_normalisation_peptide* pep);
00162 
00164         bool deletePeptide(const int idx);
00165 
00167         std::string getPeptideSchemaType() const;
00168 
00169     private:
00170 
00171         typedef std::vector< ms_quant_normalisation_peptide* > pep_vector;
00172         pep_vector _peptides;
00173     }; // class ms_quant_normalisation_peptides
00174  // end of config_group
00176 
00177 } // namespace matrix_science
00178 
00179 #endif // MS_QUANT_NORMALISATION_PEPTIDE_HPP
00180 
00181 /*------------------------------- End of File -------------------------------*/
00182 
Copyright © 2016 Matrix Science Ltd.  All Rights Reserved. Generated on Fri Jun 2 2017 01:44:51