NCBI C++ ToolKit
ID2S_Chunk_Data_.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 ID2S_Chunk_Data_.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/seqsplit/seqsplit.asn">seqsplit.asn</a>
34 /// and additional tune-up parameters:
35 /// <a href="/IEB/ToolBox/CPP_DOC/lxr/source/src/objects/seqsplit/seqsplit.def">seqsplit.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_SEQSPLIT_ID2S_CHUNK_DATA_BASE_HPP
42 #define OBJECTS_SEQSPLIT_ID2S_CHUNK_DATA_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 CBioseq;
62 class CSeq_align;
63 class CSeq_annot;
64 class CSeq_descr;
65 class CSeq_id;
66 
67 
68 // generated classes
69 
70 
71 /** @addtogroup dataspec_NCBI_Seq_split
72  *
73  * @{
74  */
75 
76 /////////////////////////////////////////////////////////////////////////////
77 ///
78 /// CID2S_Chunk_Data_Base --
79 ///
80 
82 {
84 public:
85  // constructor
87  // destructor
88  virtual ~CID2S_Chunk_Data_Base(void);
89 
90  // type info
92 
93  /////////////////////////////////////////////////////////////////////////////
94  /// place of data to insert
95  ///
96  /// C_Id --
97  ///
98 
100  {
102  public:
103  // constructor
104  C_Id(void);
105  // destructor
106  ~C_Id(void);
107 
108  // type info
110 
111 
112  /// Choice variants.
113  enum E_Choice {
114  e_not_set = 0, ///< No variant selected
115  e_Bioseq_set, ///< Bioseq-set id
116  e_Gi, ///< Bioseq id
117  e_Seq_id ///< Bioseq id
118  };
119  /// Maximum+1 value of the choice variant enumerator.
121  e_MaxChoice = 4 ///< == e_Seq_id+1
122  };
123 
124  /// Reset the whole object
125  void Reset(void);
126 
127  /// Reset the selection (set it to e_not_set).
128  void ResetSelection(void);
129 
130  /// Which variant is currently selected.
131  ///
132  /// @return
133  /// Choice state enumerator.
134  E_Choice Which(void) const;
135 
136  /// Verify selection, throw exception if it differs from the expected.
137  ///
138  /// @param index
139  /// Expected selection.
140  void CheckSelected(E_Choice index) const;
141 
142  /// Throw 'InvalidSelection' exception.
143  ///
144  /// @param index
145  /// Expected selection.
146  NCBI_NORETURN void ThrowInvalidSelection(E_Choice index) const;
147 
148  /// Retrieve selection name (for diagnostic purposes).
149  ///
150  /// @param index
151  /// One of possible selection states.
152  /// @return
153  /// Name string.
154  static string SelectionName(E_Choice index);
155 
156  /// Select the requested variant if needed.
157  ///
158  /// @param index
159  /// New selection state.
160  /// @param reset
161  /// Flag that defines the resetting of the variant data. The data will
162  /// be reset if either the current selection differs from the new one,
163  /// or the flag is set to eDoResetVariant.
165  /// Select the requested variant if needed,
166  /// allocating CObject variants from memory pool.
167  void Select(E_Choice index,
168  EResetVariant reset,
169  CObjectMemoryPool* pool);
170 
171  // types
172  typedef int TBioseq_set;
174  typedef CSeq_id TSeq_id;
175 
176  // getters
177  // setters
178 
179 
180  /// Check if variant Bioseq_set is selected.
181  ///
182  /// Bioseq_set type is defined as 'typedef int TBioseq_set'.
183  /// @return
184  /// - true, if the variant is selected.
185  /// - false, otherwise.
186  bool IsBioseq_set(void) const;
187 
188  /// Get the variant data.
189  ///
190  /// @return
191  /// Copy of the variant data.
192  TBioseq_set GetBioseq_set(void) const;
193 
194  /// Select the variant.
195  ///
196  /// @return
197  /// Reference to the variant data.
198  TBioseq_set& SetBioseq_set(void);
199 
200  /// Select the variant and set its data.
201  ///
202  /// @param value
203  /// Variant data.
204  void SetBioseq_set(TBioseq_set value);
205 
206 
207  /// Check if variant Gi is selected.
208  ///
209  /// Gi type is defined as 'typedef NCBI_NS_NCBI::TGi TGi'.
210  /// @return
211  /// - true, if the variant is selected.
212  /// - false, otherwise.
213  bool IsGi(void) const;
214 
215  /// Get the variant data.
216  ///
217  /// @return
218  /// Copy of the variant data.
219  TGi GetGi(void) const;
220 
221  /// Select the variant.
222  ///
223  /// @return
224  /// Reference to the variant data.
225  TGi& SetGi(void);
226 
227  /// Select the variant and set its data.
228  ///
229  /// @param value
230  /// Variant data.
231  void SetGi(TGi value);
232 
233 
234  /// Check if variant Seq_id is selected.
235  ///
236  /// Seq_id type is defined as 'typedef CSeq_id TSeq_id'.
237  /// @return
238  /// - true, if the variant is selected.
239  /// - false, otherwise.
240  bool IsSeq_id(void) const;
241 
242  /// Get the variant data.
243  ///
244  /// @return
245  /// Reference to the data.
246  const TSeq_id& GetSeq_id(void) const;
247 
248  /// Select the variant.
249  ///
250  /// @return
251  /// Reference to the variant data.
252  TSeq_id& SetSeq_id(void);
253  /// Select the variant and set its data.
254  ///
255  /// @param value
256  /// Reference to the data.
257  void SetSeq_id(TSeq_id& value);
258 
259 
260  private:
261  // copy constructor and assignment operator
262  C_Id(const C_Id& );
263  C_Id& operator=(const C_Id& );
264  // choice state
266  // helper methods
267  void DoSelect(E_Choice index, CObjectMemoryPool* pool = 0);
268 
269  static const char* const sm_SelectionNames[];
270  // data
271  union {
274  NCBI_NS_NCBI::CSerialObject *m_object;
275  };
276  };
277  // types
278  typedef C_Id TId;
280  typedef list< CRef< CSeq_annot > > TAnnots;
281  typedef list< CRef< CSeq_align > > TAssembly;
282  typedef list< CRef< CID2S_Sequence_Piece > > TSeq_map;
283  typedef list< CRef< CID2S_Sequence_Piece > > TSeq_data;
284  typedef list< CRef< CBioseq > > TBioseqs;
285 
286  // member index
287  enum class E_memberIndex {
288  e__allMandatory = 0,
289  e_id,
290  e_descr,
291  e_annots,
292  e_assembly,
293  e_seq_map,
294  e_seq_data,
295  e_bioseqs
296  };
298 
299  // getters
300  // setters
301 
302  /// Check if a value has been assigned to Id data member.
303  ///
304  /// Data member Id is mandatory;
305  /// its type is defined as 'typedef C_Id TId'
306  /// @return
307  /// - true, if a value has been assigned.
308  /// - false, otherwise.
309  bool IsSetId(void) const;
310 
311  /// Check if it is safe to call GetId method.
312  ///
313  /// @return
314  /// - true, if the data member is getatable.
315  /// - false, otherwise.
316  bool CanGetId(void) const;
317 
318  /// Reset Id data member.
319  void ResetId(void);
320 
321  /// Get the Id member data.
322  ///
323  /// @return
324  /// Reference to the member data.
325  const TId& GetId(void) const;
326 
327  /// Assign a value to Id data member.
328  ///
329  /// @param value
330  /// Reference to value.
331  void SetId(TId& value);
332 
333  /// Assign a value to Id data member.
334  ///
335  /// @return
336  /// Reference to the data value.
337  TId& SetId(void);
338 
339  /// Seq-descr, for Bioseq and Bioseq-set
340  /// Check if a value has been assigned to Descr data member.
341  ///
342  /// Data member Descr is optional;
343  /// its type is defined as 'typedef CSeq_descr TDescr'
344  /// @return
345  /// - true, if a value has been assigned.
346  /// - false, otherwise.
347  bool IsSetDescr(void) const;
348 
349  /// Check if it is safe to call GetDescr method.
350  ///
351  /// @return
352  /// - true, if the data member is getatable.
353  /// - false, otherwise.
354  bool CanGetDescr(void) const;
355 
356  /// Reset Descr data member.
357  void ResetDescr(void);
358 
359  /// Get the Descr member data.
360  ///
361  /// @return
362  /// Reference to the member data.
363  const TDescr& GetDescr(void) const;
364 
365  /// Assign a value to Descr data member.
366  ///
367  /// @param value
368  /// Reference to value.
369  void SetDescr(TDescr& value);
370 
371  /// Assign a value to Descr data member.
372  ///
373  /// @return
374  /// Reference to the data value.
375  TDescr& SetDescr(void);
376 
377  /// Seq-annot, for Bioseq and Bioseq-set
378  /// Check if a value has been assigned to Annots data member.
379  ///
380  /// Data member Annots is optional;
381  /// its type is defined as 'typedef list< CRef< CSeq_annot > > TAnnots'
382  /// @return
383  /// - true, if a value has been assigned.
384  /// - false, otherwise.
385  bool IsSetAnnots(void) const;
386 
387  /// Check if it is safe to call GetAnnots method.
388  ///
389  /// @return
390  /// - true, if the data member is getatable.
391  /// - false, otherwise.
392  bool CanGetAnnots(void) const;
393 
394  /// Reset Annots data member.
395  void ResetAnnots(void);
396 
397  /// Get the Annots member data.
398  ///
399  /// @return
400  /// Reference to the member data.
401  const TAnnots& GetAnnots(void) const;
402 
403  /// Assign a value to Annots data member.
404  ///
405  /// @return
406  /// Reference to the data value.
407  TAnnots& SetAnnots(void);
408 
409  /// assembly history Seq-align, for Bioseq
410  /// Check if a value has been assigned to Assembly data member.
411  ///
412  /// Data member Assembly is optional;
413  /// its type is defined as 'typedef list< CRef< CSeq_align > > TAssembly'
414  /// @return
415  /// - true, if a value has been assigned.
416  /// - false, otherwise.
417  bool IsSetAssembly(void) const;
418 
419  /// Check if it is safe to call GetAssembly method.
420  ///
421  /// @return
422  /// - true, if the data member is getatable.
423  /// - false, otherwise.
424  bool CanGetAssembly(void) const;
425 
426  /// Reset Assembly data member.
427  void ResetAssembly(void);
428 
429  /// Get the Assembly member data.
430  ///
431  /// @return
432  /// Reference to the member data.
433  const TAssembly& GetAssembly(void) const;
434 
435  /// Assign a value to Assembly data member.
436  ///
437  /// @return
438  /// Reference to the data value.
439  TAssembly& SetAssembly(void);
440 
441  /// sequence map, for Bioseq
442  /// Check if a value has been assigned to Seq_map data member.
443  ///
444  /// Data member Seq_map is optional;
445  /// its type is defined as 'typedef list< CRef< CID2S_Sequence_Piece > > TSeq_map'
446  /// @return
447  /// - true, if a value has been assigned.
448  /// - false, otherwise.
449  bool IsSetSeq_map(void) const;
450 
451  /// Check if it is safe to call GetSeq_map method.
452  ///
453  /// @return
454  /// - true, if the data member is getatable.
455  /// - false, otherwise.
456  bool CanGetSeq_map(void) const;
457 
458  /// Reset Seq_map data member.
459  void ResetSeq_map(void);
460 
461  /// Get the Seq_map member data.
462  ///
463  /// @return
464  /// Reference to the member data.
465  const TSeq_map& GetSeq_map(void) const;
466 
467  /// Assign a value to Seq_map data member.
468  ///
469  /// @return
470  /// Reference to the data value.
471  TSeq_map& SetSeq_map(void);
472 
473  /// sequence data, for Bioseq
474  /// Check if a value has been assigned to Seq_data data member.
475  ///
476  /// Data member Seq_data is optional;
477  /// its type is defined as 'typedef list< CRef< CID2S_Sequence_Piece > > TSeq_data'
478  /// @return
479  /// - true, if a value has been assigned.
480  /// - false, otherwise.
481  bool IsSetSeq_data(void) const;
482 
483  /// Check if it is safe to call GetSeq_data method.
484  ///
485  /// @return
486  /// - true, if the data member is getatable.
487  /// - false, otherwise.
488  bool CanGetSeq_data(void) const;
489 
490  /// Reset Seq_data data member.
491  void ResetSeq_data(void);
492 
493  /// Get the Seq_data member data.
494  ///
495  /// @return
496  /// Reference to the member data.
497  const TSeq_data& GetSeq_data(void) const;
498 
499  /// Assign a value to Seq_data data member.
500  ///
501  /// @return
502  /// Reference to the data value.
503  TSeq_data& SetSeq_data(void);
504 
505  /// Bioseq, for Bioseq-set
506  /// Check if a value has been assigned to Bioseqs data member.
507  ///
508  /// Data member Bioseqs is optional;
509  /// its type is defined as 'typedef list< CRef< CBioseq > > TBioseqs'
510  /// @return
511  /// - true, if a value has been assigned.
512  /// - false, otherwise.
513  bool IsSetBioseqs(void) const;
514 
515  /// Check if it is safe to call GetBioseqs method.
516  ///
517  /// @return
518  /// - true, if the data member is getatable.
519  /// - false, otherwise.
520  bool CanGetBioseqs(void) const;
521 
522  /// Reset Bioseqs data member.
523  void ResetBioseqs(void);
524 
525  /// Get the Bioseqs member data.
526  ///
527  /// @return
528  /// Reference to the member data.
529  const TBioseqs& GetBioseqs(void) const;
530 
531  /// Assign a value to Bioseqs data member.
532  ///
533  /// @return
534  /// Reference to the data value.
535  TBioseqs& SetBioseqs(void);
536 
537  /// Reset the whole object
538  virtual void Reset(void);
539 
540 
541 private:
542  // Prohibit copy constructor and assignment operator
545 
546  // data
547  Uint4 m_set_State[1];
550  list< CRef< CSeq_annot > > m_Annots;
551  list< CRef< CSeq_align > > m_Assembly;
552  list< CRef< CID2S_Sequence_Piece > > m_Seq_map;
553  list< CRef< CID2S_Sequence_Piece > > m_Seq_data;
554  list< CRef< CBioseq > > m_Bioseqs;
555 };
556 
557 /* @} */
558 
559 
560 
561 
562 
563 ///////////////////////////////////////////////////////////
564 ///////////////////// inline methods //////////////////////
565 ///////////////////////////////////////////////////////////
566 inline
568 {
569  return m_choice;
570 }
571 
572 inline
574 {
575  if ( m_choice != index )
576  ThrowInvalidSelection(index);
577 }
578 
579 inline
580 void CID2S_Chunk_Data_Base::C_Id::Select(E_Choice index, NCBI_NS_NCBI::EResetVariant reset, NCBI_NS_NCBI::CObjectMemoryPool* pool)
581 {
582  if ( reset == NCBI_NS_NCBI::eDoResetVariant || m_choice != index ) {
583  if ( m_choice != e_not_set )
584  ResetSelection();
585  DoSelect(index, pool);
586  }
587 }
588 
589 inline
591 {
592  Select(index, reset, 0);
593 }
594 
595 inline
597 {
598  return m_choice == e_Bioseq_set;
599 }
600 
601 inline
603 {
604  CheckSelected(e_Bioseq_set);
605  return m_Bioseq_set;
606 }
607 
608 inline
610 {
611  Select(e_Bioseq_set, NCBI_NS_NCBI::eDoNotResetVariant);
612  return m_Bioseq_set;
613 }
614 
615 inline
617 {
618  Select(e_Bioseq_set, NCBI_NS_NCBI::eDoNotResetVariant);
619  m_Bioseq_set = value;
620 }
621 
622 inline
624 {
625  return m_choice == e_Gi;
626 }
627 
628 inline
630 {
631  CheckSelected(e_Gi);
632  return reinterpret_cast<const TGi&>(m_Gi);
633 }
634 
635 inline
637 {
638  Select(e_Gi, NCBI_NS_NCBI::eDoNotResetVariant);
639  return reinterpret_cast<TGi&>(m_Gi);
640 }
641 
642 inline
644 {
645  Select(e_Gi, NCBI_NS_NCBI::eDoNotResetVariant);
646  reinterpret_cast<TGi&>(m_Gi) = value;
647 }
648 
649 inline
651 {
652  return m_choice == e_Seq_id;
653 }
654 
655 inline
657 {
658  return m_Id.NotEmpty();
659 }
660 
661 inline
663 {
664  return true;
665 }
666 
667 inline
669 {
670  if ( !m_Id ) {
671  const_cast<CID2S_Chunk_Data_Base*>(this)->ResetId();
672  }
673  return (*m_Id);
674 }
675 
676 inline
678 {
679  if ( !m_Id ) {
680  ResetId();
681  }
682  return (*m_Id);
683 }
684 
685 inline
687 {
688  return m_Descr.NotEmpty();
689 }
690 
691 inline
693 {
694  return IsSetDescr();
695 }
696 
697 inline
699 {
700  if (!CanGetDescr()) {
701  ThrowUnassigned(1);
702  }
703  return (*m_Descr);
704 }
705 
706 inline
708 {
709  return ((m_set_State[0] & 0x30) != 0);
710 }
711 
712 inline
714 {
715  return true;
716 }
717 
718 inline
720 {
721  return m_Annots;
722 }
723 
724 inline
726 {
727  m_set_State[0] |= 0x10;
728  return m_Annots;
729 }
730 
731 inline
733 {
734  return ((m_set_State[0] & 0xc0) != 0);
735 }
736 
737 inline
739 {
740  return true;
741 }
742 
743 inline
745 {
746  return m_Assembly;
747 }
748 
749 inline
751 {
752  m_set_State[0] |= 0x40;
753  return m_Assembly;
754 }
755 
756 inline
758 {
759  return ((m_set_State[0] & 0x300) != 0);
760 }
761 
762 inline
764 {
765  return true;
766 }
767 
768 inline
770 {
771  return m_Seq_map;
772 }
773 
774 inline
776 {
777  m_set_State[0] |= 0x100;
778  return m_Seq_map;
779 }
780 
781 inline
783 {
784  return ((m_set_State[0] & 0xc00) != 0);
785 }
786 
787 inline
789 {
790  return true;
791 }
792 
793 inline
795 {
796  return m_Seq_data;
797 }
798 
799 inline
801 {
802  m_set_State[0] |= 0x400;
803  return m_Seq_data;
804 }
805 
806 inline
808 {
809  return ((m_set_State[0] & 0x3000) != 0);
810 }
811 
812 inline
814 {
815  return true;
816 }
817 
818 inline
820 {
821  return m_Bioseqs;
822 }
823 
824 inline
826 {
827  m_set_State[0] |= 0x1000;
828  return m_Bioseqs;
829 }
830 
831 ///////////////////////////////////////////////////////////
832 ////////////////// end of inline methods //////////////////
833 ///////////////////////////////////////////////////////////
834 
835 
836 
837 
838 
839 END_objects_SCOPE // namespace ncbi::objects::
840 
842 
843 
844 #endif // OBJECTS_SEQSPLIT_ID2S_CHUNK_DATA_BASE_HPP
place of data to insert
CID2S_Chunk_Data_Base –.
CID2S_Sequence_Piece –.
CRef –.
Definition: ncbiobj.hpp:618
@Seq_descr.hpp User-defined methods of the data storage class.
Definition: Seq_descr.hpp:55
Base class for all serializable objects.
Definition: serialbase.hpp:150
char value[7]
Definition: config.c:431
Int8 TIntId
Definition: ncbimisc.hpp:999
CStrictId< SStrictId_Gi, SStrictId_Gi::TId > TGi
Definition: ncbimisc.hpp:1025
void ThrowUnassigned(TMemberIndex index) const
EResetVariant
Definition: serialbase.hpp:76
@ eDoResetVariant
Definition: serialbase.hpp:77
@ eDoNotResetVariant
Definition: serialbase.hpp:78
const CSeq_id & GetId(const CSeq_loc &loc, CScope *scope)
If all CSeq_ids embedded in CSeq_loc refer to the same CBioseq, returns the first CSeq_id found,...
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_ID2_EXPORT
Definition: ncbi_export.h:552
const TAssembly & GetAssembly(void) const
Get the Assembly member data.
void CheckSelected(E_Choice index) const
Verify selection, throw exception if it differs from the expected.
list< CRef< CID2S_Sequence_Piece > > TSeq_map
list< CRef< CSeq_align > > TAssembly
bool IsSetBioseqs(void) const
Bioseq, for Bioseq-set Check if a value has been assigned to Bioseqs data member.
TGi & SetGi(void)
Select the variant.
TBioseq_set GetBioseq_set(void) const
Get the variant data.
TBioseqs & SetBioseqs(void)
Assign a value to Bioseqs data member.
bool CanGetAnnots(void) const
Check if it is safe to call GetAnnots method.
bool CanGetAssembly(void) const
Check if it is safe to call GetAssembly method.
E_Choice Which(void) const
Which variant is currently selected.
list< CRef< CSeq_align > > m_Assembly
bool IsSetSeq_map(void) const
sequence map, for Bioseq Check if a value has been assigned to Seq_map data member.
bool IsSetId(void) const
Check if a value has been assigned to Id data member.
E_ChoiceStopper
Maximum+1 value of the choice variant enumerator.
NCBI_NS_NCBI::CSerialObject * m_object
list< CRef< CID2S_Sequence_Piece > > m_Seq_data
TAnnots & SetAnnots(void)
Assign a value to Annots data member.
TId & SetId(void)
Assign a value to Id data member.
bool IsBioseq_set(void) const
Check if variant Bioseq_set is selected.
const TSeq_map & GetSeq_map(void) const
Get the Seq_map member data.
const TDescr & GetDescr(void) const
Get the Descr member data.
bool IsSetAssembly(void) const
assembly history Seq-align, for Bioseq Check if a value has been assigned to Assembly data member.
CID2S_Chunk_Data_Base & operator=(const CID2S_Chunk_Data_Base &)
bool CanGetSeq_data(void) const
Check if it is safe to call GetSeq_data method.
list< CRef< CID2S_Sequence_Piece > > m_Seq_map
const TAnnots & GetAnnots(void) const
Get the Annots member data.
TAssembly & SetAssembly(void)
Assign a value to Assembly data member.
void ResetId(void)
Reset Id data member.
C_Id & operator=(const C_Id &)
const TSeq_data & GetSeq_data(void) const
Get the Seq_data member data.
bool IsSetAnnots(void) const
Seq-annot, for Bioseq and Bioseq-set Check if a value has been assigned to Annots data member.
list< CRef< CBioseq > > TBioseqs
bool IsSetSeq_data(void) const
sequence data, for Bioseq Check if a value has been assigned to Seq_data data member.
bool CanGetDescr(void) const
Check if it is safe to call GetDescr method.
bool IsGi(void) const
Check if variant Gi is selected.
bool IsSetDescr(void) const
Seq-descr, for Bioseq and Bioseq-set Check if a value has been assigned to Descr data member.
TSeq_map & SetSeq_map(void)
Assign a value to Seq_map data member.
bool CanGetBioseqs(void) const
Check if it is safe to call GetBioseqs method.
Tparent::CMemberIndex< E_memberIndex, 8 > TmemberIndex
TGi GetGi(void) const
Get the variant data.
const TBioseqs & GetBioseqs(void) const
Get the Bioseqs member data.
TBioseq_set & SetBioseq_set(void)
Select the variant.
bool CanGetId(void) const
Check if it is safe to call GetId method.
bool CanGetSeq_map(void) const
Check if it is safe to call GetSeq_map method.
list< CRef< CSeq_annot > > TAnnots
TSeq_data & SetSeq_data(void)
Assign a value to Seq_data data member.
list< CRef< CID2S_Sequence_Piece > > TSeq_data
list< CRef< CSeq_annot > > m_Annots
list< CRef< CBioseq > > m_Bioseqs
CID2S_Chunk_Data_Base(const CID2S_Chunk_Data_Base &)
void Select(E_Choice index, EResetVariant reset, CObjectMemoryPool *pool)
Select the requested variant if needed, allocating CObject variants from memory pool.
bool IsSeq_id(void) const
Check if variant Seq_id is selected.
void Select(E_Choice index, EResetVariant reset=eDoResetVariant)
Select the requested variant if needed.
const TId & GetId(void) const
Get the Id member data.
@ e_not_set
CBioseq_set_Info & GetBioseq_set(CTSE_Info &tse, const CBioObjectId &id)
Modified on Sat Dec 09 04:46:57 2023 by modify_doxy.py rev. 669887