NCBI C++ ToolKit
Classes | Functions | Variables
label.cpp File Reference
#include <ncbi_pch.hpp>
#include <serial/enumvalues.hpp>
#include <gui/objutils/label.hpp>
#include <gui/objutils/user_type.hpp>
#include <gui/objutils/taxid_sel_set.hpp>
#include <gui/objutils/tooltip.hpp>
#include <gui/objutils/snp_gui.hpp>
#include <gui/utils/string_utils.hpp>
#include <map>
#include <corelib/ncbimtx.hpp>
#include <util/static_map.hpp>
#include <objects/seq/Bioseq.hpp>
#include <objects/seq/Seq_annot.hpp>
#include <objects/seq/Annot_descr.hpp>
#include <objects/seq/Annotdesc.hpp>
#include <objects/seq/Seq_descr.hpp>
#include <objects/seq/Seqdesc.hpp>
#include <objects/seqalign/Seq_align.hpp>
#include <objects/seqalign/Seq_align_set.hpp>
#include <objects/seqalign/Score.hpp>
#include <objects/seqalign/Dense_seg.hpp>
#include <objects/seqalign/Spliced_seg.hpp>
#include <objects/seqfeat/Gene_ref.hpp>
#include <objects/seqfeat/Gb_qual.hpp>
#include <objects/seqfeat/BioSource.hpp>
#include <objects/seqfeat/Org_ref.hpp>
#include <objects/seqfeat/Imp_feat.hpp>
#include <objects/seqfeat/Variation_ref.hpp>
#include <objects/seqfeat/Variation_inst.hpp>
#include <objects/seqfeat/Delta_item.hpp>
#include <objects/seqfeat/Clone_ref.hpp>
#include <objects/seqfeat/Clone_seq_set.hpp>
#include <objects/seqfeat/Clone_seq.hpp>
#include <objects/seqfeat/VariantProperties.hpp>
#include <objects/seqfeat/Phenotype.hpp>
#include <objects/seqfeat/SubSource.hpp>
#include <objects/seq/Seq_literal.hpp>
#include <objects/seqloc/Seq_id.hpp>
#include <objects/seqloc/Seq_loc.hpp>
#include <objects/seqloc/Seq_interval.hpp>
#include <objects/seqloc/Seq_point.hpp>
#include <objects/seqset/Seq_entry.hpp>
#include <objects/seqset/Bioseq_set.hpp>
#include <objects/general/User_object.hpp>
#include <objects/general/User_field.hpp>
#include <objects/general/Dbtag.hpp>
#include <objects/general/Object_id.hpp>
#include <objects/valerr/ValidError.hpp>
#include <objects/valerr/ValidErrItem.hpp>
#include <objects/biotree/BioTreeContainer.hpp>
#include <objects/biotree/DistanceMatrix.hpp>
#include <objects/genomecoll/GC_AssemblyDesc.hpp>
#include <objects/entrezgene/Entrezgene.hpp>
#include <objects/entrezgene/Entrezgene_Set.hpp>
#include <objects/variation/Variation.hpp>
#include <objects/gbproj/GBProject_ver2.hpp>
#include <objects/gbproj/ProjectDescr.hpp>
#include <objects/gbproj/ProjectFolder.hpp>
#include <objects/gbproj/ProjectItem.hpp>
#include <objmgr/util/sequence.hpp>
#include <objmgr/util/create_defline.hpp>
#include <objmgr/bioseq_set_handle.hpp>
#include <objmgr/align_ci.hpp>
#include <serial/iterator.hpp>
#include <algo/align/util/score_builder.hpp>
#include <objtools/snputil/snp_bitfield.hpp>
#include <objtools/snputil/snp_utils.hpp>
+ Include dependency graph for label.cpp:

Go to the source code of this file.

Go to the SVN repository for this file.

Classes

class  CLabelDescriptionCacheImpl
 
class  CSeq_idHandler
 
class  CSeq_locHandler
 
class  CBioseqHandler
 
class  CVcfVariantHandler
 
class  CBioseq_setHandler
 
class  CUserFeatHandler
 handler specific for User-object features More...
 
class  CSeq_featHandler
 
class  CSeq_entryHandler
 
class  CSeq_alignHandler
 
class  CSeq_align_setHandler
 
class  CSeq_annotHandler
 
class  CValidErrorHandler
 
class  CTaxIDSetLabelHandler
 
class  CGBProject_ver2LabelHandler
 
class  CProjectItemLabelHandler
 
class  CBioTreeContainerHandler
 ******************************************************************* Moved from plugins/algo/init ******************************************************************* More...
 
class  CGCAsssemblyHandler
 CGCAsssemblyHandler label handler. More...
 
class  CDistanceMatrixHandler
 CDistanceMatrix label handler. More...
 
class  CEntrezgeneHandler
 CEntrezgene label handler. More...
 
class  CEntrezgene_SetHandler
 CEntrezgene_Set label handler. More...
 
class  CVariationHandler
 CVariation label handler. More...
 
struct  SForceRegister
 

Functions

 USING_SCOPE (objects)
 
 DEFINE_STATIC_MUTEX (sm_Mutex)
 
static TGi s_GetGi (const CSeq_id &id, CScope *scope)
 
static void s_GetDefline (const CSeq_id &id, CScope *scope, string *label)
 
static void s_GetCachedDescription (const CSeq_id &id, CScope *scope, string *label)
 
static void s_GetSeqLabel (const CSeq_id &id, string *label, CScope *scope, CLabel::ELabelType type)
 
static void s_GetSeq_intervalLabel (const CSeq_interval &interval, string *label, CScope *scope, CLabel::ELabelType type, const CSeq_id *last_id=NULL)
 
static void s_GetSeq_TotalRangeLabel (const CSeq_loc &loc, string *label, CScope *scope, CLabel::ELabelType type)
 
static void s_BreakSeq_loc (const CSeq_loc &loc, vector< CRef< CSeq_loc > > &locs, CScope *scope)
 
static const CSeq_ids_GetLabel (const CSeq_loc &loc, string *label, CScope *scope, CLabel::ELabelType type, const CSeq_id *last_id=NULL)
 
static void s_GetBioseq_setType (const CBioseq_set &bst, string *label)
 
static void s_GetIdLabel (const CBioseq_set &bst, string *label, CScope *scope)
 
static void s_GetNucProtContent (const CBioseq_set &bst, string *label, CScope *scope)
 
static void s_GetSegsetContent (const CBioseq_set &bst, string *label, CScope *scope)
 
static void s_GetGenProdContent (const CBioseq_set &bst, string *label, CScope *scope)
 
static void s_GetBioseq_setContent (const CBioseq_set &bst, string *label, CScope *scope)
 
static bool s_HasAlignment (const CBioseq_set &bst, CScope *scope)
 
static int s_GetChildNum (const objects::CSeq_feat &feat)
 
static bool s_IsLOH (const CVariation_ref &var)
 
static bool s_IsCopyNumberMethod (const CVariation_ref::TMethod &method)
 
static void s_GetAlignmentType (const CSeq_align &align, string *label)
 
static void s_GetAlignmentContent (const CSeq_align &align, string *label, CScope *scope)
 
static size_t s_CountSegments (const CSeq_align &align)
 
static void s_GetAlignmentTooltip (const CSeq_align &align, string *label, CScope *scope)
 
static void s_GetAnnotType (const CSeq_annot &annot, string *label)
 
static void s_GetAnnotContent (const CSeq_annot &annot, string *label, CScope *scope)
 

Variables

static std::unique_ptr< CLabelDescriptionCacheImpls_DescrCachePtr
 
static CFastMutex s_DFLock
 
static sequence::CDeflineGenerator s_DefGen
 This class seems to be non-thread safe even as a stack var. More...
 
static SForceRegister sm_ForceRegistration
 

Function Documentation

◆ DEFINE_STATIC_MUTEX()

DEFINE_STATIC_MUTEX ( sm_Mutex  )

◆ s_BreakSeq_loc()

static void s_BreakSeq_loc ( const CSeq_loc loc,
vector< CRef< CSeq_loc > > &  locs,
CScope scope 
)
static

◆ s_CountSegments()

static size_t s_CountSegments ( const CSeq_align align)
static

◆ s_GetAlignmentContent()

static void s_GetAlignmentContent ( const CSeq_align align,
string label,
CScope scope 
)
static

◆ s_GetAlignmentTooltip()

static void s_GetAlignmentTooltip ( const CSeq_align align,
string label,
CScope scope 
)
static

Definition at line 2444 of file label.cpp.

References buf, CSeq_align::CheckNumRows(), count, NStr::DoubleToString(), CSeq_align_Base::C_Segs::e_Dendiag, CSeq_align_Base::C_Segs::e_Denseg, CSeq_align_Base::C_Segs::e_Disc, CSeq_align_Base::C_Segs::e_not_set, CSeq_align_Base::C_Segs::e_Packed, CSeq_align_Base::C_Segs::e_Std, CLabel::eContent, CSeq_id::eContent, eGetId_Best, eNa_strand_plus, CSeq_align::eScore_IdentityCount, CSeq_align::eScore_MismatchCount, CSeq_align::eScore_PercentCoverage, CSeq_align::eScore_PercentIdentity, NStr::fWithCommas, CSeq_align_set_Base::Get(), CScoreBuilderBase::GetAlignLength(), CDbtag_Base::GetDb(), CSeq_align_Base::C_Segs::GetDenseg(), CSeq_align_Base::C_Segs::GetDisc(), CScoreBuilderBase::GetGapCount(), CSeq_id_Base::GetGeneral(), CSeq_id_Handle::GetHandle(), GetId(), CObject_id_Base::GetId(), CScore_Base::GetId(), CDense_seg_Base::GetIds(), CScore_Base::C_Value::GetInt(), CSeq_id::GetLabel(), CScoreBuilderBase::GetMismatchCount(), CSeq_align::GetNamedScore(), CScoreBuilderBase::GetPercentCoverage(), CScore_Base::C_Value::GetReal(), CSeq_align_Base::GetScore(), CSeq_align_Base::GetSegs(), CSeq_align::GetSeq_id(), CSeq_id_Handle::GetSeqId(), CSeq_id_Handle::GetSeqIdOrNull(), CDense_seg::GetSeqRange(), CSeq_align::GetSeqRange(), CSeq_align::GetSeqStrand(), CObject_id_Base::GetStr(), CScore_Base::GetValue(), i, NStr::IntToString(), CSeq_id_Base::IsGeneral(), CObject_id_Base::IsId(), CScore_Base::C_Value::IsReal(), CScore_Base::IsSetId(), CSeq_align_Base::IsSetScore(), ITERATE, label, compile_time_bits::range(), s_CountSegments(), s_GetAlignmentContent(), s_GetSeqLabel(), NStr::SizetToString(), str(), and CSeq_align_Base::C_Segs::Which().

Referenced by CSeq_alignHandler::GetLabel().

◆ s_GetAlignmentType()

static void s_GetAlignmentType ( const CSeq_align align,
string label 
)
static

◆ s_GetAnnotContent()

static void s_GetAnnotContent ( const CSeq_annot annot,
string label,
CScope scope 
)
static

◆ s_GetAnnotType()

static void s_GetAnnotType ( const CSeq_annot annot,
string label 
)
static

◆ s_GetBioseq_setContent()

static void s_GetBioseq_setContent ( const CBioseq_set bst,
string label,
CScope scope 
)
static

◆ s_GetBioseq_setType()

static void s_GetBioseq_setType ( const CBioseq_set bst,
string label 
)
static

◆ s_GetCachedDescription()

static void s_GetCachedDescription ( const CSeq_id id,
CScope scope,
string label 
)
static

Definition at line 430 of file label.cpp.

References CSeq_id::eBoth, CSeq_id::fLabel_Default, label, s_DescrCachePtr, s_GetDefline(), s_GetGi(), and ZERO_GI.

Referenced by s_GetSeqLabel().

◆ s_GetChildNum()

static int s_GetChildNum ( const objects::CSeq_feat &  feat)
static

Definition at line 1384 of file label.cpp.

References NStr::StringToInt().

Referenced by CSeq_featHandler::GetLabel().

◆ s_GetDefline()

static void s_GetDefline ( const CSeq_id id,
CScope scope,
string label 
)
inlinestatic

◆ s_GetGenProdContent()

static void s_GetGenProdContent ( const CBioseq_set bst,
string label,
CScope scope 
)
static

◆ s_GetGi()

static TGi s_GetGi ( const CSeq_id id,
CScope scope 
)
static

◆ s_GetIdLabel()

static void s_GetIdLabel ( const CBioseq_set bst,
string label,
CScope scope 
)
static

◆ s_GetLabel()

static const CSeq_id* s_GetLabel ( const CSeq_loc loc,
string label,
CScope scope,
CLabel::ELabelType  type,
const CSeq_id last_id = NULL 
)
inlinestatic

◆ s_GetNucProtContent()

static void s_GetNucProtContent ( const CBioseq_set bst,
string label,
CScope scope 
)
static

◆ s_GetSegsetContent()

static void s_GetSegsetContent ( const CBioseq_set bst,
string label,
CScope scope 
)
static

◆ s_GetSeq_intervalLabel()

static void s_GetSeq_intervalLabel ( const CSeq_interval interval,
string label,
CScope scope,
CLabel::ELabelType  type,
const CSeq_id last_id = NULL 
)
inlinestatic

◆ s_GetSeq_TotalRangeLabel()

static void s_GetSeq_TotalRangeLabel ( const CSeq_loc loc,
string label,
CScope scope,
CLabel::ELabelType  type 
)
inlinestatic

◆ s_GetSeqLabel()

static void s_GetSeqLabel ( const CSeq_id id,
string label,
CScope scope,
CLabel::ELabelType  type 
)
inlinestatic

◆ s_HasAlignment()

static bool s_HasAlignment ( const CBioseq_set bst,
CScope scope 
)
static

◆ s_IsCopyNumberMethod()

static bool s_IsCopyNumberMethod ( const CVariation_ref::TMethod method)
static

◆ s_IsLOH()

static bool s_IsLOH ( const CVariation_ref var)
static

◆ USING_SCOPE()

USING_SCOPE ( objects  )

Variable Documentation

◆ s_DefGen

sequence::CDeflineGenerator s_DefGen
static

This class seems to be non-thread safe even as a stack var.

Definition at line 413 of file label.cpp.

Referenced by s_GetDefline().

◆ s_DescrCachePtr

std::unique_ptr<CLabelDescriptionCacheImpl> s_DescrCachePtr
static

◆ s_DFLock

CFastMutex s_DFLock
static

Definition at line 412 of file label.cpp.

Referenced by s_GetDefline().

◆ sm_ForceRegistration

SForceRegister sm_ForceRegistration
static

Definition at line 3640 of file label.cpp.

Modified on Fri Sep 20 14:57:29 2024 by modify_doxy.py rev. 669887