NCBI C++ ToolKit
HG_Gene_.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 HG_Gene_.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/homologene/homologene.asn">homologene.asn</a>
34 /// and additional tune-up parameters:
35 /// <a href="/IEB/ToolBox/CPP_DOC/lxr/source/src/objects/homologene/homologene.def">homologene.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_HOMOLOGENE_HG_GENE_BASE_HPP
42 #define OBJECTS_HOMOLOGENE_HG_GENE_BASE_HPP
43 
44 // standard includes
45 #include <serial/serialbase.hpp>
46 
47 // generated includes
48 #include <list>
49 #include <string>
50 
52 
53 #ifndef BEGIN_objects_SCOPE
54 # define BEGIN_objects_SCOPE BEGIN_SCOPE(objects)
55 # define END_objects_SCOPE END_SCOPE(objects)
56 #endif
57 BEGIN_objects_SCOPE // namespace ncbi::objects::
58 
59 
60 // forward declarations
61 class CHG_Domain;
62 class CHG_Link;
63 class CSeq_loc;
64 
65 
66 // generated classes
67 
68 
69 /** @addtogroup dataspec_HomoloGene
70  *
71  * @{
72  */
73 
74 /////////////////////////////////////////////////////////////////////////////
75 ///
76 /// CHG_Gene_Base --
77 ///
78 
80 {
82 public:
83  // constructor
84  CHG_Gene_Base(void);
85  // destructor
86  virtual ~CHG_Gene_Base(void);
87 
88  // type info
90 
91  // types
92  typedef int TGeneid;
93  typedef int TOtherid;
94  typedef string TSymbol;
95  typedef list< string > TAliases;
96  typedef string TTitle;
97  typedef int TTaxid;
98  typedef int TProt_gi;
99  typedef string TProt_acc;
100  typedef int TProt_len;
101  typedef int TNuc_gi;
102  typedef string TNuc_acc;
103  typedef list< CRef< CHG_Link > > TGene_links;
104  typedef list< CRef< CHG_Link > > TProt_links;
105  typedef list< CRef< CHG_Domain > > TDomains;
106  typedef string TChr;
108  typedef string TLocus_tag;
109 
110  // member index
111  enum class E_memberIndex {
112  e__allMandatory = 0,
113  e_geneid,
114  e_otherid,
115  e_symbol,
116  e_aliases,
117  e_title,
118  e_taxid,
119  e_prot_gi,
120  e_prot_acc,
121  e_prot_len,
122  e_nuc_gi,
123  e_nuc_acc,
124  e_gene_links,
125  e_prot_links,
126  e_domains,
127  e_chr,
128  e_location,
130  };
132 
133  // getters
134  // setters
135 
136  /// Check if a value has been assigned to Geneid data member.
137  ///
138  /// Data member Geneid is mandatory;
139  /// its type is defined as 'typedef int TGeneid'
140  /// @return
141  /// - true, if a value has been assigned.
142  /// - false, otherwise.
143  bool IsSetGeneid(void) const;
144 
145  /// Check if it is safe to call GetGeneid method.
146  ///
147  /// @return
148  /// - true, if the data member is getatable.
149  /// - false, otherwise.
150  bool CanGetGeneid(void) const;
151 
152  /// Reset Geneid data member.
153  void ResetGeneid(void);
154 
155  /// Get the Geneid member data.
156  ///
157  /// @return
158  /// Copy of the member data.
159  TGeneid GetGeneid(void) const;
160 
161  /// Assign a value to Geneid data member.
162  ///
163  /// @param value
164  /// Value to assign
165  void SetGeneid(TGeneid value);
166 
167  /// Assign a value to Geneid data member.
168  ///
169  /// @return
170  /// Reference to the data value.
171  TGeneid& SetGeneid(void);
172 
173  /// internal use only!!!!!
174  /// Check if a value has been assigned to Otherid data member.
175  ///
176  /// Data member Otherid is optional;
177  /// its type is defined as 'typedef int TOtherid'
178  /// @return
179  /// - true, if a value has been assigned.
180  /// - false, otherwise.
181  bool IsSetOtherid(void) const;
182 
183  /// Check if it is safe to call GetOtherid method.
184  ///
185  /// @return
186  /// - true, if the data member is getatable.
187  /// - false, otherwise.
188  bool CanGetOtherid(void) const;
189 
190  /// Reset Otherid data member.
191  void ResetOtherid(void);
192 
193  /// Get the Otherid member data.
194  ///
195  /// @return
196  /// Copy of the member data.
197  TOtherid GetOtherid(void) const;
198 
199  /// Assign a value to Otherid data member.
200  ///
201  /// @param value
202  /// Value to assign
203  void SetOtherid(TOtherid value);
204 
205  /// Assign a value to Otherid data member.
206  ///
207  /// @return
208  /// Reference to the data value.
209  TOtherid& SetOtherid(void);
210 
211  /// Check if a value has been assigned to Symbol data member.
212  ///
213  /// Data member Symbol is optional;
214  /// its type is defined as 'typedef string TSymbol'
215  /// @return
216  /// - true, if a value has been assigned.
217  /// - false, otherwise.
218  bool IsSetSymbol(void) const;
219 
220  /// Check if it is safe to call GetSymbol method.
221  ///
222  /// @return
223  /// - true, if the data member is getatable.
224  /// - false, otherwise.
225  bool CanGetSymbol(void) const;
226 
227  /// Reset Symbol data member.
228  void ResetSymbol(void);
229 
230  /// Get the Symbol member data.
231  ///
232  /// @return
233  /// Reference to the member data.
234  const TSymbol& GetSymbol(void) const;
235 
236  /// Assign a value to Symbol data member.
237  ///
238  /// @param value
239  /// Value to assign
240  void SetSymbol(const TSymbol& value);
241  void SetSymbol(TSymbol&& value);
242 
243  /// Assign a value to Symbol data member.
244  ///
245  /// @return
246  /// Reference to the data value.
247  TSymbol& SetSymbol(void);
248 
249  /// Check if a value has been assigned to Aliases data member.
250  ///
251  /// Data member Aliases is optional;
252  /// its type is defined as 'typedef list< string > TAliases'
253  /// @return
254  /// - true, if a value has been assigned.
255  /// - false, otherwise.
256  bool IsSetAliases(void) const;
257 
258  /// Check if it is safe to call GetAliases method.
259  ///
260  /// @return
261  /// - true, if the data member is getatable.
262  /// - false, otherwise.
263  bool CanGetAliases(void) const;
264 
265  /// Reset Aliases data member.
266  void ResetAliases(void);
267 
268  /// Get the Aliases member data.
269  ///
270  /// @return
271  /// Reference to the member data.
272  const TAliases& GetAliases(void) const;
273 
274  /// Assign a value to Aliases data member.
275  ///
276  /// @return
277  /// Reference to the data value.
278  TAliases& SetAliases(void);
279 
280  /// Check if a value has been assigned to Title data member.
281  ///
282  /// Data member Title is mandatory;
283  /// its type is defined as 'typedef string TTitle'
284  /// @return
285  /// - true, if a value has been assigned.
286  /// - false, otherwise.
287  bool IsSetTitle(void) const;
288 
289  /// Check if it is safe to call GetTitle method.
290  ///
291  /// @return
292  /// - true, if the data member is getatable.
293  /// - false, otherwise.
294  bool CanGetTitle(void) const;
295 
296  /// Reset Title data member.
297  void ResetTitle(void);
298 
299  /// Get the Title member data.
300  ///
301  /// @return
302  /// Reference to the member data.
303  const TTitle& GetTitle(void) const;
304 
305  /// Assign a value to Title data member.
306  ///
307  /// @param value
308  /// Value to assign
309  void SetTitle(const TTitle& value);
310  void SetTitle(TTitle&& value);
311 
312  /// Assign a value to Title data member.
313  ///
314  /// @return
315  /// Reference to the data value.
316  TTitle& SetTitle(void);
317 
318  ///taxid of gene node
319  /// Check if a value has been assigned to Taxid data member.
320  ///
321  /// Data member Taxid is mandatory;
322  /// its type is defined as 'typedef int TTaxid'
323  /// @return
324  /// - true, if a value has been assigned.
325  /// - false, otherwise.
326  bool IsSetTaxid(void) const;
327 
328  /// Check if it is safe to call GetTaxid method.
329  ///
330  /// @return
331  /// - true, if the data member is getatable.
332  /// - false, otherwise.
333  bool CanGetTaxid(void) const;
334 
335  /// Reset Taxid data member.
336  void ResetTaxid(void);
337 
338  /// Get the Taxid member data.
339  ///
340  /// @return
341  /// Copy of the member data.
342  TTaxid GetTaxid(void) const;
343 
344  /// Assign a value to Taxid data member.
345  ///
346  /// @param value
347  /// Value to assign
348  void SetTaxid(TTaxid value);
349 
350  /// Assign a value to Taxid data member.
351  ///
352  /// @return
353  /// Reference to the data value.
354  TTaxid& SetTaxid(void);
355 
356  /// Check if a value has been assigned to Prot_gi data member.
357  ///
358  /// Data member Prot_gi is optional;
359  /// its type is defined as 'typedef int TProt_gi'
360  /// @return
361  /// - true, if a value has been assigned.
362  /// - false, otherwise.
363  bool IsSetProt_gi(void) const;
364 
365  /// Check if it is safe to call GetProt_gi method.
366  ///
367  /// @return
368  /// - true, if the data member is getatable.
369  /// - false, otherwise.
370  bool CanGetProt_gi(void) const;
371 
372  /// Reset Prot_gi data member.
373  void ResetProt_gi(void);
374 
375  /// Get the Prot_gi member data.
376  ///
377  /// @return
378  /// Copy of the member data.
379  TProt_gi GetProt_gi(void) const;
380 
381  /// Assign a value to Prot_gi data member.
382  ///
383  /// @param value
384  /// Value to assign
385  void SetProt_gi(TProt_gi value);
386 
387  /// Assign a value to Prot_gi data member.
388  ///
389  /// @return
390  /// Reference to the data value.
391  TProt_gi& SetProt_gi(void);
392 
393  /// Check if a value has been assigned to Prot_acc data member.
394  ///
395  /// Data member Prot_acc is optional;
396  /// its type is defined as 'typedef string TProt_acc'
397  /// @return
398  /// - true, if a value has been assigned.
399  /// - false, otherwise.
400  bool IsSetProt_acc(void) const;
401 
402  /// Check if it is safe to call GetProt_acc method.
403  ///
404  /// @return
405  /// - true, if the data member is getatable.
406  /// - false, otherwise.
407  bool CanGetProt_acc(void) const;
408 
409  /// Reset Prot_acc data member.
410  void ResetProt_acc(void);
411 
412  /// Get the Prot_acc member data.
413  ///
414  /// @return
415  /// Reference to the member data.
416  const TProt_acc& GetProt_acc(void) const;
417 
418  /// Assign a value to Prot_acc data member.
419  ///
420  /// @param value
421  /// Value to assign
422  void SetProt_acc(const TProt_acc& value);
423  void SetProt_acc(TProt_acc&& value);
424 
425  /// Assign a value to Prot_acc data member.
426  ///
427  /// @return
428  /// Reference to the data value.
429  TProt_acc& SetProt_acc(void);
430 
431  /// Check if a value has been assigned to Prot_len data member.
432  ///
433  /// Data member Prot_len is optional;
434  /// its type is defined as 'typedef int TProt_len'
435  /// @return
436  /// - true, if a value has been assigned.
437  /// - false, otherwise.
438  bool IsSetProt_len(void) const;
439 
440  /// Check if it is safe to call GetProt_len method.
441  ///
442  /// @return
443  /// - true, if the data member is getatable.
444  /// - false, otherwise.
445  bool CanGetProt_len(void) const;
446 
447  /// Reset Prot_len data member.
448  void ResetProt_len(void);
449 
450  /// Get the Prot_len member data.
451  ///
452  /// @return
453  /// Copy of the member data.
454  TProt_len GetProt_len(void) const;
455 
456  /// Assign a value to Prot_len data member.
457  ///
458  /// @param value
459  /// Value to assign
461 
462  /// Assign a value to Prot_len data member.
463  ///
464  /// @return
465  /// Reference to the data value.
466  TProt_len& SetProt_len(void);
467 
468  /// Check if a value has been assigned to Nuc_gi data member.
469  ///
470  /// Data member Nuc_gi is optional;
471  /// its type is defined as 'typedef int TNuc_gi'
472  /// @return
473  /// - true, if a value has been assigned.
474  /// - false, otherwise.
475  bool IsSetNuc_gi(void) const;
476 
477  /// Check if it is safe to call GetNuc_gi method.
478  ///
479  /// @return
480  /// - true, if the data member is getatable.
481  /// - false, otherwise.
482  bool CanGetNuc_gi(void) const;
483 
484  /// Reset Nuc_gi data member.
485  void ResetNuc_gi(void);
486 
487  /// Get the Nuc_gi member data.
488  ///
489  /// @return
490  /// Copy of the member data.
491  TNuc_gi GetNuc_gi(void) const;
492 
493  /// Assign a value to Nuc_gi data member.
494  ///
495  /// @param value
496  /// Value to assign
497  void SetNuc_gi(TNuc_gi value);
498 
499  /// Assign a value to Nuc_gi data member.
500  ///
501  /// @return
502  /// Reference to the data value.
503  TNuc_gi& SetNuc_gi(void);
504 
505  /// Check if a value has been assigned to Nuc_acc data member.
506  ///
507  /// Data member Nuc_acc is optional;
508  /// its type is defined as 'typedef string TNuc_acc'
509  /// @return
510  /// - true, if a value has been assigned.
511  /// - false, otherwise.
512  bool IsSetNuc_acc(void) const;
513 
514  /// Check if it is safe to call GetNuc_acc method.
515  ///
516  /// @return
517  /// - true, if the data member is getatable.
518  /// - false, otherwise.
519  bool CanGetNuc_acc(void) const;
520 
521  /// Reset Nuc_acc data member.
522  void ResetNuc_acc(void);
523 
524  /// Get the Nuc_acc member data.
525  ///
526  /// @return
527  /// Reference to the member data.
528  const TNuc_acc& GetNuc_acc(void) const;
529 
530  /// Assign a value to Nuc_acc data member.
531  ///
532  /// @param value
533  /// Value to assign
534  void SetNuc_acc(const TNuc_acc& value);
535  void SetNuc_acc(TNuc_acc&& value);
536 
537  /// Assign a value to Nuc_acc data member.
538  ///
539  /// @return
540  /// Reference to the data value.
541  TNuc_acc& SetNuc_acc(void);
542 
543  /// Check if a value has been assigned to Gene_links data member.
544  ///
545  /// Data member Gene_links is optional;
546  /// its type is defined as 'typedef list< CRef< CHG_Link > > TGene_links'
547  /// @return
548  /// - true, if a value has been assigned.
549  /// - false, otherwise.
550  bool IsSetGene_links(void) const;
551 
552  /// Check if it is safe to call GetGene_links method.
553  ///
554  /// @return
555  /// - true, if the data member is getatable.
556  /// - false, otherwise.
557  bool CanGetGene_links(void) const;
558 
559  /// Reset Gene_links data member.
560  void ResetGene_links(void);
561 
562  /// Get the Gene_links member data.
563  ///
564  /// @return
565  /// Reference to the member data.
566  const TGene_links& GetGene_links(void) const;
567 
568  /// Assign a value to Gene_links data member.
569  ///
570  /// @return
571  /// Reference to the data value.
572  TGene_links& SetGene_links(void);
573 
574  /// Check if a value has been assigned to Prot_links data member.
575  ///
576  /// Data member Prot_links is optional;
577  /// its type is defined as 'typedef list< CRef< CHG_Link > > TProt_links'
578  /// @return
579  /// - true, if a value has been assigned.
580  /// - false, otherwise.
581  bool IsSetProt_links(void) const;
582 
583  /// Check if it is safe to call GetProt_links method.
584  ///
585  /// @return
586  /// - true, if the data member is getatable.
587  /// - false, otherwise.
588  bool CanGetProt_links(void) const;
589 
590  /// Reset Prot_links data member.
591  void ResetProt_links(void);
592 
593  /// Get the Prot_links member data.
594  ///
595  /// @return
596  /// Reference to the member data.
597  const TProt_links& GetProt_links(void) const;
598 
599  /// Assign a value to Prot_links data member.
600  ///
601  /// @return
602  /// Reference to the data value.
603  TProt_links& SetProt_links(void);
604 
605  /// Check if a value has been assigned to Domains data member.
606  ///
607  /// Data member Domains is optional;
608  /// its type is defined as 'typedef list< CRef< CHG_Domain > > TDomains'
609  /// @return
610  /// - true, if a value has been assigned.
611  /// - false, otherwise.
612  bool IsSetDomains(void) const;
613 
614  /// Check if it is safe to call GetDomains method.
615  ///
616  /// @return
617  /// - true, if the data member is getatable.
618  /// - false, otherwise.
619  bool CanGetDomains(void) const;
620 
621  /// Reset Domains data member.
622  void ResetDomains(void);
623 
624  /// Get the Domains member data.
625  ///
626  /// @return
627  /// Reference to the member data.
628  const TDomains& GetDomains(void) const;
629 
630  /// Assign a value to Domains data member.
631  ///
632  /// @return
633  /// Reference to the data value.
634  TDomains& SetDomains(void);
635 
636  /// Check if a value has been assigned to Chr data member.
637  ///
638  /// Data member Chr is optional;
639  /// its type is defined as 'typedef string TChr'
640  /// @return
641  /// - true, if a value has been assigned.
642  /// - false, otherwise.
643  bool IsSetChr(void) const;
644 
645  /// Check if it is safe to call GetChr method.
646  ///
647  /// @return
648  /// - true, if the data member is getatable.
649  /// - false, otherwise.
650  bool CanGetChr(void) const;
651 
652  /// Reset Chr data member.
653  void ResetChr(void);
654 
655  /// Get the Chr member data.
656  ///
657  /// @return
658  /// Reference to the member data.
659  const TChr& GetChr(void) const;
660 
661  /// Assign a value to Chr data member.
662  ///
663  /// @param value
664  /// Value to assign
665  void SetChr(const TChr& value);
666  void SetChr(TChr&& value);
667 
668  /// Assign a value to Chr data member.
669  ///
670  /// @return
671  /// Reference to the data value.
672  TChr& SetChr(void);
673 
674  /// location on the genome
675  /// Check if a value has been assigned to Location data member.
676  ///
677  /// Data member Location is optional;
678  /// its type is defined as 'typedef CSeq_loc TLocation'
679  /// @return
680  /// - true, if a value has been assigned.
681  /// - false, otherwise.
682  bool IsSetLocation(void) const;
683 
684  /// Check if it is safe to call GetLocation method.
685  ///
686  /// @return
687  /// - true, if the data member is getatable.
688  /// - false, otherwise.
689  bool CanGetLocation(void) const;
690 
691  /// Reset Location data member.
692  void ResetLocation(void);
693 
694  /// Get the Location member data.
695  ///
696  /// @return
697  /// Reference to the member data.
698  const TLocation& GetLocation(void) const;
699 
700  /// Assign a value to Location data member.
701  ///
702  /// @param value
703  /// Reference to value.
704  void SetLocation(TLocation& value);
705 
706  /// Assign a value to Location data member.
707  ///
708  /// @return
709  /// Reference to the data value.
710  TLocation& SetLocation(void);
711 
712  /// Check if a value has been assigned to Locus_tag data member.
713  ///
714  /// Data member Locus_tag is optional;
715  /// its type is defined as 'typedef string TLocus_tag'
716  /// @return
717  /// - true, if a value has been assigned.
718  /// - false, otherwise.
719  bool IsSetLocus_tag(void) const;
720 
721  /// Check if it is safe to call GetLocus_tag method.
722  ///
723  /// @return
724  /// - true, if the data member is getatable.
725  /// - false, otherwise.
726  bool CanGetLocus_tag(void) const;
727 
728  /// Reset Locus_tag data member.
729  void ResetLocus_tag(void);
730 
731  /// Get the Locus_tag member data.
732  ///
733  /// @return
734  /// Reference to the member data.
735  const TLocus_tag& GetLocus_tag(void) const;
736 
737  /// Assign a value to Locus_tag data member.
738  ///
739  /// @param value
740  /// Value to assign
741  void SetLocus_tag(const TLocus_tag& value);
742  void SetLocus_tag(TLocus_tag&& value);
743 
744  /// Assign a value to Locus_tag data member.
745  ///
746  /// @return
747  /// Reference to the data value.
748  TLocus_tag& SetLocus_tag(void);
749 
750  /// Reset the whole object
751  virtual void Reset(void);
752 
753 
754 private:
755  // Prohibit copy constructor and assignment operator
758 
759  // data
761  int m_Geneid;
763  string m_Symbol;
764  list< string > m_Aliases;
765  string m_Title;
766  int m_Taxid;
768  string m_Prot_acc;
770  int m_Nuc_gi;
771  string m_Nuc_acc;
772  list< CRef< CHG_Link > > m_Gene_links;
773  list< CRef< CHG_Link > > m_Prot_links;
774  list< CRef< CHG_Domain > > m_Domains;
775  string m_Chr;
777  string m_Locus_tag;
778 };
779 
780 /* @} */
781 
782 
783 
784 
785 
786 ///////////////////////////////////////////////////////////
787 ///////////////////// inline methods //////////////////////
788 ///////////////////////////////////////////////////////////
789 inline
791 {
792  return ((m_set_State[0] & 0x3) != 0);
793 }
794 
795 inline
797 {
798  return IsSetGeneid();
799 }
800 
801 inline
803 {
804  m_Geneid = 0;
805  m_set_State[0] &= ~0x3;
806 }
807 
808 inline
810 {
811  if (!CanGetGeneid()) {
812  ThrowUnassigned(0);
813  }
814  return m_Geneid;
815 }
816 
817 inline
819 {
820  m_Geneid = value;
821  m_set_State[0] |= 0x3;
822 }
823 
824 inline
826 {
827 #ifdef _DEBUG
828  if (!IsSetGeneid()) {
829  memset(&m_Geneid,UnassignedByte(),sizeof(m_Geneid));
830  }
831 #endif
832  m_set_State[0] |= 0x1;
833  return m_Geneid;
834 }
835 
836 inline
838 {
839  return ((m_set_State[0] & 0xc) != 0);
840 }
841 
842 inline
844 {
845  return IsSetOtherid();
846 }
847 
848 inline
850 {
851  m_Otherid = 0;
852  m_set_State[0] &= ~0xc;
853 }
854 
855 inline
857 {
858  if (!CanGetOtherid()) {
859  ThrowUnassigned(1);
860  }
861  return m_Otherid;
862 }
863 
864 inline
866 {
867  m_Otherid = value;
868  m_set_State[0] |= 0xc;
869 }
870 
871 inline
873 {
874 #ifdef _DEBUG
875  if (!IsSetOtherid()) {
876  memset(&m_Otherid,UnassignedByte(),sizeof(m_Otherid));
877  }
878 #endif
879  m_set_State[0] |= 0x4;
880  return m_Otherid;
881 }
882 
883 inline
885 {
886  return ((m_set_State[0] & 0x30) != 0);
887 }
888 
889 inline
891 {
892  return IsSetSymbol();
893 }
894 
895 inline
897 {
898  if (!CanGetSymbol()) {
899  ThrowUnassigned(2);
900  }
901  return m_Symbol;
902 }
903 
904 inline
906 {
907  m_Symbol = value;
908  m_set_State[0] |= 0x30;
909 }
910 
911 inline
913 {
914  m_Symbol = std::forward<CHG_Gene_Base::TSymbol>(value);
915  m_set_State[0] |= 0x30;
916 }
917 
918 inline
920 {
921 #ifdef _DEBUG
922  if (!IsSetSymbol()) {
924  }
925 #endif
926  m_set_State[0] |= 0x10;
927  return m_Symbol;
928 }
929 
930 inline
932 {
933  return ((m_set_State[0] & 0xc0) != 0);
934 }
935 
936 inline
938 {
939  return true;
940 }
941 
942 inline
944 {
945  return m_Aliases;
946 }
947 
948 inline
950 {
951  m_set_State[0] |= 0x40;
952  return m_Aliases;
953 }
954 
955 inline
957 {
958  return ((m_set_State[0] & 0x300) != 0);
959 }
960 
961 inline
963 {
964  return IsSetTitle();
965 }
966 
967 inline
969 {
970  if (!CanGetTitle()) {
971  ThrowUnassigned(4);
972  }
973  return m_Title;
974 }
975 
976 inline
978 {
979  m_Title = value;
980  m_set_State[0] |= 0x300;
981 }
982 
983 inline
985 {
986  m_Title = std::forward<CHG_Gene_Base::TTitle>(value);
987  m_set_State[0] |= 0x300;
988 }
989 
990 inline
992 {
993 #ifdef _DEBUG
994  if (!IsSetTitle()) {
996  }
997 #endif
998  m_set_State[0] |= 0x100;
999  return m_Title;
1000 }
1001 
1002 inline
1004 {
1005  return ((m_set_State[0] & 0xc00) != 0);
1006 }
1007 
1008 inline
1010 {
1011  return IsSetTaxid();
1012 }
1013 
1014 inline
1016 {
1017  m_Taxid = 0;
1018  m_set_State[0] &= ~0xc00;
1019 }
1020 
1021 inline
1023 {
1024  if (!CanGetTaxid()) {
1025  ThrowUnassigned(5);
1026  }
1027  return m_Taxid;
1028 }
1029 
1030 inline
1032 {
1033  m_Taxid = value;
1034  m_set_State[0] |= 0xc00;
1035 }
1036 
1037 inline
1039 {
1040 #ifdef _DEBUG
1041  if (!IsSetTaxid()) {
1042  memset(&m_Taxid,UnassignedByte(),sizeof(m_Taxid));
1043  }
1044 #endif
1045  m_set_State[0] |= 0x400;
1046  return m_Taxid;
1047 }
1048 
1049 inline
1051 {
1052  return ((m_set_State[0] & 0x3000) != 0);
1053 }
1054 
1055 inline
1057 {
1058  return IsSetProt_gi();
1059 }
1060 
1061 inline
1063 {
1064  m_Prot_gi = 0;
1065  m_set_State[0] &= ~0x3000;
1066 }
1067 
1068 inline
1070 {
1071  if (!CanGetProt_gi()) {
1072  ThrowUnassigned(6);
1073  }
1074  return m_Prot_gi;
1075 }
1076 
1077 inline
1079 {
1080  m_Prot_gi = value;
1081  m_set_State[0] |= 0x3000;
1082 }
1083 
1084 inline
1086 {
1087 #ifdef _DEBUG
1088  if (!IsSetProt_gi()) {
1089  memset(&m_Prot_gi,UnassignedByte(),sizeof(m_Prot_gi));
1090  }
1091 #endif
1092  m_set_State[0] |= 0x1000;
1093  return m_Prot_gi;
1094 }
1095 
1096 inline
1098 {
1099  return ((m_set_State[0] & 0xc000) != 0);
1100 }
1101 
1102 inline
1104 {
1105  return IsSetProt_acc();
1106 }
1107 
1108 inline
1110 {
1111  if (!CanGetProt_acc()) {
1112  ThrowUnassigned(7);
1113  }
1114  return m_Prot_acc;
1115 }
1116 
1117 inline
1119 {
1120  m_Prot_acc = value;
1121  m_set_State[0] |= 0xc000;
1122 }
1123 
1124 inline
1126 {
1127  m_Prot_acc = std::forward<CHG_Gene_Base::TProt_acc>(value);
1128  m_set_State[0] |= 0xc000;
1129 }
1130 
1131 inline
1133 {
1134 #ifdef _DEBUG
1135  if (!IsSetProt_acc()) {
1137  }
1138 #endif
1139  m_set_State[0] |= 0x4000;
1140  return m_Prot_acc;
1141 }
1142 
1143 inline
1145 {
1146  return ((m_set_State[0] & 0x30000) != 0);
1147 }
1148 
1149 inline
1151 {
1152  return IsSetProt_len();
1153 }
1154 
1155 inline
1157 {
1158  m_Prot_len = 0;
1159  m_set_State[0] &= ~0x30000;
1160 }
1161 
1162 inline
1164 {
1165  if (!CanGetProt_len()) {
1166  ThrowUnassigned(8);
1167  }
1168  return m_Prot_len;
1169 }
1170 
1171 inline
1173 {
1174  m_Prot_len = value;
1175  m_set_State[0] |= 0x30000;
1176 }
1177 
1178 inline
1180 {
1181 #ifdef _DEBUG
1182  if (!IsSetProt_len()) {
1183  memset(&m_Prot_len,UnassignedByte(),sizeof(m_Prot_len));
1184  }
1185 #endif
1186  m_set_State[0] |= 0x10000;
1187  return m_Prot_len;
1188 }
1189 
1190 inline
1192 {
1193  return ((m_set_State[0] & 0xc0000) != 0);
1194 }
1195 
1196 inline
1198 {
1199  return IsSetNuc_gi();
1200 }
1201 
1202 inline
1204 {
1205  m_Nuc_gi = 0;
1206  m_set_State[0] &= ~0xc0000;
1207 }
1208 
1209 inline
1211 {
1212  if (!CanGetNuc_gi()) {
1213  ThrowUnassigned(9);
1214  }
1215  return m_Nuc_gi;
1216 }
1217 
1218 inline
1220 {
1221  m_Nuc_gi = value;
1222  m_set_State[0] |= 0xc0000;
1223 }
1224 
1225 inline
1227 {
1228 #ifdef _DEBUG
1229  if (!IsSetNuc_gi()) {
1230  memset(&m_Nuc_gi,UnassignedByte(),sizeof(m_Nuc_gi));
1231  }
1232 #endif
1233  m_set_State[0] |= 0x40000;
1234  return m_Nuc_gi;
1235 }
1236 
1237 inline
1239 {
1240  return ((m_set_State[0] & 0x300000) != 0);
1241 }
1242 
1243 inline
1245 {
1246  return IsSetNuc_acc();
1247 }
1248 
1249 inline
1251 {
1252  if (!CanGetNuc_acc()) {
1253  ThrowUnassigned(10);
1254  }
1255  return m_Nuc_acc;
1256 }
1257 
1258 inline
1260 {
1261  m_Nuc_acc = value;
1262  m_set_State[0] |= 0x300000;
1263 }
1264 
1265 inline
1267 {
1268  m_Nuc_acc = std::forward<CHG_Gene_Base::TNuc_acc>(value);
1269  m_set_State[0] |= 0x300000;
1270 }
1271 
1272 inline
1274 {
1275 #ifdef _DEBUG
1276  if (!IsSetNuc_acc()) {
1278  }
1279 #endif
1280  m_set_State[0] |= 0x100000;
1281  return m_Nuc_acc;
1282 }
1283 
1284 inline
1286 {
1287  return ((m_set_State[0] & 0xc00000) != 0);
1288 }
1289 
1290 inline
1292 {
1293  return true;
1294 }
1295 
1296 inline
1298 {
1299  return m_Gene_links;
1300 }
1301 
1302 inline
1304 {
1305  m_set_State[0] |= 0x400000;
1306  return m_Gene_links;
1307 }
1308 
1309 inline
1311 {
1312  return ((m_set_State[0] & 0x3000000) != 0);
1313 }
1314 
1315 inline
1317 {
1318  return true;
1319 }
1320 
1321 inline
1323 {
1324  return m_Prot_links;
1325 }
1326 
1327 inline
1329 {
1330  m_set_State[0] |= 0x1000000;
1331  return m_Prot_links;
1332 }
1333 
1334 inline
1336 {
1337  return ((m_set_State[0] & 0xc000000) != 0);
1338 }
1339 
1340 inline
1342 {
1343  return true;
1344 }
1345 
1346 inline
1348 {
1349  return m_Domains;
1350 }
1351 
1352 inline
1354 {
1355  m_set_State[0] |= 0x4000000;
1356  return m_Domains;
1357 }
1358 
1359 inline
1360 bool CHG_Gene_Base::IsSetChr(void) const
1361 {
1362  return ((m_set_State[0] & 0x30000000) != 0);
1363 }
1364 
1365 inline
1367 {
1368  return IsSetChr();
1369 }
1370 
1371 inline
1373 {
1374  if (!CanGetChr()) {
1375  ThrowUnassigned(14);
1376  }
1377  return m_Chr;
1378 }
1379 
1380 inline
1382 {
1383  m_Chr = value;
1384  m_set_State[0] |= 0x30000000;
1385 }
1386 
1387 inline
1389 {
1390  m_Chr = std::forward<CHG_Gene_Base::TChr>(value);
1391  m_set_State[0] |= 0x30000000;
1392 }
1393 
1394 inline
1396 {
1397 #ifdef _DEBUG
1398  if (!IsSetChr()) {
1399  m_Chr = UnassignedString();
1400  }
1401 #endif
1402  m_set_State[0] |= 0x10000000;
1403  return m_Chr;
1404 }
1405 
1406 inline
1408 {
1409  return m_Location.NotEmpty();
1410 }
1411 
1412 inline
1414 {
1415  return IsSetLocation();
1416 }
1417 
1418 inline
1420 {
1421  if (!CanGetLocation()) {
1422  ThrowUnassigned(15);
1423  }
1424  return (*m_Location);
1425 }
1426 
1427 inline
1429 {
1430  return ((m_set_State[1] & 0x3) != 0);
1431 }
1432 
1433 inline
1435 {
1436  return IsSetLocus_tag();
1437 }
1438 
1439 inline
1441 {
1442  if (!CanGetLocus_tag()) {
1443  ThrowUnassigned(16);
1444  }
1445  return m_Locus_tag;
1446 }
1447 
1448 inline
1450 {
1451  m_Locus_tag = value;
1452  m_set_State[1] |= 0x3;
1453 }
1454 
1455 inline
1457 {
1458  m_Locus_tag = std::forward<CHG_Gene_Base::TLocus_tag>(value);
1459  m_set_State[1] |= 0x3;
1460 }
1461 
1462 inline
1464 {
1465 #ifdef _DEBUG
1466  if (!IsSetLocus_tag()) {
1468  }
1469 #endif
1470  m_set_State[1] |= 0x1;
1471  return m_Locus_tag;
1472 }
1473 
1474 ///////////////////////////////////////////////////////////
1475 ////////////////// end of inline methods //////////////////
1476 ///////////////////////////////////////////////////////////
1477 
1478 
1479 
1480 
1481 
1482 END_objects_SCOPE // namespace ncbi::objects::
1483 
1485 
1486 
1487 #endif // OBJECTS_HOMOLOGENE_HG_GENE_BASE_HPP
CHG_Domain –.
Definition: HG_Domain.hpp:66
CHG_Gene_Base –.
Definition: HG_Gene_.hpp:80
CRef –.
Definition: ncbiobj.hpp:618
Base class for all serializable objects.
Definition: serialbase.hpp:150
char value[7]
Definition: config.c:431
static char UnassignedByte(void)
Definition: serialbase.hpp:181
void ThrowUnassigned(TMemberIndex index) const
static string UnassignedString(void)
Definition: serialbase.hpp:175
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
bool CanGetLocus_tag(void) const
Check if it is safe to call GetLocus_tag method.
Definition: HG_Gene_.hpp:1434
CRef< TLocation > m_Location
Definition: HG_Gene_.hpp:776
bool IsSetTaxid(void) const
taxid of gene node Check if a value has been assigned to Taxid data member.
Definition: HG_Gene_.hpp:1003
const TSymbol & GetSymbol(void) const
Get the Symbol member data.
Definition: HG_Gene_.hpp:896
TTitle & SetTitle(void)
Assign a value to Title data member.
Definition: HG_Gene_.hpp:991
TProt_acc & SetProt_acc(void)
Assign a value to Prot_acc data member.
Definition: HG_Gene_.hpp:1132
string TSymbol
Definition: HG_Gene_.hpp:94
bool IsSetSymbol(void) const
Check if a value has been assigned to Symbol data member.
Definition: HG_Gene_.hpp:884
TLocation & SetLocation(void)
Assign a value to Location data member.
Definition: HG_Gene_.cpp:117
bool IsSetProt_links(void) const
Check if a value has been assigned to Prot_links data member.
Definition: HG_Gene_.hpp:1310
void ResetNuc_gi(void)
Reset Nuc_gi data member.
Definition: HG_Gene_.hpp:1203
TChr & SetChr(void)
Assign a value to Chr data member.
Definition: HG_Gene_.hpp:1395
void ResetChr(void)
Reset Chr data member.
Definition: HG_Gene_.cpp:101
TNuc_acc & SetNuc_acc(void)
Assign a value to Nuc_acc data member.
Definition: HG_Gene_.hpp:1273
list< CRef< CHG_Domain > > m_Domains
Definition: HG_Gene_.hpp:774
list< string > TAliases
Definition: HG_Gene_.hpp:95
void ResetProt_links(void)
Reset Prot_links data member.
Definition: HG_Gene_.cpp:89
const TLocus_tag & GetLocus_tag(void) const
Get the Locus_tag member data.
Definition: HG_Gene_.hpp:1440
bool IsSetLocation(void) const
location on the genome Check if a value has been assigned to Location data member.
Definition: HG_Gene_.hpp:1407
string m_Locus_tag
Definition: HG_Gene_.hpp:777
bool IsSetTitle(void) const
Check if a value has been assigned to Title data member.
Definition: HG_Gene_.hpp:956
void ResetSymbol(void)
Reset Symbol data member.
Definition: HG_Gene_.cpp:53
bool CanGetNuc_acc(void) const
Check if it is safe to call GetNuc_acc method.
Definition: HG_Gene_.hpp:1244
bool CanGetProt_len(void) const
Check if it is safe to call GetProt_len method.
Definition: HG_Gene_.hpp:1150
bool CanGetProt_gi(void) const
Check if it is safe to call GetProt_gi method.
Definition: HG_Gene_.hpp:1056
string TNuc_acc
Definition: HG_Gene_.hpp:102
TSymbol & SetSymbol(void)
Assign a value to Symbol data member.
Definition: HG_Gene_.hpp:919
virtual ~CHG_Gene_Base(void)
Definition: HG_Gene_.cpp:185
const TLocation & GetLocation(void) const
Get the Location member data.
Definition: HG_Gene_.hpp:1419
list< string > m_Aliases
Definition: HG_Gene_.hpp:764
const TChr & GetChr(void) const
Get the Chr member data.
Definition: HG_Gene_.hpp:1372
list< CRef< CHG_Domain > > TDomains
Definition: HG_Gene_.hpp:105
bool CanGetGeneid(void) const
Check if it is safe to call GetGeneid method.
Definition: HG_Gene_.hpp:796
TOtherid GetOtherid(void) const
Get the Otherid member data.
Definition: HG_Gene_.hpp:856
TNuc_gi & SetNuc_gi(void)
Assign a value to Nuc_gi data member.
Definition: HG_Gene_.hpp:1226
string TLocus_tag
Definition: HG_Gene_.hpp:108
CHG_Gene_Base(void)
Definition: HG_Gene_.cpp:178
CHG_Gene_Base & operator=(const CHG_Gene_Base &)
TGene_links & SetGene_links(void)
Assign a value to Gene_links data member.
Definition: HG_Gene_.hpp:1303
string m_Nuc_acc
Definition: HG_Gene_.hpp:771
bool IsSetLocus_tag(void) const
Check if a value has been assigned to Locus_tag data member.
Definition: HG_Gene_.hpp:1428
CHG_Gene_Base(const CHG_Gene_Base &)
void ResetLocus_tag(void)
Reset Locus_tag data member.
Definition: HG_Gene_.cpp:124
const TNuc_acc & GetNuc_acc(void) const
Get the Nuc_acc member data.
Definition: HG_Gene_.hpp:1250
TDomains & SetDomains(void)
Assign a value to Domains data member.
Definition: HG_Gene_.hpp:1353
bool IsSetProt_len(void) const
Check if a value has been assigned to Prot_len data member.
Definition: HG_Gene_.hpp:1144
void ResetProt_gi(void)
Reset Prot_gi data member.
Definition: HG_Gene_.hpp:1062
list< CRef< CHG_Link > > TProt_links
Definition: HG_Gene_.hpp:104
bool CanGetDomains(void) const
Check if it is safe to call GetDomains method.
Definition: HG_Gene_.hpp:1341
void ResetLocation(void)
Reset Location data member.
Definition: HG_Gene_.cpp:107
void ResetNuc_acc(void)
Reset Nuc_acc data member.
Definition: HG_Gene_.cpp:77
bool CanGetGene_links(void) const
Check if it is safe to call GetGene_links method.
Definition: HG_Gene_.hpp:1291
bool IsSetGene_links(void) const
Check if a value has been assigned to Gene_links data member.
Definition: HG_Gene_.hpp:1285
bool CanGetTitle(void) const
Check if it is safe to call GetTitle method.
Definition: HG_Gene_.hpp:962
string TProt_acc
Definition: HG_Gene_.hpp:99
bool CanGetProt_links(void) const
Check if it is safe to call GetProt_links method.
Definition: HG_Gene_.hpp:1316
bool IsSetDomains(void) const
Check if a value has been assigned to Domains data member.
Definition: HG_Gene_.hpp:1335
bool IsSetNuc_acc(void) const
Check if a value has been assigned to Nuc_acc data member.
Definition: HG_Gene_.hpp:1238
string m_Prot_acc
Definition: HG_Gene_.hpp:768
list< CRef< CHG_Link > > TGene_links
Definition: HG_Gene_.hpp:103
bool CanGetChr(void) const
Check if it is safe to call GetChr method.
Definition: HG_Gene_.hpp:1366
bool IsSetChr(void) const
Check if a value has been assigned to Chr data member.
Definition: HG_Gene_.hpp:1360
TLocus_tag & SetLocus_tag(void)
Assign a value to Locus_tag data member.
Definition: HG_Gene_.hpp:1463
bool IsSetOtherid(void) const
internal use only!!!!! Check if a value has been assigned to Otherid data member.
Definition: HG_Gene_.hpp:837
bool IsSetGeneid(void) const
Check if a value has been assigned to Geneid data member.
Definition: HG_Gene_.hpp:790
void ResetOtherid(void)
Reset Otherid data member.
Definition: HG_Gene_.hpp:849
bool IsSetProt_gi(void) const
Check if a value has been assigned to Prot_gi data member.
Definition: HG_Gene_.hpp:1050
string m_Title
Definition: HG_Gene_.hpp:765
TOtherid & SetOtherid(void)
Assign a value to Otherid data member.
Definition: HG_Gene_.hpp:872
TTaxid & SetTaxid(void)
Assign a value to Taxid data member.
Definition: HG_Gene_.hpp:1038
Tparent::CMemberIndex< E_memberIndex, 18 > TmemberIndex
Definition: HG_Gene_.hpp:131
bool CanGetSymbol(void) const
Check if it is safe to call GetSymbol method.
Definition: HG_Gene_.hpp:890
TProt_gi & SetProt_gi(void)
Assign a value to Prot_gi data member.
Definition: HG_Gene_.hpp:1085
const TTitle & GetTitle(void) const
Get the Title member data.
Definition: HG_Gene_.hpp:968
bool CanGetLocation(void) const
Check if it is safe to call GetLocation method.
Definition: HG_Gene_.hpp:1413
void ResetAliases(void)
Reset Aliases data member.
Definition: HG_Gene_.cpp:59
bool IsSetProt_acc(void) const
Check if a value has been assigned to Prot_acc data member.
Definition: HG_Gene_.hpp:1097
TGeneid GetGeneid(void) const
Get the Geneid member data.
Definition: HG_Gene_.hpp:809
void ResetDomains(void)
Reset Domains data member.
Definition: HG_Gene_.cpp:95
TGeneid & SetGeneid(void)
Assign a value to Geneid data member.
Definition: HG_Gene_.hpp:825
DECLARE_INTERNAL_TYPE_INFO()
bool CanGetAliases(void) const
Check if it is safe to call GetAliases method.
Definition: HG_Gene_.hpp:937
list< CRef< CHG_Link > > m_Gene_links
Definition: HG_Gene_.hpp:772
bool IsSetAliases(void) const
Check if a value has been assigned to Aliases data member.
Definition: HG_Gene_.hpp:931
TNuc_gi GetNuc_gi(void) const
Get the Nuc_gi member data.
Definition: HG_Gene_.hpp:1210
bool CanGetNuc_gi(void) const
Check if it is safe to call GetNuc_gi method.
Definition: HG_Gene_.hpp:1197
void ResetProt_acc(void)
Reset Prot_acc data member.
Definition: HG_Gene_.cpp:71
list< CRef< CHG_Link > > m_Prot_links
Definition: HG_Gene_.hpp:773
TTaxid GetTaxid(void) const
Get the Taxid member data.
Definition: HG_Gene_.hpp:1022
const TDomains & GetDomains(void) const
Get the Domains member data.
Definition: HG_Gene_.hpp:1347
void ResetGeneid(void)
Reset Geneid data member.
Definition: HG_Gene_.hpp:802
string m_Chr
Definition: HG_Gene_.hpp:775
void ResetTaxid(void)
Reset Taxid data member.
Definition: HG_Gene_.hpp:1015
bool IsSetNuc_gi(void) const
Check if a value has been assigned to Nuc_gi data member.
Definition: HG_Gene_.hpp:1191
bool CanGetProt_acc(void) const
Check if it is safe to call GetProt_acc method.
Definition: HG_Gene_.hpp:1103
TProt_gi GetProt_gi(void) const
Get the Prot_gi member data.
Definition: HG_Gene_.hpp:1069
TProt_links & SetProt_links(void)
Assign a value to Prot_links data member.
Definition: HG_Gene_.hpp:1328
void ResetTitle(void)
Reset Title data member.
Definition: HG_Gene_.cpp:65
TAliases & SetAliases(void)
Assign a value to Aliases data member.
Definition: HG_Gene_.hpp:949
void ResetGene_links(void)
Reset Gene_links data member.
Definition: HG_Gene_.cpp:83
TProt_len GetProt_len(void) const
Get the Prot_len member data.
Definition: HG_Gene_.hpp:1163
CSerialObject Tparent
Definition: HG_Gene_.hpp:81
bool CanGetTaxid(void) const
Check if it is safe to call GetTaxid method.
Definition: HG_Gene_.hpp:1009
Uint4 m_set_State[2]
Definition: HG_Gene_.hpp:760
const TProt_acc & GetProt_acc(void) const
Get the Prot_acc member data.
Definition: HG_Gene_.hpp:1109
const TAliases & GetAliases(void) const
Get the Aliases member data.
Definition: HG_Gene_.hpp:943
string TTitle
Definition: HG_Gene_.hpp:96
void ResetProt_len(void)
Reset Prot_len data member.
Definition: HG_Gene_.hpp:1156
TProt_len & SetProt_len(void)
Assign a value to Prot_len data member.
Definition: HG_Gene_.hpp:1179
virtual void Reset(void)
Reset the whole object.
Definition: HG_Gene_.cpp:130
CSeq_loc TLocation
Definition: HG_Gene_.hpp:107
const TProt_links & GetProt_links(void) const
Get the Prot_links member data.
Definition: HG_Gene_.hpp:1322
const TGene_links & GetGene_links(void) const
Get the Gene_links member data.
Definition: HG_Gene_.hpp:1297
bool CanGetOtherid(void) const
Check if it is safe to call GetOtherid method.
Definition: HG_Gene_.hpp:843
string m_Symbol
Definition: HG_Gene_.hpp:763
Modified on Mon Dec 11 02:39:58 2023 by modify_doxy.py rev. 669887