NCBI C++ ToolKit
Biostruc_graph_.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 /* $Id$
2  * ===========================================================================
3  *
4  * PUBLIC DOMAIN NOTICE
5  * National Center for Biotechnology Information
6  *
7  * This software/database is a "United States Government Work" under the
8  * terms of the United States Copyright Act. It was written as part of
9  * the author's official duties as a United States Government employee and
10  * thus cannot be copyrighted. This software/database is freely available
11  * to the public for use. The National Library of Medicine and the U.S.
12  * Government have not placed any restriction on its use or reproduction.
13  *
14  * Although all reasonable efforts have been taken to ensure the accuracy
15  * and reliability of the software and data, the NLM and the U.S.
16  * Government do not and cannot warrant the performance or results that
17  * may be obtained by using this software or data. The NLM and the U.S.
18  * Government disclaim all warranties, express or implied, including
19  * warranties of performance, merchantability or fitness for any particular
20  * purpose.
21  *
22  * Please cite the author in any work or product based on this material.
23  *
24  * ===========================================================================
25  *
26  */
27 
28 /// @file Biostruc_graph_.hpp
29 /// Data storage class.
30 ///
31 /// This file was generated by application DATATOOL
32 /// using the following specifications:
33 /// <a href="/IEB/ToolBox/CPP_DOC/lxr/source/src/objects/mmdb1/mmdb1.asn">mmdb1.asn</a>
34 /// and additional tune-up parameters:
35 /// <a href="/IEB/ToolBox/CPP_DOC/lxr/source/src/objects/mmdb1/mmdb1.def">mmdb1.def</a>
36 ///
37 /// ATTENTION:
38 /// Don't edit or commit this file into CVS as this file will
39 /// be overridden (by DATATOOL) without warning!
40 
41 #ifndef OBJECTS_MMDB1_BIOSTRUC_GRAPH_BASE_HPP
42 #define OBJECTS_MMDB1_BIOSTRUC_GRAPH_BASE_HPP
43 
44 // standard includes
45 #include <serial/serialbase.hpp>
46 
47 // generated includes
48 #include <list>
49 
51 
52 #ifndef BEGIN_objects_SCOPE
53 # define BEGIN_objects_SCOPE BEGIN_SCOPE(objects)
54 # define END_objects_SCOPE END_SCOPE(objects)
55 #endif
56 BEGIN_objects_SCOPE // namespace ncbi::objects::
57 
58 
59 // forward declarations
60 class CBiomol_descr;
62 class CMolecule_graph;
63 class CResidue_graph;
64 
65 
66 // generated classes
67 
68 
69 /** @addtogroup dataspec_MMDB_Chemical_graph
70  *
71  * @{
72  */
73 
74 /////////////////////////////////////////////////////////////////////////////
75 /// A biostruc graph contains the complete chemical graph of the biomolecular
76 /// assembly. The assembly graph is defined hierarchically, in terms of
77 /// subgraphs graphs of component molecules. For PDB-derived biostrucs,
78 /// the molecules forming the assembly are the individual biopolymer chains and
79 /// any non-polymer or "heterogen" groups which are present.
80 /// The PDB-derived "compound name" field appears as the name within the
81 /// biostruc-graph description. PDB "class" and "source" fields appear as
82 /// explicit attributes. PDB-derived structures are assigned an assembly type
83 /// of "other" unless they have been further classified as the "physiological
84 /// form" or "crystallographic cell" contents. If they have, the source of the
85 /// type classification appears as a citation within the assembly description.
86 /// Note that the biostruc-graph also includes as literals the subgraphs of
87 /// any nonstandard residues present within it. For PDB-derived biostrucs these
88 /// subgraphs are constructed automatically, with validation as described below.
89 ///
90 /// CBiostruc_graph_Base --
91 ///
92 
94 {
96 public:
97  // constructor
99  // destructor
100  virtual ~CBiostruc_graph_Base(void);
101 
102  // type info
104 
105  // types
106  typedef list< CRef< CBiomol_descr > > TDescr;
107  typedef list< CRef< CMolecule_graph > > TMolecule_graphs;
108  typedef list< CRef< CInter_residue_bond > > TInter_molecule_bonds;
109  typedef list< CRef< CResidue_graph > > TResidue_graphs;
110 
111  // member index
112  enum class E_memberIndex {
113  e__allMandatory = 0,
114  e_descr,
115  e_molecule_graphs,
116  e_inter_molecule_bonds,
117  e_residue_graphs
118  };
120 
121  // getters
122  // setters
123 
124  /// Check if a value has been assigned to Descr data member.
125  ///
126  /// Data member Descr is optional;
127  /// its type is defined as 'typedef list< CRef< CBiomol_descr > > TDescr'
128  /// @return
129  /// - true, if a value has been assigned.
130  /// - false, otherwise.
131  bool IsSetDescr(void) const;
132 
133  /// Check if it is safe to call GetDescr method.
134  ///
135  /// @return
136  /// - true, if the data member is getatable.
137  /// - false, otherwise.
138  bool CanGetDescr(void) const;
139 
140  /// Reset Descr data member.
141  void ResetDescr(void);
142 
143  /// Get the Descr member data.
144  ///
145  /// @return
146  /// Reference to the member data.
147  const TDescr& GetDescr(void) const;
148 
149  /// Assign a value to Descr data member.
150  ///
151  /// @return
152  /// Reference to the data value.
153  TDescr& SetDescr(void);
154 
155  /// Check if a value has been assigned to Molecule_graphs data member.
156  ///
157  /// Data member Molecule_graphs is mandatory;
158  /// its type is defined as 'typedef list< CRef< CMolecule_graph > > TMolecule_graphs'
159  /// @return
160  /// - true, if a value has been assigned.
161  /// - false, otherwise.
162  bool IsSetMolecule_graphs(void) const;
163 
164  /// Check if it is safe to call GetMolecule_graphs method.
165  ///
166  /// @return
167  /// - true, if the data member is getatable.
168  /// - false, otherwise.
169  bool CanGetMolecule_graphs(void) const;
170 
171  /// Reset Molecule_graphs data member.
172  void ResetMolecule_graphs(void);
173 
174  /// Get the Molecule_graphs member data.
175  ///
176  /// @return
177  /// Reference to the member data.
178  const TMolecule_graphs& GetMolecule_graphs(void) const;
179 
180  /// Assign a value to Molecule_graphs data member.
181  ///
182  /// @return
183  /// Reference to the data value.
184  TMolecule_graphs& SetMolecule_graphs(void);
185 
186  /// Check if a value has been assigned to Inter_molecule_bonds data member.
187  ///
188  /// Data member Inter_molecule_bonds is optional;
189  /// its type is defined as 'typedef list< CRef< CInter_residue_bond > > TInter_molecule_bonds'
190  /// @return
191  /// - true, if a value has been assigned.
192  /// - false, otherwise.
193  bool IsSetInter_molecule_bonds(void) const;
194 
195  /// Check if it is safe to call GetInter_molecule_bonds method.
196  ///
197  /// @return
198  /// - true, if the data member is getatable.
199  /// - false, otherwise.
200  bool CanGetInter_molecule_bonds(void) const;
201 
202  /// Reset Inter_molecule_bonds data member.
203  void ResetInter_molecule_bonds(void);
204 
205  /// Get the Inter_molecule_bonds member data.
206  ///
207  /// @return
208  /// Reference to the member data.
209  const TInter_molecule_bonds& GetInter_molecule_bonds(void) const;
210 
211  /// Assign a value to Inter_molecule_bonds data member.
212  ///
213  /// @return
214  /// Reference to the data value.
215  TInter_molecule_bonds& SetInter_molecule_bonds(void);
216 
217  /// Check if a value has been assigned to Residue_graphs data member.
218  ///
219  /// Data member Residue_graphs is optional;
220  /// its type is defined as 'typedef list< CRef< CResidue_graph > > TResidue_graphs'
221  /// @return
222  /// - true, if a value has been assigned.
223  /// - false, otherwise.
224  bool IsSetResidue_graphs(void) const;
225 
226  /// Check if it is safe to call GetResidue_graphs method.
227  ///
228  /// @return
229  /// - true, if the data member is getatable.
230  /// - false, otherwise.
231  bool CanGetResidue_graphs(void) const;
232 
233  /// Reset Residue_graphs data member.
234  void ResetResidue_graphs(void);
235 
236  /// Get the Residue_graphs member data.
237  ///
238  /// @return
239  /// Reference to the member data.
240  const TResidue_graphs& GetResidue_graphs(void) const;
241 
242  /// Assign a value to Residue_graphs data member.
243  ///
244  /// @return
245  /// Reference to the data value.
246  TResidue_graphs& SetResidue_graphs(void);
247 
248  /// Reset the whole object
249  virtual void Reset(void);
250 
251 
252 private:
253  // Prohibit copy constructor and assignment operator
256 
257  // data
258  Uint4 m_set_State[1];
259  list< CRef< CBiomol_descr > > m_Descr;
260  list< CRef< CMolecule_graph > > m_Molecule_graphs;
261  list< CRef< CInter_residue_bond > > m_Inter_molecule_bonds;
262  list< CRef< CResidue_graph > > m_Residue_graphs;
263 };
264 
265 /* @} */
266 
267 
268 
269 
270 
271 ///////////////////////////////////////////////////////////
272 ///////////////////// inline methods //////////////////////
273 ///////////////////////////////////////////////////////////
274 inline
276 {
277  return ((m_set_State[0] & 0x3) != 0);
278 }
279 
280 inline
282 {
283  return true;
284 }
285 
286 inline
288 {
289  return m_Descr;
290 }
291 
292 inline
294 {
295  m_set_State[0] |= 0x1;
296  return m_Descr;
297 }
298 
299 inline
301 {
302  return ((m_set_State[0] & 0xc) != 0);
303 }
304 
305 inline
307 {
308  return true;
309 }
310 
311 inline
313 {
314  return m_Molecule_graphs;
315 }
316 
317 inline
319 {
320  m_set_State[0] |= 0x4;
321  return m_Molecule_graphs;
322 }
323 
324 inline
326 {
327  return ((m_set_State[0] & 0x30) != 0);
328 }
329 
330 inline
332 {
333  return true;
334 }
335 
336 inline
338 {
339  return m_Inter_molecule_bonds;
340 }
341 
342 inline
344 {
345  m_set_State[0] |= 0x10;
346  return m_Inter_molecule_bonds;
347 }
348 
349 inline
351 {
352  return ((m_set_State[0] & 0xc0) != 0);
353 }
354 
355 inline
357 {
358  return true;
359 }
360 
361 inline
363 {
364  return m_Residue_graphs;
365 }
366 
367 inline
369 {
370  m_set_State[0] |= 0x40;
371  return m_Residue_graphs;
372 }
373 
374 ///////////////////////////////////////////////////////////
375 ////////////////// end of inline methods //////////////////
376 ///////////////////////////////////////////////////////////
377 
378 
379 
380 
381 
382 END_objects_SCOPE // namespace ncbi::objects::
383 
385 
386 
387 #endif // OBJECTS_MMDB1_BIOSTRUC_GRAPH_BASE_HPP
CBiomol_descr –.
A biostruc graph contains the complete chemical graph of the biomolecular assembly.
CInter_residue_bond –.
CMolecule_graph –.
CResidue_graph –.
Base class for all serializable objects.
Definition: serialbase.hpp:150
uint32_t Uint4
4-byte (32-bit) unsigned integer
Definition: ncbitype.h:103
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
#define NCBI_MMDB1_EXPORT
Definition: ncbi_export.h:624
list< CRef< CBiomol_descr > > m_Descr
bool CanGetInter_molecule_bonds(void) const
Check if it is safe to call GetInter_molecule_bonds method.
CBiostruc_graph_Base & operator=(const CBiostruc_graph_Base &)
const TResidue_graphs & GetResidue_graphs(void) const
Get the Residue_graphs member data.
list< CRef< CMolecule_graph > > m_Molecule_graphs
bool IsSetDescr(void) const
Check if a value has been assigned to Descr data member.
Tparent::CMemberIndex< E_memberIndex, 5 > TmemberIndex
TResidue_graphs & SetResidue_graphs(void)
Assign a value to Residue_graphs data member.
bool CanGetDescr(void) const
Check if it is safe to call GetDescr method.
list< CRef< CResidue_graph > > m_Residue_graphs
const TInter_molecule_bonds & GetInter_molecule_bonds(void) const
Get the Inter_molecule_bonds member data.
const TDescr & GetDescr(void) const
Get the Descr member data.
list< CRef< CBiomol_descr > > TDescr
list< CRef< CResidue_graph > > TResidue_graphs
list< CRef< CMolecule_graph > > TMolecule_graphs
const TMolecule_graphs & GetMolecule_graphs(void) const
Get the Molecule_graphs member data.
bool IsSetMolecule_graphs(void) const
Check if a value has been assigned to Molecule_graphs data member.
CBiostruc_graph_Base(const CBiostruc_graph_Base &)
TDescr & SetDescr(void)
Assign a value to Descr data member.
list< CRef< CInter_residue_bond > > m_Inter_molecule_bonds
bool CanGetResidue_graphs(void) const
Check if it is safe to call GetResidue_graphs method.
TMolecule_graphs & SetMolecule_graphs(void)
Assign a value to Molecule_graphs data member.
bool IsSetInter_molecule_bonds(void) const
Check if a value has been assigned to Inter_molecule_bonds data member.
TInter_molecule_bonds & SetInter_molecule_bonds(void)
Assign a value to Inter_molecule_bonds data member.
bool CanGetMolecule_graphs(void) const
Check if it is safe to call GetMolecule_graphs method.
list< CRef< CInter_residue_bond > > TInter_molecule_bonds
bool IsSetResidue_graphs(void) const
Check if a value has been assigned to Residue_graphs data member.
Modified on Wed Jun 12 11:18:46 2024 by modify_doxy.py rev. 669887