41 #ifndef OBJECTS_SEQLOC_SEQ_ID_BASE_HPP
42 #define OBJECTS_SEQLOC_SEQ_ID_BASE_HPP
48 #ifndef BEGIN_objects_SCOPE
49 # define BEGIN_objects_SCOPE BEGIN_SCOPE(objects)
50 # define END_objects_SCOPE END_SCOPE(objects)
122 virtual void Reset(
void);
125 virtual void ResetSelection(
void);
131 E_Choice Which(
void)
const;
137 void CheckSelected(E_Choice index)
const;
143 NCBI_NORETURN
void ThrowInvalidSelection(E_Choice index)
const;
151 static string SelectionName(E_Choice index);
200 bool IsLocal(
void)
const;
206 const TLocal& GetLocal(
void)
const;
226 bool IsGibbsq(
void)
const;
253 bool IsGibbmt(
void)
const;
280 bool IsGiim(
void)
const;
286 const TGiim& GetGiim(
void)
const;
292 TGiim& SetGiim(
void);
306 bool IsGenbank(
void)
const;
312 const TGenbank& GetGenbank(
void)
const;
332 bool IsEmbl(
void)
const;
338 const TEmbl& GetEmbl(
void)
const;
344 TEmbl& SetEmbl(
void);
358 bool IsPir(
void)
const;
364 const TPir& GetPir(
void)
const;
384 bool IsSwissprot(
void)
const;
410 bool IsPatent(
void)
const;
416 const TPatent& GetPatent(
void)
const;
436 bool IsOther(
void)
const;
442 const TOther& GetOther(
void)
const;
462 bool IsGeneral(
void)
const;
468 const TGeneral& GetGeneral(
void)
const;
488 bool IsGi(
void)
const;
494 TGi GetGi(
void)
const;
515 bool IsDdbj(
void)
const;
521 const TDdbj& GetDdbj(
void)
const;
527 TDdbj& SetDdbj(
void);
541 bool IsPrf(
void)
const;
547 const TPrf& GetPrf(
void)
const;
567 bool IsPdb(
void)
const;
573 const TPdb& GetPdb(
void)
const;
593 bool IsTpg(
void)
const;
599 const TTpg& GetTpg(
void)
const;
619 bool IsTpe(
void)
const;
625 const TTpe& GetTpe(
void)
const;
645 bool IsTpd(
void)
const;
651 const TTpd& GetTpd(
void)
const;
671 bool IsGpipe(
void)
const;
677 const TGpipe& GetGpipe(
void)
const;
697 bool IsNamed_annot_track(
void)
const;
726 static const char*
const sm_SelectionNames[];
892 return reinterpret_cast<const TGi&
>(
m_Gi);
899 return reinterpret_cast<TGi&
>(
m_Gi);
*** Sequence identifiers ******************************** *
Base class for all serializable objects.
CStrictId< SStrictId_Gi, SStrictId_Gi::TId > TGi
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define NCBI_SEQLOC_EXPORT
bool IsPatent(void) const
Check if variant Patent is selected.
bool IsGenbank(void) const
Check if variant Genbank is selected.
TGibbsq GetGibbsq(void) const
Get the variant data.
bool IsTpg(void) const
Check if variant Tpg is selected.
CSeq_id_Base & operator=(const CSeq_id_Base &)
CTextseq_id TNamed_annot_track
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
bool IsTpd(void) const
Check if variant Tpd is selected.
bool IsGibbmt(void) const
Check if variant Gibbmt is selected.
bool IsOther(void) const
Check if variant Other is selected.
DECLARE_INTERNAL_TYPE_INFO()
bool IsGeneral(void) const
Check if variant General is selected.
virtual void ResetSelection(void)
Reset the selection (set it to e_not_set).
bool IsPrf(void) const
Check if variant Prf is selected.
bool IsEmbl(void) const
Check if variant Embl is selected.
E_Choice Which(void) const
Which variant is currently selected.
bool IsPdb(void) const
Check if variant Pdb is selected.
bool IsSwissprot(void) const
Check if variant Swissprot is selected.
TGi GetGi(void) const
Get the variant data.
TGi & SetGi(void)
Select the variant.
TGibbmt & SetGibbmt(void)
Select the variant.
CSeq_id_Base(const CSeq_id_Base &)
void DoSelect(E_Choice index, CObjectMemoryPool *pool=0)
E_ChoiceStopper
Maximum+1 value of the choice variant enumerator.
void ThrowInvalidSelection(E_Choice index) const
Throw 'InvalidSelection' exception.
bool IsGiim(void) const
Check if variant Giim is selected.
bool IsLocal(void) const
Check if variant Local is selected.
bool IsGpipe(void) const
Check if variant Gpipe is selected.
bool IsGi(void) const
Check if variant Gi is selected.
TGibbsq & SetGibbsq(void)
Select the variant.
TGibbmt GetGibbmt(void) const
Get the variant data.
bool IsTpe(void) const
Check if variant Tpe is selected.
bool IsNamed_annot_track(void) const
Check if variant Named_annot_track is selected.
void CheckSelected(E_Choice index) const
Verify selection, throw exception if it differs from the expected.
bool IsPir(void) const
Check if variant Pir is selected.
bool IsGibbsq(void) const
Check if variant Gibbsq is selected.
void Select(E_Choice index, EResetVariant reset=eDoResetVariant)
Select the requested variant if needed.
bool IsDdbj(void) const
Check if variant Ddbj is selected.
@ e_Gibbmt
Geninfo backbone moltype.
@ e_Giim
Geninfo import id.
@ e_Other
for historical reasons, 'other' = 'refseq'
@ e_Gpipe
Internal NCBI genome pipeline processing ID.
@ e_Tpe
Third Party Annot/Seq EMBL.
@ e_Tpd
Third Party Annot/Seq DDBJ.
@ e_Gibbsq
Geninfo backbone seqid.
@ e_General
for other databases
@ e_Gi
GenInfo Integrated Database.
@ e_Named_annot_track
Internal named annotation tracking ID.
@ e_not_set
No variant selected.
@ e_Tpg
Third Party Annot/Seq Genbank.
const GenericPointer< typename T::ValueType > T2 value