NCBI C++ ToolKit
Seq_id_.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 Seq_id_.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/seqloc/seqloc.asn">seqloc.asn</a>
34 /// and additional tune-up parameters:
35 /// <a href="/IEB/ToolBox/CPP_DOC/lxr/source/src/objects/seqloc/seqloc.def">seqloc.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_SEQLOC_SEQ_ID_BASE_HPP
42 #define OBJECTS_SEQLOC_SEQ_ID_BASE_HPP
43 
44 // standard includes
45 #include <serial/serialbase.hpp>
47 
48 #ifndef BEGIN_objects_SCOPE
49 # define BEGIN_objects_SCOPE BEGIN_SCOPE(objects)
50 # define END_objects_SCOPE END_SCOPE(objects)
51 #endif
52 BEGIN_objects_SCOPE // namespace ncbi::objects::
53 
54 
55 // forward declarations
56 class CDbtag;
57 class CGiimport_id;
58 class CObject_id;
59 class CPDB_seq_id;
60 class CPatent_seq_id;
61 class CTextseq_id;
62 
63 
64 // generated classes
65 
66 
67 /** @addtogroup dataspec_NCBI_Seqloc
68  *
69  * @{
70  */
71 
72 /////////////////////////////////////////////////////////////////////////////
73 ///*** Sequence identifiers ********************************
74 ///*
75 ///
76 /// CSeq_id_Base --
77 ///
78 
80 {
82 public:
83  // constructor
84  CSeq_id_Base(void);
85  // destructor
86  virtual ~CSeq_id_Base(void);
87 
88  // type info
90 
91 
92  /// Choice variants.
93  enum E_Choice {
94  e_not_set = 0, ///< No variant selected
95  e_Local, ///< local use
96  e_Gibbsq, ///< Geninfo backbone seqid
97  e_Gibbmt, ///< Geninfo backbone moltype
98  e_Giim, ///< Geninfo import id
104  e_Other, ///< for historical reasons, 'other' = 'refseq'
105  e_General, ///< for other databases
106  e_Gi, ///< GenInfo Integrated Database
107  e_Ddbj, ///< DDBJ
108  e_Prf, ///< PRF SEQDB
109  e_Pdb, ///< PDB sequence
110  e_Tpg, ///< Third Party Annot/Seq Genbank
111  e_Tpe, ///< Third Party Annot/Seq EMBL
112  e_Tpd, ///< Third Party Annot/Seq DDBJ
113  e_Gpipe, ///< Internal NCBI genome pipeline processing ID
114  e_Named_annot_track ///< Internal named annotation tracking ID
115  };
116  /// Maximum+1 value of the choice variant enumerator.
118  e_MaxChoice = 21 ///< == e_Named_annot_track+1
119  };
120 
121  /// Reset the whole object
122  virtual void Reset(void);
123 
124  /// Reset the selection (set it to e_not_set).
125  virtual void ResetSelection(void);
126 
127  /// Which variant is currently selected.
128  ///
129  /// @return
130  /// Choice state enumerator.
131  E_Choice Which(void) const;
132 
133  /// Verify selection, throw exception if it differs from the expected.
134  ///
135  /// @param index
136  /// Expected selection.
137  void CheckSelected(E_Choice index) const;
138 
139  /// Throw 'InvalidSelection' exception.
140  ///
141  /// @param index
142  /// Expected selection.
143  NCBI_NORETURN void ThrowInvalidSelection(E_Choice index) const;
144 
145  /// Retrieve selection name (for diagnostic purposes).
146  ///
147  /// @param index
148  /// One of possible selection states.
149  /// @return
150  /// Name string.
151  static string SelectionName(E_Choice index);
152 
153  /// Select the requested variant if needed.
154  ///
155  /// @param index
156  /// New selection state.
157  /// @param reset
158  /// Flag that defines the resetting of the variant data. The data will
159  /// be reset if either the current selection differs from the new one,
160  /// or the flag is set to eDoResetVariant.
162  /// Select the requested variant if needed,
163  /// allocating CObject variants from memory pool.
164  void Select(E_Choice index,
165  EResetVariant reset,
166  CObjectMemoryPool* pool);
167 
168  // types
170  typedef int TGibbsq;
171  typedef int TGibbmt;
175  typedef CTextseq_id TPir;
179  typedef CDbtag TGeneral;
182  typedef CTextseq_id TPrf;
183  typedef CPDB_seq_id TPdb;
184  typedef CTextseq_id TTpg;
185  typedef CTextseq_id TTpe;
186  typedef CTextseq_id TTpd;
189 
190  // getters
191  // setters
192 
193 
194  /// Check if variant Local is selected.
195  ///
196  /// Local type is defined as 'typedef CObject_id TLocal'.
197  /// @return
198  /// - true, if the variant is selected.
199  /// - false, otherwise.
200  bool IsLocal(void) const;
201 
202  /// Get the variant data.
203  ///
204  /// @return
205  /// Reference to the data.
206  const TLocal& GetLocal(void) const;
207 
208  /// Select the variant.
209  ///
210  /// @return
211  /// Reference to the variant data.
212  TLocal& SetLocal(void);
213  /// Select the variant and set its data.
214  ///
215  /// @param value
216  /// Reference to the data.
217  void SetLocal(TLocal& value);
218 
219 
220  /// Check if variant Gibbsq is selected.
221  ///
222  /// Gibbsq type is defined as 'typedef int TGibbsq'.
223  /// @return
224  /// - true, if the variant is selected.
225  /// - false, otherwise.
226  bool IsGibbsq(void) const;
227 
228  /// Get the variant data.
229  ///
230  /// @return
231  /// Copy of the variant data.
232  TGibbsq GetGibbsq(void) const;
233 
234  /// Select the variant.
235  ///
236  /// @return
237  /// Reference to the variant data.
238  TGibbsq& SetGibbsq(void);
239 
240  /// Select the variant and set its data.
241  ///
242  /// @param value
243  /// Variant data.
244  void SetGibbsq(TGibbsq value);
245 
246 
247  /// Check if variant Gibbmt is selected.
248  ///
249  /// Gibbmt type is defined as 'typedef int TGibbmt'.
250  /// @return
251  /// - true, if the variant is selected.
252  /// - false, otherwise.
253  bool IsGibbmt(void) const;
254 
255  /// Get the variant data.
256  ///
257  /// @return
258  /// Copy of the variant data.
259  TGibbmt GetGibbmt(void) const;
260 
261  /// Select the variant.
262  ///
263  /// @return
264  /// Reference to the variant data.
265  TGibbmt& SetGibbmt(void);
266 
267  /// Select the variant and set its data.
268  ///
269  /// @param value
270  /// Variant data.
271  void SetGibbmt(TGibbmt value);
272 
273 
274  /// Check if variant Giim is selected.
275  ///
276  /// Giim type is defined as 'typedef CGiimport_id TGiim'.
277  /// @return
278  /// - true, if the variant is selected.
279  /// - false, otherwise.
280  bool IsGiim(void) const;
281 
282  /// Get the variant data.
283  ///
284  /// @return
285  /// Reference to the data.
286  const TGiim& GetGiim(void) const;
287 
288  /// Select the variant.
289  ///
290  /// @return
291  /// Reference to the variant data.
292  TGiim& SetGiim(void);
293  /// Select the variant and set its data.
294  ///
295  /// @param value
296  /// Reference to the data.
297  void SetGiim(TGiim& value);
298 
299 
300  /// Check if variant Genbank is selected.
301  ///
302  /// Genbank type is defined as 'typedef CTextseq_id TGenbank'.
303  /// @return
304  /// - true, if the variant is selected.
305  /// - false, otherwise.
306  bool IsGenbank(void) const;
307 
308  /// Get the variant data.
309  ///
310  /// @return
311  /// Reference to the data.
312  const TGenbank& GetGenbank(void) const;
313 
314  /// Select the variant.
315  ///
316  /// @return
317  /// Reference to the variant data.
318  TGenbank& SetGenbank(void);
319  /// Select the variant and set its data.
320  ///
321  /// @param value
322  /// Reference to the data.
323  void SetGenbank(TGenbank& value);
324 
325 
326  /// Check if variant Embl is selected.
327  ///
328  /// Embl type is defined as 'typedef CTextseq_id TEmbl'.
329  /// @return
330  /// - true, if the variant is selected.
331  /// - false, otherwise.
332  bool IsEmbl(void) const;
333 
334  /// Get the variant data.
335  ///
336  /// @return
337  /// Reference to the data.
338  const TEmbl& GetEmbl(void) const;
339 
340  /// Select the variant.
341  ///
342  /// @return
343  /// Reference to the variant data.
344  TEmbl& SetEmbl(void);
345  /// Select the variant and set its data.
346  ///
347  /// @param value
348  /// Reference to the data.
349  void SetEmbl(TEmbl& value);
350 
351 
352  /// Check if variant Pir is selected.
353  ///
354  /// Pir type is defined as 'typedef CTextseq_id TPir'.
355  /// @return
356  /// - true, if the variant is selected.
357  /// - false, otherwise.
358  bool IsPir(void) const;
359 
360  /// Get the variant data.
361  ///
362  /// @return
363  /// Reference to the data.
364  const TPir& GetPir(void) const;
365 
366  /// Select the variant.
367  ///
368  /// @return
369  /// Reference to the variant data.
370  TPir& SetPir(void);
371  /// Select the variant and set its data.
372  ///
373  /// @param value
374  /// Reference to the data.
375  void SetPir(TPir& value);
376 
377 
378  /// Check if variant Swissprot is selected.
379  ///
380  /// Swissprot type is defined as 'typedef CTextseq_id TSwissprot'.
381  /// @return
382  /// - true, if the variant is selected.
383  /// - false, otherwise.
384  bool IsSwissprot(void) const;
385 
386  /// Get the variant data.
387  ///
388  /// @return
389  /// Reference to the data.
390  const TSwissprot& GetSwissprot(void) const;
391 
392  /// Select the variant.
393  ///
394  /// @return
395  /// Reference to the variant data.
396  TSwissprot& SetSwissprot(void);
397  /// Select the variant and set its data.
398  ///
399  /// @param value
400  /// Reference to the data.
401  void SetSwissprot(TSwissprot& value);
402 
403 
404  /// Check if variant Patent is selected.
405  ///
406  /// Patent type is defined as 'typedef CPatent_seq_id TPatent'.
407  /// @return
408  /// - true, if the variant is selected.
409  /// - false, otherwise.
410  bool IsPatent(void) const;
411 
412  /// Get the variant data.
413  ///
414  /// @return
415  /// Reference to the data.
416  const TPatent& GetPatent(void) const;
417 
418  /// Select the variant.
419  ///
420  /// @return
421  /// Reference to the variant data.
422  TPatent& SetPatent(void);
423  /// Select the variant and set its data.
424  ///
425  /// @param value
426  /// Reference to the data.
427  void SetPatent(TPatent& value);
428 
429 
430  /// Check if variant Other is selected.
431  ///
432  /// Other type is defined as 'typedef CTextseq_id TOther'.
433  /// @return
434  /// - true, if the variant is selected.
435  /// - false, otherwise.
436  bool IsOther(void) const;
437 
438  /// Get the variant data.
439  ///
440  /// @return
441  /// Reference to the data.
442  const TOther& GetOther(void) const;
443 
444  /// Select the variant.
445  ///
446  /// @return
447  /// Reference to the variant data.
448  TOther& SetOther(void);
449  /// Select the variant and set its data.
450  ///
451  /// @param value
452  /// Reference to the data.
453  void SetOther(TOther& value);
454 
455 
456  /// Check if variant General is selected.
457  ///
458  /// General type is defined as 'typedef CDbtag TGeneral'.
459  /// @return
460  /// - true, if the variant is selected.
461  /// - false, otherwise.
462  bool IsGeneral(void) const;
463 
464  /// Get the variant data.
465  ///
466  /// @return
467  /// Reference to the data.
468  const TGeneral& GetGeneral(void) const;
469 
470  /// Select the variant.
471  ///
472  /// @return
473  /// Reference to the variant data.
474  TGeneral& SetGeneral(void);
475  /// Select the variant and set its data.
476  ///
477  /// @param value
478  /// Reference to the data.
479  void SetGeneral(TGeneral& value);
480 
481 
482  /// Check if variant Gi is selected.
483  ///
484  /// Gi type is defined as 'typedef NCBI_NS_NCBI::TGi TGi'.
485  /// @return
486  /// - true, if the variant is selected.
487  /// - false, otherwise.
488  bool IsGi(void) const;
489 
490  /// Get the variant data.
491  ///
492  /// @return
493  /// Copy of the variant data.
494  TGi GetGi(void) const;
495 
496  /// Select the variant.
497  ///
498  /// @return
499  /// Reference to the variant data.
500  TGi& SetGi(void);
501 
502  /// Select the variant and set its data.
503  ///
504  /// @param value
505  /// Variant data.
506  void SetGi(TGi value);
507 
508 
509  /// Check if variant Ddbj is selected.
510  ///
511  /// Ddbj type is defined as 'typedef CTextseq_id TDdbj'.
512  /// @return
513  /// - true, if the variant is selected.
514  /// - false, otherwise.
515  bool IsDdbj(void) const;
516 
517  /// Get the variant data.
518  ///
519  /// @return
520  /// Reference to the data.
521  const TDdbj& GetDdbj(void) const;
522 
523  /// Select the variant.
524  ///
525  /// @return
526  /// Reference to the variant data.
527  TDdbj& SetDdbj(void);
528  /// Select the variant and set its data.
529  ///
530  /// @param value
531  /// Reference to the data.
532  void SetDdbj(TDdbj& value);
533 
534 
535  /// Check if variant Prf is selected.
536  ///
537  /// Prf type is defined as 'typedef CTextseq_id TPrf'.
538  /// @return
539  /// - true, if the variant is selected.
540  /// - false, otherwise.
541  bool IsPrf(void) const;
542 
543  /// Get the variant data.
544  ///
545  /// @return
546  /// Reference to the data.
547  const TPrf& GetPrf(void) const;
548 
549  /// Select the variant.
550  ///
551  /// @return
552  /// Reference to the variant data.
553  TPrf& SetPrf(void);
554  /// Select the variant and set its data.
555  ///
556  /// @param value
557  /// Reference to the data.
558  void SetPrf(TPrf& value);
559 
560 
561  /// Check if variant Pdb is selected.
562  ///
563  /// Pdb type is defined as 'typedef CPDB_seq_id TPdb'.
564  /// @return
565  /// - true, if the variant is selected.
566  /// - false, otherwise.
567  bool IsPdb(void) const;
568 
569  /// Get the variant data.
570  ///
571  /// @return
572  /// Reference to the data.
573  const TPdb& GetPdb(void) const;
574 
575  /// Select the variant.
576  ///
577  /// @return
578  /// Reference to the variant data.
579  TPdb& SetPdb(void);
580  /// Select the variant and set its data.
581  ///
582  /// @param value
583  /// Reference to the data.
584  void SetPdb(TPdb& value);
585 
586 
587  /// Check if variant Tpg is selected.
588  ///
589  /// Tpg type is defined as 'typedef CTextseq_id TTpg'.
590  /// @return
591  /// - true, if the variant is selected.
592  /// - false, otherwise.
593  bool IsTpg(void) const;
594 
595  /// Get the variant data.
596  ///
597  /// @return
598  /// Reference to the data.
599  const TTpg& GetTpg(void) const;
600 
601  /// Select the variant.
602  ///
603  /// @return
604  /// Reference to the variant data.
605  TTpg& SetTpg(void);
606  /// Select the variant and set its data.
607  ///
608  /// @param value
609  /// Reference to the data.
610  void SetTpg(TTpg& value);
611 
612 
613  /// Check if variant Tpe is selected.
614  ///
615  /// Tpe type is defined as 'typedef CTextseq_id TTpe'.
616  /// @return
617  /// - true, if the variant is selected.
618  /// - false, otherwise.
619  bool IsTpe(void) const;
620 
621  /// Get the variant data.
622  ///
623  /// @return
624  /// Reference to the data.
625  const TTpe& GetTpe(void) const;
626 
627  /// Select the variant.
628  ///
629  /// @return
630  /// Reference to the variant data.
631  TTpe& SetTpe(void);
632  /// Select the variant and set its data.
633  ///
634  /// @param value
635  /// Reference to the data.
636  void SetTpe(TTpe& value);
637 
638 
639  /// Check if variant Tpd is selected.
640  ///
641  /// Tpd type is defined as 'typedef CTextseq_id TTpd'.
642  /// @return
643  /// - true, if the variant is selected.
644  /// - false, otherwise.
645  bool IsTpd(void) const;
646 
647  /// Get the variant data.
648  ///
649  /// @return
650  /// Reference to the data.
651  const TTpd& GetTpd(void) const;
652 
653  /// Select the variant.
654  ///
655  /// @return
656  /// Reference to the variant data.
657  TTpd& SetTpd(void);
658  /// Select the variant and set its data.
659  ///
660  /// @param value
661  /// Reference to the data.
662  void SetTpd(TTpd& value);
663 
664 
665  /// Check if variant Gpipe is selected.
666  ///
667  /// Gpipe type is defined as 'typedef CTextseq_id TGpipe'.
668  /// @return
669  /// - true, if the variant is selected.
670  /// - false, otherwise.
671  bool IsGpipe(void) const;
672 
673  /// Get the variant data.
674  ///
675  /// @return
676  /// Reference to the data.
677  const TGpipe& GetGpipe(void) const;
678 
679  /// Select the variant.
680  ///
681  /// @return
682  /// Reference to the variant data.
683  TGpipe& SetGpipe(void);
684  /// Select the variant and set its data.
685  ///
686  /// @param value
687  /// Reference to the data.
688  void SetGpipe(TGpipe& value);
689 
690 
691  /// Check if variant Named_annot_track is selected.
692  ///
693  /// Named_annot_track type is defined as 'typedef CTextseq_id TNamed_annot_track'.
694  /// @return
695  /// - true, if the variant is selected.
696  /// - false, otherwise.
697  bool IsNamed_annot_track(void) const;
698 
699  /// Get the variant data.
700  ///
701  /// @return
702  /// Reference to the data.
703  const TNamed_annot_track& GetNamed_annot_track(void) const;
704 
705  /// Select the variant.
706  ///
707  /// @return
708  /// Reference to the variant data.
709  TNamed_annot_track& SetNamed_annot_track(void);
710  /// Select the variant and set its data.
711  ///
712  /// @param value
713  /// Reference to the data.
714  void SetNamed_annot_track(TNamed_annot_track& value);
715 
716 
717 private:
718  // copy constructor and assignment operator
721  // choice state
723  // helper methods
724  void DoSelect(E_Choice index, CObjectMemoryPool* pool = 0);
725 
726  static const char* const sm_SelectionNames[];
727  // data
728  union {
732  NCBI_NS_NCBI::CSerialObject *m_object;
733  };
734 };
735 
736 /* @} */
737 
738 
739 
740 
741 
742 ///////////////////////////////////////////////////////////
743 ///////////////////// inline methods //////////////////////
744 ///////////////////////////////////////////////////////////
745 inline
747 {
748  return m_choice;
749 }
750 
751 inline
753 {
754  if ( m_choice != index )
755  ThrowInvalidSelection(index);
756 }
757 
758 inline
759 void CSeq_id_Base::Select(E_Choice index, NCBI_NS_NCBI::EResetVariant reset, NCBI_NS_NCBI::CObjectMemoryPool* pool)
760 {
761  if ( reset == NCBI_NS_NCBI::eDoResetVariant || m_choice != index ) {
762  if ( m_choice != e_not_set )
763  ResetSelection();
764  DoSelect(index, pool);
765  }
766 }
767 
768 inline
769 void CSeq_id_Base::Select(E_Choice index, NCBI_NS_NCBI::EResetVariant reset)
770 {
771  Select(index, reset, 0);
772 }
773 
774 inline
775 bool CSeq_id_Base::IsLocal(void) const
776 {
777  return m_choice == e_Local;
778 }
779 
780 inline
781 bool CSeq_id_Base::IsGibbsq(void) const
782 {
783  return m_choice == e_Gibbsq;
784 }
785 
786 inline
788 {
790  return m_Gibbsq;
791 }
792 
793 inline
795 {
797  return m_Gibbsq;
798 }
799 
800 inline
802 {
804  m_Gibbsq = value;
805 }
806 
807 inline
808 bool CSeq_id_Base::IsGibbmt(void) const
809 {
810  return m_choice == e_Gibbmt;
811 }
812 
813 inline
815 {
817  return m_Gibbmt;
818 }
819 
820 inline
822 {
824  return m_Gibbmt;
825 }
826 
827 inline
829 {
831  m_Gibbmt = value;
832 }
833 
834 inline
835 bool CSeq_id_Base::IsGiim(void) const
836 {
837  return m_choice == e_Giim;
838 }
839 
840 inline
841 bool CSeq_id_Base::IsGenbank(void) const
842 {
843  return m_choice == e_Genbank;
844 }
845 
846 inline
847 bool CSeq_id_Base::IsEmbl(void) const
848 {
849  return m_choice == e_Embl;
850 }
851 
852 inline
853 bool CSeq_id_Base::IsPir(void) const
854 {
855  return m_choice == e_Pir;
856 }
857 
858 inline
860 {
861  return m_choice == e_Swissprot;
862 }
863 
864 inline
865 bool CSeq_id_Base::IsPatent(void) const
866 {
867  return m_choice == e_Patent;
868 }
869 
870 inline
871 bool CSeq_id_Base::IsOther(void) const
872 {
873  return m_choice == e_Other;
874 }
875 
876 inline
877 bool CSeq_id_Base::IsGeneral(void) const
878 {
879  return m_choice == e_General;
880 }
881 
882 inline
883 bool CSeq_id_Base::IsGi(void) const
884 {
885  return m_choice == e_Gi;
886 }
887 
888 inline
890 {
892  return reinterpret_cast<const TGi&>(m_Gi);
893 }
894 
895 inline
897 {
899  return reinterpret_cast<TGi&>(m_Gi);
900 }
901 
902 inline
904 {
906  reinterpret_cast<TGi&>(m_Gi) = value;
907 }
908 
909 inline
910 bool CSeq_id_Base::IsDdbj(void) const
911 {
912  return m_choice == e_Ddbj;
913 }
914 
915 inline
916 bool CSeq_id_Base::IsPrf(void) const
917 {
918  return m_choice == e_Prf;
919 }
920 
921 inline
922 bool CSeq_id_Base::IsPdb(void) const
923 {
924  return m_choice == e_Pdb;
925 }
926 
927 inline
928 bool CSeq_id_Base::IsTpg(void) const
929 {
930  return m_choice == e_Tpg;
931 }
932 
933 inline
934 bool CSeq_id_Base::IsTpe(void) const
935 {
936  return m_choice == e_Tpe;
937 }
938 
939 inline
940 bool CSeq_id_Base::IsTpd(void) const
941 {
942  return m_choice == e_Tpd;
943 }
944 
945 inline
946 bool CSeq_id_Base::IsGpipe(void) const
947 {
948  return m_choice == e_Gpipe;
949 }
950 
951 inline
953 {
954  return m_choice == e_Named_annot_track;
955 }
956 
957 ///////////////////////////////////////////////////////////
958 ////////////////// end of inline methods //////////////////
959 ///////////////////////////////////////////////////////////
960 
961 
962 
963 
964 
965 END_objects_SCOPE // namespace ncbi::objects::
966 
968 
969 
970 #endif // OBJECTS_SEQLOC_SEQ_ID_BASE_HPP
Definition: Dbtag.hpp:53
CGiimport_id –.
Definition: Giimport_id.hpp:66
*** Sequence identifiers ******************************** *
Definition: Seq_id_.hpp:80
Base class for all serializable objects.
Definition: serialbase.hpp:150
Int8 TIntId
Definition: ncbimisc.hpp:999
CStrictId< SStrictId_Gi, SStrictId_Gi::TId > TGi
Definition: ncbimisc.hpp:1025
EResetVariant
Definition: serialbase.hpp:76
@ eDoResetVariant
Definition: serialbase.hpp:77
@ eDoNotResetVariant
Definition: serialbase.hpp:78
#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_SEQLOC_EXPORT
Definition: ncbi_export.h:776
bool IsPatent(void) const
Check if variant Patent is selected.
Definition: Seq_id_.hpp:865
NCBI_NS_NCBI::TGi TGi
Definition: Seq_id_.hpp:180
bool IsGenbank(void) const
Check if variant Genbank is selected.
Definition: Seq_id_.hpp:841
ncbi::TIntId m_Gi
Definition: Seq_id_.hpp:731
TGibbsq GetGibbsq(void) const
Get the variant data.
Definition: Seq_id_.hpp:787
CTextseq_id TGpipe
Definition: Seq_id_.hpp:187
CTextseq_id TTpd
Definition: Seq_id_.hpp:186
bool IsTpg(void) const
Check if variant Tpg is selected.
Definition: Seq_id_.hpp:928
CSeq_id_Base & operator=(const CSeq_id_Base &)
CTextseq_id TNamed_annot_track
Definition: Seq_id_.hpp:188
void Select(E_Choice index, EResetVariant reset, CObjectMemoryPool *pool)
Select the requested variant if needed, allocating CObject variants from memory pool.
NCBI_NS_NCBI::CSerialObject * m_object
Definition: Seq_id_.hpp:732
CTextseq_id TOther
Definition: Seq_id_.hpp:178
bool IsTpd(void) const
Check if variant Tpd is selected.
Definition: Seq_id_.hpp:940
bool IsGibbmt(void) const
Check if variant Gibbmt is selected.
Definition: Seq_id_.hpp:808
bool IsOther(void) const
Check if variant Other is selected.
Definition: Seq_id_.hpp:871
DECLARE_INTERNAL_TYPE_INFO()
bool IsGeneral(void) const
Check if variant General is selected.
Definition: Seq_id_.hpp:877
CPDB_seq_id TPdb
Definition: Seq_id_.hpp:183
virtual void ResetSelection(void)
Reset the selection (set it to e_not_set).
Definition: Seq_id_.cpp:62
bool IsPrf(void) const
Check if variant Prf is selected.
Definition: Seq_id_.hpp:916
CTextseq_id TPrf
Definition: Seq_id_.hpp:182
bool IsEmbl(void) const
Check if variant Embl is selected.
Definition: Seq_id_.hpp:847
E_Choice Which(void) const
Which variant is currently selected.
Definition: Seq_id_.hpp:746
bool IsPdb(void) const
Check if variant Pdb is selected.
Definition: Seq_id_.hpp:922
bool IsSwissprot(void) const
Check if variant Swissprot is selected.
Definition: Seq_id_.hpp:859
TGi GetGi(void) const
Get the variant data.
Definition: Seq_id_.hpp:889
TGi & SetGi(void)
Select the variant.
Definition: Seq_id_.hpp:896
CGiimport_id TGiim
Definition: Seq_id_.hpp:172
CPatent_seq_id TPatent
Definition: Seq_id_.hpp:177
TGibbmt & SetGibbmt(void)
Select the variant.
Definition: Seq_id_.hpp:821
CSeq_id_Base(const CSeq_id_Base &)
E_Choice
Choice variants.
Definition: Seq_id_.hpp:93
CTextseq_id TDdbj
Definition: Seq_id_.hpp:181
void DoSelect(E_Choice index, CObjectMemoryPool *pool=0)
Definition: Seq_id_.cpp:90
TGibbmt m_Gibbmt
Definition: Seq_id_.hpp:730
CTextseq_id TEmbl
Definition: Seq_id_.hpp:174
CObject_id TLocal
Definition: Seq_id_.hpp:169
E_ChoiceStopper
Maximum+1 value of the choice variant enumerator.
Definition: Seq_id_.hpp:117
void ThrowInvalidSelection(E_Choice index) const
Throw 'InvalidSelection' exception.
Definition: Seq_id_.cpp:188
E_Choice m_choice
Definition: Seq_id_.hpp:722
TGibbsq m_Gibbsq
Definition: Seq_id_.hpp:729
ncbi::TIntId m_Gi
Definition: Seq_id_.hpp:731
CDbtag TGeneral
Definition: Seq_id_.hpp:179
bool IsGiim(void) const
Check if variant Giim is selected.
Definition: Seq_id_.hpp:835
CTextseq_id TPir
Definition: Seq_id_.hpp:175
bool IsLocal(void) const
Check if variant Local is selected.
Definition: Seq_id_.hpp:775
CTextseq_id TSwissprot
Definition: Seq_id_.hpp:176
CTextseq_id TTpg
Definition: Seq_id_.hpp:184
CTextseq_id TTpe
Definition: Seq_id_.hpp:185
bool IsGpipe(void) const
Check if variant Gpipe is selected.
Definition: Seq_id_.hpp:946
bool IsGi(void) const
Check if variant Gi is selected.
Definition: Seq_id_.hpp:883
TGibbsq & SetGibbsq(void)
Select the variant.
Definition: Seq_id_.hpp:794
CSerialObject Tparent
Definition: Seq_id_.hpp:81
TGibbmt GetGibbmt(void) const
Get the variant data.
Definition: Seq_id_.hpp:814
bool IsTpe(void) const
Check if variant Tpe is selected.
Definition: Seq_id_.hpp:934
bool IsNamed_annot_track(void) const
Check if variant Named_annot_track is selected.
Definition: Seq_id_.hpp:952
void CheckSelected(E_Choice index) const
Verify selection, throw exception if it differs from the expected.
Definition: Seq_id_.hpp:752
CTextseq_id TGenbank
Definition: Seq_id_.hpp:173
bool IsPir(void) const
Check if variant Pir is selected.
Definition: Seq_id_.hpp:853
bool IsGibbsq(void) const
Check if variant Gibbsq is selected.
Definition: Seq_id_.hpp:781
void Select(E_Choice index, EResetVariant reset=eDoResetVariant)
Select the requested variant if needed.
bool IsDdbj(void) const
Check if variant Ddbj is selected.
Definition: Seq_id_.hpp:910
@ e_Gibbmt
Geninfo backbone moltype.
Definition: Seq_id_.hpp:97
@ e_Giim
Geninfo import id.
Definition: Seq_id_.hpp:98
@ e_Other
for historical reasons, 'other' = 'refseq'
Definition: Seq_id_.hpp:104
@ e_Gpipe
Internal NCBI genome pipeline processing ID.
Definition: Seq_id_.hpp:113
@ e_Tpe
Third Party Annot/Seq EMBL.
Definition: Seq_id_.hpp:111
@ e_Tpd
Third Party Annot/Seq DDBJ.
Definition: Seq_id_.hpp:112
@ e_Gibbsq
Geninfo backbone seqid.
Definition: Seq_id_.hpp:96
@ e_General
for other databases
Definition: Seq_id_.hpp:105
@ e_Ddbj
DDBJ.
Definition: Seq_id_.hpp:107
@ e_Gi
GenInfo Integrated Database.
Definition: Seq_id_.hpp:106
@ e_Prf
PRF SEQDB.
Definition: Seq_id_.hpp:108
@ e_Named_annot_track
Internal named annotation tracking ID.
Definition: Seq_id_.hpp:114
@ e_not_set
No variant selected.
Definition: Seq_id_.hpp:94
@ e_Tpg
Third Party Annot/Seq Genbank.
Definition: Seq_id_.hpp:110
@ e_Local
local use
Definition: Seq_id_.hpp:95
@ e_Pdb
PDB sequence.
Definition: Seq_id_.hpp:109
@ e_not_set
const GenericPointer< typename T::ValueType > T2 value
Definition: pointer.h:1227
Modified on Fri Sep 20 14:57:35 2024 by modify_doxy.py rev. 669887