Matrix Science Mascot Parser toolkit
 
Loading...
Searching...
No Matches
ms_crosslinking_linkers.hpp
1/*
2##############################################################################
3# file: ms_crosslinking_linkers.hpp #
4# 'msparser' toolkit #
5# Encapsulates linkers element in crosslinking.xml #
6##############################################################################
7# COPYRIGHT NOTICE #
8# Copyright 1998-2019 Matrix Science Limited All Rights Reserved. #
9# #
10##############################################################################
11 * @(#)$Source: parser/inc/ms_crosslinking_linkers.hpp $
12 * @(#)$Revision: 9de60354aaae13272cadfa764dbabd92c93c724c | MSPARSER_REL_3_0_0-2024-09-24-0-g93ebaeb4f4 $
13 * @(#)$Date: 2018-12-20 12:05:22 +0000 $
14##############################################################################
15 */
16
17#ifndef MS_CROSSLINKING_LINKERS_HPP
18#define MS_CROSSLINKING_LINKERS_HPP
19
20
21#include <string>
22
23// forward declarations
24namespace msparser_internal {
25 class ms_crosslinking_xmlloader;
26}
27
28namespace matrix_science {
29 class ms_crosslinking_linker;
30 class ms_xml_schema; // forward declaration
31
38
53 class MS_MASCOTRESFILE_API ms_crosslinking_linkers: public ms_xml_IValidatable
54 {
55 friend class msparser_internal::ms_crosslinking_xmlloader;
56
57 public:
60
63
66
68 void defaultValues();
69
71 void copyFrom(const ms_crosslinking_linkers* right);
72
73#ifndef SWIG
75 ms_crosslinking_linkers& operator=(const ms_crosslinking_linkers& right);
76#endif
77
79 virtual std::string getSchemaType() const;
80
82 virtual std::string validateShallow(const ms_xml_schema *pSchemaFileObj) const;
83
85 virtual std::string validateDeep(const ms_xml_schema *pSchemaFileObj) const;
86
87
89 int getNumberOfLinkers() const;
90
92 void clearLinkers();
93
95 void appendLinker(const ms_crosslinking_linker *item);
96
98 const ms_crosslinking_linker * getLinkerByNumber(const int idx) const;
99
101 bool updateLinkerByNumber(const int idx, const ms_crosslinking_linker* linker);
102
104 bool deleteLinkerByNumber(const int idx);
105
107 std::string getLinkerSchemaType() const;
108
109 private:
110 typedef std::vector< ms_crosslinking_linker * > linker_vector;
111 linker_vector _linkers;
112
113 }; // class ms_crosslinking_linkers
114 // end of config_group
116
117} // namespace matrix_science
118
119#endif // MS_CROSSLINKING_LINKERS_HPP
120
121/*------------------------------- End of File -------------------------------*/
122
Linker element in crosslinking.xml
Definition: ms_crosslinking_linker.hpp:57
Linkers element in crosslinking.xml
Definition: ms_crosslinking_linkers.hpp:54