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

Go to the SVN repository for this file.

1 /* $Id: Seq_descr.hpp 64744 2014-10-07 14:40:49Z gotvyans $
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 /// @Seq_descr.hpp
29 /// User-defined methods of the data storage class.
30 ///
31 /// This file was originally generated by application DATATOOL
32 /// using the following specifications:
33 /// 'seq.asn'.
34 ///
35 /// New methods or data members can be added to it if needed.
36 /// See also: Seq_descr_.hpp
37 
38 
39 #ifndef OBJECTS_SEQ_SEQ_DESCR_HPP
40 #define OBJECTS_SEQ_SEQ_DESCR_HPP
41 
42 
43 #include <objects/seq/Seqdesc.hpp>
44 // generated includes
46 
47 // generated classes
48 
50 
51 BEGIN_objects_SCOPE // namespace ncbi::objects::
52 
53 /////////////////////////////////////////////////////////////////////////////
55 {
57 public:
58  // constructor
59  CSeq_descr(void);
60  // destructor
61  ~CSeq_descr(void);
62 
63  void PostRead(void) const;
64  void PreWrite(void) const;
65 
66 private:
67  // Prohibit copy constructor and assignment operator
70 
71 };
72 
73 /////////////////// CSeq_descr inline methods
74 
75 // constructor
76 inline
78 {
79 }
80 
83 
84 /////////////////// end of CSeq_descr inline methods
85 // CAutoAddDesc automatically adds a new seqdesc object once it's accessed via 'Set' method
87 {
88 public:
89  // construct
91  const CSeqdesc& Get() const;
92  // use skip_lookup in case you always need to create an seqdesc,
93  // e.g. for desc not requiring uniqueness (ePub, etc)
94  CSeqdesc& Set(bool skip_lookup = false);
95  bool IsNull() const;
96  void Erase();
97  static
98  CRef<CSeqdesc> LocateDesc(const CSeq_descr& descr, CSeqdesc::E_Choice which);
99  static
100  bool EraseDesc(CSeq_descr& descr, CSeqdesc::E_Choice which);
101 
102 private:
105 
106 protected:
110 };
111 
112 /////////////////// CAutoAddDesc inline methods
113 inline
115 {
116  m_descr.Reset(&descr);
117  m_which = which;
118 }
119 
120 /////////////////// end of CSeq_descr inline methods
121 
122 
123 END_objects_SCOPE // namespace ncbi::objects::
124 
126 
127 #endif // OBJECTS_SEQ_SEQ_DESCR_HPP
128 /* Original file checksum: lines: 94, chars: 2554, CRC32: 3be192b4 */
Data storage class.
CRef< CSeqdesc > m_desc
Definition: Seq_descr.hpp:109
CRef< CSeq_descr > m_descr
Definition: Seq_descr.hpp:108
CAutoAddDesc(const CAutoAddDesc &)
CSeqdesc::E_Choice m_which
Definition: Seq_descr.hpp:107
*** Descriptors ***************************** *
Definition: Seq_descr_.hpp:79
@Seq_descr.hpp User-defined methods of the data storage class.
Definition: Seq_descr.hpp:55
CSeq_descr_Base Tparent
Definition: Seq_descr.hpp:56
CSeq_descr & operator=(const CSeq_descr &value)
CSeq_descr(const CSeq_descr &value)
CSeq_descr(void)
Definition: Seq_descr.hpp:77
char value[7]
Definition: config.c:431
#define NCBISER_HAVE_POST_READ(Class)
Definition: serialbase.hpp:943
#define NCBISER_HAVE_PRE_WRITE(Class)
Definition: serialbase.hpp:952
void Reset(void)
Reset reference object.
Definition: ncbiobj.hpp:773
#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_SEQ_EXPORT
Definition: ncbi_export.h:825
E_Choice
Choice variants.
Definition: Seqdesc_.hpp:109
const TYPE & Get(const CNamedParameterList *param)
Modified on Sat Dec 09 04:47:18 2023 by modify_doxy.py rev. 669887