41 #ifndef OBJECTS_CDD_CDD_DESCR_BASE_HPP
42 #define OBJECTS_CDD_CDD_DESCR_BASE_HPP
53 #ifndef BEGIN_objects_SCOPE
54 # define BEGIN_objects_SCOPE BEGIN_SCOPE(objects)
55 # define END_objects_SCOPE END_SCOPE(objects)
102 eStatus_unassigned = 0,
103 eStatus_finished_ok = 1,
104 eStatus_pending_release = 2,
105 eStatus_other_asis = 3,
106 eStatus_matrix_only = 4,
107 eStatus_update_running = 5,
108 eStatus_auto_updated = 6,
110 eStatus_curated_complete = 8,
118 eCuration_status_unassigned = 0,
119 eCuration_status_prein = 1,
120 eCuration_status_ofc = 2,
121 eCuration_status_iac = 3,
122 eCuration_status_ofv1 = 4,
123 eCuration_status_iav1 = 5,
124 eCuration_status_ofv2 = 6,
125 eCuration_status_iav2 = 7,
126 eCuration_status_postin = 8,
127 eCuration_status_other = 255
134 eReadonly_status_unassigned = 0,
135 eReadonly_status_readonly = 1,
136 eReadonly_status_readwrite = 2,
137 eReadonly_status_other = 255
172 virtual void Reset(
void);
175 virtual void ResetSelection(
void);
181 E_Choice Which(
void)
const;
187 void CheckSelected(E_Choice index)
const;
193 NCBI_NORETURN
void ThrowInvalidSelection(E_Choice index)
const;
201 static string SelectionName(E_Choice index);
248 bool IsOthername(
void)
const;
275 bool IsCategory(
void)
const;
281 const TCategory& GetCategory(
void)
const;
302 bool IsComment(
void)
const;
308 const TComment& GetComment(
void)
const;
329 bool IsReference(
void)
const;
355 bool IsCreate_date(
void)
const;
381 bool IsTax_source(
void)
const;
407 bool IsSource(
void)
const;
413 const TSource& GetSource(
void)
const;
434 bool IsStatus(
void)
const;
461 bool IsUpdate_date(
void)
const;
487 bool IsScrapbook(
void)
const;
508 bool IsSource_id(
void)
const;
534 bool IsRepeats(
void)
const;
540 const TRepeats& GetRepeats(
void)
const;
560 bool IsOld_root(
void)
const;
566 const TOld_root& GetOld_root(
void)
const;
586 bool IsCuration_status(
void)
const;
613 bool IsReadonly_status(
void)
const;
640 bool IsBook_ref(
void)
const;
646 const TBook_ref& GetBook_ref(
void)
const;
666 bool IsAttribution(
void)
const;
692 bool IsTitle(
void)
const;
722 static const char*
const sm_SelectionNames[];
729 NCBI_NS_NCBI::CUnionBuffer<NCBI_NS_STD::string>
m_string;
The description of CDD's refers to the specific set of aligned sequences, the region that is being al...
Base class for all serializable objects.
#define ENUM_METHOD_NAME(EnumName)
NCBI_XOBJUTIL_EXPORT string GetTitle(const CBioseq_Handle &hnd, TGetTitleFlags flags=0)
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
TReadonly_status m_Readonly_status
NCBI_NS_NCBI::CUnionBuffer< NCBI_NS_STD::string > m_string
TReadonly_status & SetReadonly_status(void)
Select the variant.
bool IsTitle(void) const
Check if variant Title is selected.
TCuration_status m_Curation_status
bool IsAttribution(void) const
Check if variant Attribution is selected.
TScrapbook & SetScrapbook(void)
Select the variant.
void CheckSelected(E_Choice index) const
Verify selection, throw exception if it differs from the expected.
bool IsSource(void) const
Check if variant Source is selected.
bool IsReference(void) const
Check if variant Reference is selected.
TTitle & SetTitle(void)
Select the variant.
void ThrowInvalidSelection(E_Choice index) const
Throw 'InvalidSelection' exception.
bool IsBook_ref(void) const
Check if variant Book_ref is selected.
E_Choice Which(void) const
Which variant is currently selected.
bool IsTax_source(void) const
Check if variant Tax_source is selected.
const TTitle & GetTitle(void) const
Get the variant data.
bool IsUpdate_date(void) const
Check if variant Update_date is selected.
const TSource & GetSource(void) const
Get the variant data.
bool IsOld_root(void) const
Check if variant Old_root is selected.
TCuration_status m_Curation_status
void Select(E_Choice index, EResetVariant reset=eDoResetVariant)
Select the requested variant if needed.
bool IsSource_id(void) const
Check if variant Source_id is selected.
CCdd_descr_Base(const CCdd_descr_Base &)
list< string > TScrapbook
bool IsCreate_date(void) const
Check if variant Create_date is selected.
const TOthername & GetOthername(void) const
Get the variant data.
bool IsComment(void) const
Check if variant Comment is selected.
void Select(E_Choice index, EResetVariant reset, CObjectMemoryPool *pool)
Select the requested variant if needed, allocating CObject variants from memory pool.
TStatus & SetStatus(void)
Select the variant.
NCBI_NS_NCBI::CUnionBuffer< TScrapbook > m_Scrapbook
bool IsScrapbook(void) const
Check if variant Scrapbook is selected.
bool IsOthername(void) const
Check if variant Othername is selected.
void DoSelect(E_Choice index, CObjectMemoryPool *pool=0)
virtual void ResetSelection(void)
Reset the selection (set it to e_not_set).
bool IsStatus(void) const
Check if variant Status is selected.
NCBI_NS_NCBI::CSerialObject * m_object
NCBI_NS_NCBI::CUnionBuffer< TScrapbook > m_Scrapbook
TReadonly_status GetReadonly_status(void) const
Get the variant data.
TStatus GetStatus(void) const
Get the variant data.
TCuration_status GetCuration_status(void) const
Get the variant data.
CCdd_descr_Base & operator=(const CCdd_descr_Base &)
TComment & SetComment(void)
Select the variant.
TOthername & SetOthername(void)
Select the variant.
TReadonly_status m_Readonly_status
const TCategory & GetCategory(void) const
Get the variant data.
bool IsRepeats(void) const
Check if variant Repeats is selected.
const TScrapbook & GetScrapbook(void) const
Get the variant data.
NCBI_NS_NCBI::CUnionBuffer< NCBI_NS_STD::string > m_string
E_ChoiceStopper
Maximum+1 value of the choice variant enumerator.
bool IsCuration_status(void) const
Check if variant Curation_status is selected.
bool IsCategory(void) const
Check if variant Category is selected.
TCategory & SetCategory(void)
Select the variant.
TSource & SetSource(void)
Select the variant.
TCuration_status & SetCuration_status(void)
Select the variant.
const TComment & GetComment(void) const
Get the variant data.
bool IsReadonly_status(void) const
Check if variant Readonly_status is selected.
DECLARE_INTERNAL_TYPE_INFO()
@ e_Repeats
to record repeat counts
@ e_Title
hold short descriptive text
@ e_Comment
this is where descriptions go
@ e_Reference
a citation describing the domain
@ e_Source_id
for linking back to source db
@ e_Othername
alternative names for the CDD if domain has several common names
@ e_not_set
No variant selected.
@ e_Book_ref
links to Entrez/books
@ e_Update_date
Date of last version change.
@ e_Scrapbook
for storing curation notes those won't make it into public distributions
@ e_Source
the database the seeds were created from, e.g. SMART, PFAM, etc..
@ e_Category
intracellular, extracellular, etc. to record spatial and/or temporal expression in free-text format
@ e_Attribution
add citations and/or author names
@ e_Tax_source
holds the highest common tax node
@ e_Old_root
to record short-term history
@ e_Create_date
Date of first creation/dump.
static void SetTitle(CRef< CSeq_entry > entry, string title)