NCBI C++ ToolKit
Mim_reference_.cpp
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  * File Description:
27  * This code was generated by application DATATOOL
28  * using the following specifications:
29  * 'mim.asn'.
30  *
31  * ATTENTION:
32  * Don't edit or commit this file into CVS as this file will
33  * be overridden (by DATATOOL) without warning!
34  * ===========================================================================
35  */
36 
37 // standard includes
38 #include <ncbi_pch.hpp>
39 #include <serial/serialimpl.hpp>
40 
41 // generated includes
44 #include <objects/mim/Mim_date.hpp>
45 #include <objects/mim/Mim_page.hpp>
47 
48 BEGIN_objects_SCOPE // namespace ncbi::objects::
49 
50 
51 // generated classes
52 
54 {
55  SET_ENUM_INTERNAL_NAME("Mim-reference", "type");
56  SET_ENUM_MODULE("NCBI-Mim");
57  ADD_ENUM_VALUE("not-set", eType_not_set);
58  ADD_ENUM_VALUE("citation", eType_citation);
59  ADD_ENUM_VALUE("book", eType_book);
60  ADD_ENUM_VALUE("personal-communication", eType_personal_communication);
61  ADD_ENUM_VALUE("book-citation", eType_book_citation);
62 }
64 
66 {
67  m_Authors.clear();
68  m_set_State[0] &= ~0xc0;
69 }
70 
72 {
73  m_PrimaryAuthor.erase();
74  m_set_State[0] &= ~0x300;
75 }
76 
78 {
79  m_OtherAuthors.erase();
80  m_set_State[0] &= ~0xc00;
81 }
82 
84 {
85  m_CitationTitle.erase();
86  m_set_State[0] &= ~0x3000;
87 }
88 
90 {
91  m_BookTitle.erase();
92  m_set_State[0] &= ~0x30000;
93 }
94 
96 {
97  m_Editors.clear();
98  m_set_State[0] &= ~0xc0000;
99 }
100 
102 {
103  m_Volume.erase();
104  m_set_State[0] &= ~0x300000;
105 }
106 
108 {
109  m_Edition.erase();
110  m_set_State[0] &= ~0xc00000;
111 }
112 
114 {
115  m_Journal.erase();
116  m_set_State[0] &= ~0x3000000;
117 }
118 
120 {
121  m_Series.erase();
122  m_set_State[0] &= ~0xc000000;
123 }
124 
126 {
127  m_Publisher.erase();
128  m_set_State[0] &= ~0x30000000;
129 }
130 
132 {
133  m_Place.erase();
134  m_set_State[0] &= ~0xc0000000;
135 }
136 
138 {
139  m_CommNote.erase();
140  m_set_State[1] &= ~0x3;
141 }
142 
144 {
145  if ( !m_PubDate ) {
146  m_PubDate.Reset(new TPubDate());
147  return;
148  }
149  (*m_PubDate).Reset();
150 }
151 
153 {
154  m_PubDate.Reset(&value);
155 }
156 
158 {
159  m_Pages.clear();
160  m_set_State[1] &= ~0x30;
161 }
162 
164 {
165  m_MiscInfo.erase();
166  m_set_State[1] &= ~0xc0;
167 }
168 
170 {
171  ResetNumber();
172  ResetOrigNumber();
173  ResetType();
174  ResetAuthors();
179  ResetBookTitle();
180  ResetEditors();
181  ResetVolume();
182  ResetEdition();
183  ResetJournal();
184  ResetSeries();
185  ResetPublisher();
186  ResetPlace();
187  ResetCommNote();
188  ResetPubDate();
189  ResetPages();
190  ResetMiscInfo();
191  ResetPubmedUID();
192  ResetAmbiguous();
193  ResetNoLink();
194 }
195 
197 {
198  SET_CLASS_MODULE("NCBI-Mim");
199  ADD_NAMED_STD_MEMBER("number", m_Number)->SetSetFlag(MEMBER_PTR(m_set_State[0]));
200  ADD_NAMED_STD_MEMBER("origNumber", m_OrigNumber)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
201  ADD_NAMED_ENUM_MEMBER("type", m_Type, EType)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
202  ADD_NAMED_MEMBER("authors", m_Authors, STL_list, (STL_CRef, (CLASS, (CMim_author))))->SetSetFlag(MEMBER_PTR(m_set_State[0]));
203  ADD_NAMED_STD_MEMBER("primaryAuthor", m_PrimaryAuthor)->SetSetFlag(MEMBER_PTR(m_set_State[0]));
204  ADD_NAMED_STD_MEMBER("otherAuthors", m_OtherAuthors)->SetSetFlag(MEMBER_PTR(m_set_State[0]));
205  ADD_NAMED_STD_MEMBER("citationTitle", m_CitationTitle)->SetSetFlag(MEMBER_PTR(m_set_State[0]));
206  ADD_NAMED_STD_MEMBER("citationType", m_CitationType)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
207  ADD_NAMED_STD_MEMBER("bookTitle", m_BookTitle)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
208  ADD_NAMED_MEMBER("editors", m_Editors, STL_list, (STL_CRef, (CLASS, (CMim_author))))->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
209  ADD_NAMED_STD_MEMBER("volume", m_Volume)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
210  ADD_NAMED_STD_MEMBER("edition", m_Edition)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
211  ADD_NAMED_STD_MEMBER("journal", m_Journal)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
212  ADD_NAMED_STD_MEMBER("series", m_Series)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
213  ADD_NAMED_STD_MEMBER("publisher", m_Publisher)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
214  ADD_NAMED_STD_MEMBER("place", m_Place)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
215  ADD_NAMED_STD_MEMBER("commNote", m_CommNote)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
216  ADD_NAMED_REF_MEMBER("pubDate", m_PubDate, CMim_date);
217  ADD_NAMED_MEMBER("pages", m_Pages, STL_list, (STL_CRef, (CLASS, (CMim_page))))->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
218  ADD_NAMED_STD_MEMBER("miscInfo", m_MiscInfo)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
219  ADD_NAMED_STD_MEMBER("pubmedUID", m_PubmedUID)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
220  ADD_NAMED_STD_MEMBER("ambiguous", m_Ambiguous)->SetSetFlag(MEMBER_PTR(m_set_State[0]));
221  ADD_NAMED_STD_MEMBER("noLink", m_NoLink)->SetSetFlag(MEMBER_PTR(m_set_State[0]))->SetOptional();
222  info->RandomOrder();
223  info->CodeVersion(22400);
224  info->DataSpec(ncbi::EDataSpec::eASN);
225 }
227 
228 // constructor
230  : m_Number(0), m_OrigNumber(0), m_Type((EType)(0)), m_CitationType(0), m_PubmedUID(0), m_Ambiguous(0), m_NoLink(0)
231 {
232  memset(m_set_State,0,sizeof(m_set_State));
233  if ( !IsAllocatedInPool() ) {
234  ResetPubDate();
235  }
236 }
237 
238 // destructor
240 {
241 }
242 
243 
244 
245 END_objects_SCOPE // namespace ncbi::objects::
246 
248 
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
BEGIN_NAMED_ENUM_IN_INFO("", CMim_reference_Base::, EType, false)
BEGIN_NAMED_BASE_CLASS_INFO("Mim-reference", CMim_reference)
END_ENUM_INFO
Definition: aln_errors.cpp:58
CMim_author –.
Definition: Mim_author.hpp:66
CMim_date –.
Definition: Mim_date.hpp:66
CMim_page –.
Definition: Mim_page.hpp:66
CMim_reference_Base –.
CMim_reference –.
#define MEMBER_PTR(MemberName)
Definition: serialimpl.hpp:284
#define SET_ENUM_INTERNAL_NAME(OwnerName, MemberName)
Definition: serialimpl.hpp:559
#define ADD_NAMED_MEMBER(MemberAlias, MemberName, TypeMacro, TypeMacroArgs)
Definition: serialimpl.hpp:342
#define ADD_NAMED_REF_MEMBER(MemberAlias, MemberName, ClassName)
Definition: serialimpl.hpp:357
#define SET_ENUM_MODULE(ModuleName)
Definition: serialimpl.hpp:553
#define END_CLASS_INFO
Definition: serialimpl.hpp:456
#define ADD_NAMED_STD_MEMBER(MemberAlias, MemberName)
Definition: serialimpl.hpp:345
#define SET_CLASS_MODULE(ModuleName)
Definition: serialimpl.hpp:444
#define ADD_NAMED_ENUM_MEMBER(MemberAlias, MemberName, EnumName)
Definition: serialimpl.hpp:351
#define ADD_ENUM_VALUE(EnumValueName, EnumValueValue)
Definition: serialimpl.hpp:562
bool IsAllocatedInPool(void) const THROWS_NONE
Check if object is allocated in memory pool (not system heap)
Definition: ncbiobj.hpp:461
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
void ResetOtherAuthors(void)
Reset OtherAuthors data member.
void ResetVolume(void)
Reset Volume data member.
void ResetEdition(void)
Reset Edition data member.
list< CRef< CMim_author > > m_Editors
void ResetCommNote(void)
Reset CommNote data member.
void ResetType(void)
Reset Type data member.
void ResetPublisher(void)
Reset Publisher data member.
void ResetPubDate(void)
Reset PubDate data member.
void ResetBookTitle(void)
Reset BookTitle data member.
void ResetPages(void)
Reset Pages data member.
void ResetPubmedUID(void)
Reset PubmedUID data member.
void ResetEditors(void)
Reset Editors data member.
void ResetSeries(void)
Reset Series data member.
TPubDate & SetPubDate(void)
Assign a value to PubDate data member.
void ResetNumber(void)
Reset Number data member.
void ResetAmbiguous(void)
Reset Ambiguous data member.
void ResetOrigNumber(void)
Reset OrigNumber data member.
list< CRef< CMim_author > > m_Authors
void ResetCitationTitle(void)
Reset CitationTitle data member.
void ResetPrimaryAuthor(void)
Reset PrimaryAuthor data member.
void ResetNoLink(void)
Reset NoLink data member.
virtual ~CMim_reference_Base(void)
void ResetMiscInfo(void)
Reset MiscInfo data member.
void ResetPlace(void)
Reset Place data member.
void ResetAuthors(void)
Reset Authors data member.
void ResetJournal(void)
Reset Journal data member.
virtual void Reset(void)
Reset the whole object.
CRef< TPubDate > m_PubDate
void ResetCitationType(void)
Reset CitationType data member.
list< CRef< CMim_page > > m_Pages
static MDB_envinfo info
Definition: mdb_load.c:37
const GenericPointer< typename T::ValueType > T2 value
Definition: pointer.h:1227
Modified on Wed May 01 14:23:59 2024 by modify_doxy.py rev. 669887