85 m_object->RemoveReference();
97 (m_object =
new(pool) ncbi::objects::CNaIdentity())->
AddReference();
100 (m_object =
new(pool) ncbi::objects::CNaSub())->
AddReference();
103 (m_object =
new(pool) ncbi::objects::CProteinSub())->
AddReference();
106 (m_object =
new(pool) ncbi::objects::CAaLocation())->
AddReference();
109 (m_object =
new(pool) ncbi::objects::CDeletion())->
AddReference();
112 (m_object =
new(pool) ncbi::objects::CDuplication())->
AddReference();
115 (m_object =
new(pool) ncbi::objects::CInversion())->
AddReference();
118 (m_object =
new(pool) ncbi::objects::CInsertion())->
AddReference();
121 (m_object =
new(pool) ncbi::objects::CConversion())->
AddReference();
124 (m_object =
new(pool) ncbi::objects::CDelins())->
AddReference();
127 (m_object =
new(pool) ncbi::objects::CRepeat())->
AddReference();
130 (m_object =
new(pool) ncbi::objects::CProteinExtension())->
AddReference();
133 (m_object =
new(pool) ncbi::objects::CFrameshift())->
AddReference();
160 return NCBI_NS_NCBI::CInvalidChoiceSelection::GetName(index, sm_SelectionNames,
sizeof(sm_SelectionNames)/
sizeof(sm_SelectionNames[0]));
165 throw NCBI_NS_NCBI::CInvalidChoiceSelection(
DIAG_COMPILE_INFO,
this, m_choice, index, sm_SelectionNames,
sizeof(sm_SelectionNames)/
sizeof(sm_SelectionNames[0]));
170 CheckSelected(e_Na_identity);
183 if ( m_choice != e_Na_identity || m_object != ptr ) {
186 m_choice = e_Na_identity;
192 CheckSelected(e_Na_sub);
193 return *
static_cast<const TNa_sub*
>(m_object);
199 return *
static_cast<TNa_sub*
>(m_object);
205 if ( m_choice != e_Na_sub || m_object != ptr ) {
214 CheckSelected(e_Prot_sub);
215 return *
static_cast<const TProt_sub*
>(m_object);
221 return *
static_cast<TProt_sub*
>(m_object);
227 if ( m_choice != e_Prot_sub || m_object != ptr ) {
230 m_choice = e_Prot_sub;
236 CheckSelected(e_Prot_silent);
249 if ( m_choice != e_Prot_silent || m_object != ptr ) {
252 m_choice = e_Prot_silent;
258 CheckSelected(e_Del);
259 return *
static_cast<const TDel*
>(m_object);
265 return *
static_cast<TDel*
>(m_object);
271 if ( m_choice != e_Del || m_object != ptr ) {
280 CheckSelected(e_Dup);
281 return *
static_cast<const TDup*
>(m_object);
287 return *
static_cast<TDup*
>(m_object);
293 if ( m_choice != e_Dup || m_object != ptr ) {
302 CheckSelected(e_Inv);
303 return *
static_cast<const TInv*
>(m_object);
309 return *
static_cast<TInv*
>(m_object);
315 if ( m_choice != e_Inv || m_object != ptr ) {
324 CheckSelected(e_Ins);
325 return *
static_cast<const TIns*
>(m_object);
331 return *
static_cast<TIns*
>(m_object);
337 if ( m_choice != e_Ins || m_object != ptr ) {
346 CheckSelected(e_Conv);
347 return *
static_cast<const TConv*
>(m_object);
353 return *
static_cast<TConv*
>(m_object);
359 if ( m_choice != e_Conv || m_object != ptr ) {
368 CheckSelected(e_Delins);
369 return *
static_cast<const TDelins*
>(m_object);
375 return *
static_cast<TDelins*
>(m_object);
381 if ( m_choice != e_Delins || m_object != ptr ) {
390 CheckSelected(e_Repeat);
391 return *
static_cast<const TRepeat*
>(m_object);
397 return *
static_cast<TRepeat*
>(m_object);
403 if ( m_choice != e_Repeat || m_object != ptr ) {
412 CheckSelected(e_Prot_ext);
413 return *
static_cast<const TProt_ext*
>(m_object);
419 return *
static_cast<TProt_ext*
>(m_object);
425 if ( m_choice != e_Prot_ext || m_object != ptr ) {
428 m_choice = e_Prot_ext;
434 CheckSelected(e_Frameshift);
447 if ( m_choice != e_Frameshift || m_object != ptr ) {
450 m_choice = e_Frameshift;
474 info->CodeVersion(22301);
475 info->DataSpec(ncbi::EDataSpec::eASN);
518 info->CodeVersion(22301);
519 info->DataSpec(ncbi::EDataSpec::eASN);
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
BEGIN_NAMED_BASE_CLASS_INFO("SimpleVariant", CSimpleVariant)
BEGIN_NAMED_CHOICE_INFO("", CSimpleVariant_Base::C_Type)
#define DIAG_COMPILE_INFO
Make compile time diagnostic information object to use in CNcbiDiag and CException.
#define MEMBER_PTR(MemberName)
#define ADD_NAMED_REF_MEMBER(MemberAlias, MemberName, ClassName)
#define ADD_NAMED_REF_CHOICE_VARIANT(MemberAlias, MemberName, ClassName)
#define ADD_NAMED_STD_MEMBER(MemberAlias, MemberName)
#define SET_CLASS_MODULE(ModuleName)
#define SET_INTERNAL_NAME(OwnerName, MemberName)
#define SET_CHOICE_MODULE(ModuleName)
void AddReference(void) const
Add reference to object.
bool IsAllocatedInPool(void) const THROWS_NONE
Check if object is allocated in memory pool (not system heap)
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
TType & SetType(void)
Assign a value to Type data member.
void Reset(void)
Reset the whole object.
const TProt_sub & GetProt_sub(void) const
Get the variant data.
TDelins & SetDelins(void)
Select the variant.
const TDup & GetDup(void) const
Get the variant data.
const TDelins & GetDelins(void) const
Get the variant data.
const TInv & GetInv(void) const
Get the variant data.
TDup & SetDup(void)
Select the variant.
void ResetType(void)
Reset Type data member.
static string SelectionName(E_Choice index)
Retrieve selection name (for diagnostic purposes).
void ResetSelection(void)
Reset the selection (set it to e_not_set).
void DoSelect(E_Choice index, CObjectMemoryPool *pool=0)
const TDel & GetDel(void) const
Get the variant data.
const TNa_sub & GetNa_sub(void) const
Get the variant data.
TFrameshift & SetFrameshift(void)
Select the variant.
virtual ~CSimpleVariant_Base(void)
TConv & SetConv(void)
Select the variant.
TRepeat & SetRepeat(void)
Select the variant.
virtual void Reset(void)
Reset the whole object.
TNa_identity & SetNa_identity(void)
Select the variant.
const TFrameshift & GetFrameshift(void) const
Get the variant data.
CSimpleVariant_Base(void)
TInv & SetInv(void)
Select the variant.
TDel & SetDel(void)
Select the variant.
const TProt_silent & GetProt_silent(void) const
Get the variant data.
TProt_ext & SetProt_ext(void)
Select the variant.
const TIns & GetIns(void) const
Get the variant data.
void ThrowInvalidSelection(E_Choice index) const
Throw 'InvalidSelection' exception.
static const char *const sm_SelectionNames[]
TProt_sub & SetProt_sub(void)
Select the variant.
TProt_silent & SetProt_silent(void)
Select the variant.
TNa_sub & SetNa_sub(void)
Select the variant.
TIns & SetIns(void)
Select the variant.
void ResetFuzzy(void)
Reset Fuzzy data member.
const TNa_identity & GetNa_identity(void) const
Get the variant data.
const TConv & GetConv(void) const
Get the variant data.
const TRepeat & GetRepeat(void) const
Get the variant data.
const TProt_ext & GetProt_ext(void) const
Get the variant data.
@ e_not_set
No variant selected.