Basic seq-loc information and verification
enum ESeqLocCheck { eSeqLocCheck_ok , eSeqLocCheck_warning , eSeqLocCheck_error } SeqLocCheck results. More...Check if the two CSeq_locs are abutting
enum ECompare {Sets bits for incomplete location and/or errors
enum ESeqlocPartial {Seq-loc operations All operations create and return a new seq-loc object.
Optional scope or synonym mapper may be provided to detect and convert synonyms of a bioseq.
CRef< CSeq_loc > Seq_loc_Merge (const CSeq_loc &loc, CSeq_loc::TOpFlags flags, CScope *scope) Merge ranges in the seq-loc. More...CSeq_locs do not overlap or abut.
eContainedFirst CSeq_loc contained by second.
eContainsFirst CSeq_loc contains second.
eSameCSeq_locs contain each other.
eOverlapCSeq_locs overlap.
eAbuttingAbutting seq-locs.
The flag can be returned only by the 4-argument version of Compare() if fCompareAbutting flag is set in the TCompareFlags argument.
eAbutAndOverlapSeq-locs do both abut and overlap.
The flag can be returned only by the 4-argument version of Compare() if fCompareAbutting flag is set in the TCompareFlags argument.
Definition at line 177 of file seq_loc_util.hpp.
◆ EOffsetType Enumerator eOffset_FromStartFor positive-orientation strands, start = left and end = right; for reverse-orientation strands, start = right and end = left.
relative to beginning of location
eOffset_FromEndrelative to end of location
eOffset_FromLeftrelative to low-numbered end
eOffset_FromRightrelative to high-numbered end
Definition at line 263 of file seq_loc_util.hpp.
◆ EOverlapFlagsFlags, controlling behavior of TestForOverlapEx().
Enumerator fOverlap_NoMultiSeqThrow if locations reference multiple bioseqs.
fOverlap_NoMultiStrandThrow if locations reference multiple strands.
fOverlap_IgnoreTopologyIgnore sequence topology (circularity)
fOverlap_DefaultEnable multi-id, multi-strand, check topology.
Definition at line 300 of file seq_loc_util.hpp.
◆ EOverlapType Enumerator eOverlap_Simpleany overlap of extremes
eOverlap_Contained2nd contained within 1st extremes
eOverlap_Contains2nd contains 1st extremes
eOverlap_Subset2nd is a subset of 1st ranges
eOverlap_SubsetRev1st is a subset of 2nd ranges
eOverlap_CheckIntervals2nd is a subset of 1st with matching boundaries
eOverlap_CheckIntRev1st is a subset of 2nd with matching boundaries
eOverlap_Intervalat least one pair of intervals must overlap
Definition at line 277 of file seq_loc_util.hpp.
◆ ESeqLocCheckSeqLocCheck results.
Enumerator eSeqLocCheck_ok eSeqLocCheck_warning eSeqLocCheck_errorDefinition at line 144 of file seq_loc_util.hpp.
◆ ESeqlocPartial Enumerator eSeqlocPartial_Complete eSeqlocPartial_Start eSeqlocPartial_Stop eSeqlocPartial_Internal eSeqlocPartial_Other eSeqlocPartial_Nostart eSeqlocPartial_Nostop eSeqlocPartial_Nointernal eSeqlocPartial_Limwrong eSeqlocPartial_HaderrorDefinition at line 336 of file seq_loc_util.hpp.
◆ FCompareFlags Enumerator fCompareAbuttingCheck if seq-locs are abutting (loc2 follows loc1)
fCompareOverlappingCheck if seq-locs are overlapping.
fCompareAll fComparePositionalUse positional coordinates (ignore strands) when looking for abutting locations.
Definition at line 212 of file seq_loc_util.hpp.
◆ BadSeqLocSortOrder() [1/2] ◆ BadSeqLocSortOrder() [2/2] ◆ ChangeSeqId() ◆ ChangeSeqLocId() ◆ Compare() [1/2]Returns the sequence::ECompare containment relationship between CSeq_locs.
For backward compatibility the function does not check for abutting seq-locs and never returns eAbutting or eAbutAndOverlap.
Definition at line 1202 of file seq_loc_util.cpp.
References s_CompareOverlapping().
Referenced by CRecomputeIntervals::apply(), CLocationEditPolicy::ApplyPolicyToFeature(), BOOST_AUTO_TEST_CASE(), CDiscrepancyContext::Compare(), CSpecificHostModel::Compare(), CAnnotCompare::CompareFeats(), CAutoDefFeatureClause::CompareLocation(), CSeq_id_Textseq_Info::CompareOrdered(), variation::Contains(), rapidjson::internal::BigInteger::Difference(), PCase_Generic< T >::Equals(), PNocase_Generic< T >::Equals(), PNocase_Conditional_Generic< T >::Equals(), variation::FindSSRLoc(), fta_perform_operon_checks(), GenelocContained(), CGeneFinder::GetAssociatedGeneInfo(), GetCdRegionCB(), CConvertBadCdsAndRnaToMiscFeat::getCdsOverlap(), GetFeatureProtein(), GetGeneForFeature(), GetMrnasForGene(), GetOverlappingFeatures(), GetProtRefDescr(), CCompareSeq_locs::GetResult(), CConvertBadCdsAndRnaToMiscFeat::getRnaOverlap(), IsDuplicate(), CCleanup::IsGeneXrefUnnecessary(), IsLocationInFrame(), PCase_Generic< T >::Less(), PNocase_Generic< T >::Less(), PNocase_Conditional_Generic< T >::Less(), CmRNACDSLinker::LinkByLabelAndLocation(), CCompareSeqRegions::NextComparisonGroup(), CCodeBreakEqual::operator()(), COverlapPairLess::operator()(), CAutoDefModifierCombo::operator<(), CAutoDefSourceGroup::operator<(), CAutoDefSourceModifierInfo::operator<(), CAutoDefModifierCombo::operator>(), CAutoDefSourceGroup::operator>(), CAutoDefSourceModifierInfo::operator>(), CCleanup::ParseCodeBreak(), CGeneFinder::CGeneSearchPlugin::processMainLoop(), RemoveUnneededMiscFeats(), CDemoApp::Run(), s_AreLinkedToDifferentFeats(), s_FixCollidingIDs_Annot(), s_LocationStrandsIncompatible(), ScannGeneName(), CTableDataBioTreeContainer::SelectSeqIds(), CCleanup::SetGenePartialByLongestContainedFeature(), variation_ref::CVariationUtil::SetVariantProperties(), CValidError_bioseq::ValidateDelta(), CValidError_bioseq::ValidateMultipleGeneOverlap(), CValidError_feat::ValidateOneFeatXrefPair(), CValidError_annot::ValidateSeqAnnotContext(), CEditObjectSeq_feat::x_AdjustGene(), CCompareSeq_locs::x_CompareInts(), CValidError_bioseq::x_CompareStrings(), CCorrectGenesDialog::x_CorrectPairInterval(), CSGAlignmentJob::x_CreateAlignGlyphsForCrossOriginAlign(), CSGFeatureJob::x_CreateCrossOriginGlyphs(), CFlatGatherer::x_FeatComments(), CSGAlignmentJob::x_GetAlignments(), CCDSTranslationProblems::x_GetTranslExceptProblems(), CCdregionValidator::x_HasGoodParent(), CValidError_bioseq::x_ReportOverlappingPeptidePair(), CNewCleanup_imp::x_SeqFeatRnaGBQualBC(), COligoSpecificityCheck::x_SequencesMappedToSameTarget(), CSequenceUpdater::x_ShouldImportFeature(), IEditingActionFeat::x_TestGeneForFeature(), CCorrectGenesDialog::x_TestGeneForFeature(), CEditObjectSeq_feat::x_UpdatemRNA(), CCdregionValidator::x_ValidateCDSPeptides(), CCdregionValidator::x_ValidateCodebreak(), and CRNAValidator::x_ValidateTrnaData().
◆ Compare() [2/2]Compare the seq-locs.
Depending on the selected flags the function checks if the seq-locs are abutting (loc2 immediately follows loc1), overlap (see ECompare) or both. Unless fComparePositional flag is set, locations are compared using biological order of ranges: if locations are on minus strand, to be abutting the first location must begin right after the second location's end.
Definition at line 1211 of file seq_loc_util.cpp.
References eAbutAndOverlap, eAbutting, eExtreme_Biological, eExtreme_Positional, eNoOverlap, fCompareAbutting, fCompareOverlapping, fComparePositional, flags, s_CheckAbutting(), and s_CompareOverlapping().
◆ GetCoverage()Get number of unique bases in the location.
Definition at line 223 of file seq_loc_util.cpp.
References CSeq_loc_Base::e_Bond, CSeq_loc_Base::e_Empty, CSeq_loc_Base::e_Equiv, CSeq_loc_Base::e_Feat, CSeq_loc_Base::e_Int, CSeq_loc_Base::e_Mix, CSeq_loc_Base::e_not_set, CSeq_loc_Base::e_Null, CSeq_loc_Base::e_Packed_int, CSeq_loc_Base::e_Packed_pnt, CSeq_loc_Base::e_Pnt, CSeq_loc_Base::e_Whole, CSeq_loc_Base::GetInt(), GetLength(), CSeq_interval::GetLength(), CSeq_loc_Base::GetWhole(), NCBI_THROW, and CSeq_loc_Base::Which().
Referenced by CAdjustFeatsForIntrons::apply(), s_TestForOverlapEx(), IEditingActionFeat::x_TestGeneForFeature(), and CCorrectGenesDialog::x_TestGeneForFeature().
◆ GetId()If all CSeq_ids embedded in CSeq_loc refer to the same CBioseq, returns the first CSeq_id found, else throws CObjmgrUtilException exception.
Definition at line 359 of file seq_loc_util.cpp.
References msg(), NCBI_THROW, NULL, and s_GetId().
Referenced by CLinkUtils::AddBlastProductLink(), CExportTableDlg::AddCdsGeneMrnaTable(), AddChromosomeNoLocation(), CExportTableDlg::AddDblinkToTable(), AddDefaultSentinelFeats(), CExportTableDlg::AddDeflinesToTable(), CExportTableDlg::AddFeaturesToTable(), CExportTableDlg::AddPubsToTable(), CAlignFilter::AddQSRangeRestriction(), CExportTableDlg::AddRnaToTable(), CLinkUtils::AddSequenceLinks(), CExportTableDlg::AddSourceToTable(), CSAM_CIGAR_Formatter::AdjustSeqIdType(), variation::CVariationUtil::AsVariation(), CAttachedHandles::Attach(), variation::CVariationUtil::AttachProteinConsequences(), CIStreamClassMemberIterator::BeginClassMember(), BlastXML_FormatReport(), BOOST_AUTO_TEST_CASE(), CCDSTranslationProblems::CalculateTranslationProblems(), CTestProtProd_EntrezNeighbors::CanTest(), CCompareSeqRegions::CCompareSeqRegions(), variation::ChangeIdsInPlace(), CheckDuplicates(), CVisibleRange::Clamp(), CBarcodeTool::ClickLink(), IProjectViewFactory::CombineInputObjects(), CRemoveSequencesDlg::CombineLabels(), CRemoveSequencesDlg::CombineLabelsAll(), IProjectViewFactory::CombineObjects(), CTableViewWithTextViewNav::CombineObjects(), CSeq_id::ComposeOSLT(), CRevCompSequencesDlg::CreateControls(), CSeqIdFixDlg::CreateControls(), CQualPanel< T1 >::CreateControls(), CCDSTranslationPanel::CreateControls(), variation_ref::CVariationUtil::CreateFlankLocs(), variation::CVariationUtil::CreateFlankLocs(), CGuiObjectInfoSeq_id::CreateObject(), CGuiObjectInfoSeq_loc::CreateObject(), variation::CreateSplicedSeqAlignFromFeat(), CTrackConfigManager::CreateTrackConfig(), variation::CreateUnknownProtConsequenceVariation(), CSGSequenceDS::CSGSequenceDS(), CSortedBioseqs::CSortedBioseqs(), CSelectionVisitor::DeSelectObject(), DoImportFTable(), CMAViewManager::DoTransition(), CSequenceEditingEventHandler::ExportStructuredCommentsTable(), CItemsInfo::Find(), FindHighestFeatureId(), FindNewLocations(), variation::FindSSRLoc(), get_accession_from_id(), CSeqUtils::GetAccessionPlacementsMsec(), CIdResolver::GetAccessionVersion(), GetAccVer(), GetAlignmentForRna(), CObjFingerprint::GetAlignSignature(), GetAnchors(), CFindRSites::GetAnnot(), CGnomonEngine::GetAnnot(), CGeneFinder::GetAssociatedGeneInfo(), CGenbankIdResolve::GetBestId(), CAddFluComments::GetBestLabel(), CFeaturePropagator::CSynonymMapper::GetBestSynonym(), GetCDSProductSequence(), CSeqUtils::GetChrId(), CAddFeatureBetweenDlg::GetCommand(), CBulkCDSAddPanel::GetCommand(), CFarPointerSeq::GetCommand(), CMixedStrands::GetCommand(), CRemoveSequencesDlg::GetCommand(), CObjFingerprint::GetComponentSignature(), CObjectCoords::GetCoordinates(), CDesktopBioseqItem::GetDescription(), CDesktopBioseqsetItem::GetDescription(), CPhyloTree::GetExplicitlySelectedIDs(), CObjFingerprint::GetFeatSignature(), variation::GetFocusLocusIDs(), CObjFingerprint::GetGraphSignature(), CObjFingerprint::GetHistogramSignature(), CFeatGlyph::GetHTMLActiveAreas(), variation::CHgvsParser::CContext::GetId(), CSeqVecSeqInfoSrc::GetId(), GetIdHandle(), CDemoApp::GetIds(), GetIdStartStopStrandStr(), CWriteUtil::GetIdType(), CItemsInfo::GetItemsByTagInfo(), CSeq_featHandler::GetLabel(), CDbtag::GetLabel(), CGuiObjectInfoComponent::GetLinks(), CGuiObjectInfoSeq_align::GetLinks(), CBulkLocationPanel::GetLocForBioseq(), GetMiscTableFromSeqEntry(), GetMRNATranslationProblems(), GetNewProtId(), CClusterDBSource::GetNext(), CSequenceUpdater::GetNotImportedFeatsReport(), CTableDataBioTreeContainer::GetObjectValue(), CMasterContext::GetPartNumber(), CBioseqContext::GetPreferredSynonym(), CCreateFeat::GetProductId(), GetProductLabel(), CProjectView::GetReflectionInfo(), CObjFingerprint::GetRsiteSignature(), CPhyloTree::GetSelectedIDs(), CSeqTable_column::GetSeq_id(), CBlastQuerySourceOM::GetSeqId(), CObjFingerprint::GetSeqLocSignature(), GetSequenceType(), GetStart(), GetStop(), CCommentItem::GetStringForTPA(), CTableDataGBProject::GetStringValue(), CTableDataGCAssembly::GetStringValue(), COrg_ref::GetTaxId(), CGuiObjectInfoSeq_align::GetToolTip(), CGuiObjectInfoClone::GetToolTip(), variation::GetUniquePrimaryTranscriptId(), CObjFingerprint::GetVcfVariantSignature(), CAlignGroup::GroupBySeqIds(), CAlignGroup::GroupBySequenceType(), CBinsTrack::InitHTMLActiveArea(), CVarTrack::InitHTMLActiveArea(), CViewGraphic::InitView(), CVcfTableView::InitView(), CSGUtils::IsChromosome(), CGuiSeqInfoSeq_id::IsDNA(), CGencollSvc::isGenCollSequence(), CSGUtils::IsmRNA(), CGuiObjectInfoSeq_align::IsPolyA(), CGuiSeqInfoSeq_id::IsProtein(), CSGUtils::IsRefSeq(), CSGUtils::IsSegSet(), CFastaObjectLoader::LoadFromStream(), MakeOriginalLabelForId(), CLocMapper_Default::Map(), CCdregionValidator::MapToNTCoords(), CAlignFilter::Match(), CVisibleRange::Match(), CMAViewManager::NeedAnchorPanel(), CSeqGraphicWidget::OnAddTrack(), CMultiFileInput::OnBrowseBtn(), CSequenceGotoDlg::OnCancelClick(), CwxMarkerInfoDlg::OnCancelClick(), CCustomTree::OnClick(), CSequenceGotoDlg::OnCloseWindow(), CwxMarkerInfoDlg::OnCloseWindow(), CCustomTree::OnDblClick(), CFieldChoicePanel::OnFieldTypeChoiceSelected(), CGrid::OnLeftDown(), CDiscrepancyPanel::OnListClk(), wxCheckedListCtrl::OnMouseEvent(), CGrid::OnMouseMove(), CNoFocusBitmapButton::OnMouseUp(), CSequenceGotoDlg::OnOkClick(), CwxMarkerInfoDlg::OnRemoveAllButtonClick(), CwxMarkerInfoPanel::OnRemoveButtonClick(), CRevCompSequencesDlg::OnSelect(), CwxTrackSettingsDlg::OnTrackTypeChanged(), CId::operator const TId &(), CPrimeCacheApplication::CCacheBioseq::operator()(), SCompareFeats_OpLess::operator()(), CAlignSort::SAlignExtractor::operator()(), SBlobCopier::operator()(), STreeNodeMapper::operator()(), CObjFingerprint::ParseSignature(), PatchTargetSequence(), CFeatureFieldNamePanel::PopulateFeatureListbox(), CTabularFormatter_SeqId::Print(), PrintBestSeqId(), CBlastFormat::PrintReport(), CFeaturePropagator::Propagate(), CHgvsReader::ReadSeqAnnot(), CGiCache::RecordKnown(), CSeqUtils::RemapChildToParent(), variation::CVariationUtil::RemapToAnnotatedTarget(), ReplaceWellknownSeqs(), SPSG_StatsData::SData< TDataId >::Report(), ReportMailReportLine(), CAgpExportJob::Run(), CWinMaskDemoApplication::Run(), CAsnCacheTestApplication::Run(), CTestBMApp::Run(), CTestProtProd_EntrezNeighbors::RunTest(), s_AddSitesToAnnot(), s_AgpWrite(), s_BlastSeqLoc2CSeqloc(), s_BlastXMLAddIteration(), s_BreakSeq_loc(), s_CheckQuals_cdregion(), s_CheckTraceMateAlign(), s_CompareProtProdToTrans(), CFixFeatureId::s_FindHighestFeatureId(), s_Fingerprint_Seq_id(), s_FormatPatent(), s_GetAccession(), s_GetAlignmentTooltip(), s_GetAnnotContent(), s_GetBioseqAcc(), s_GetCdregionContentLabel(), s_GetCdregionLabel(), s_GetCdregionPlusUpstream(), s_GetDbxrefFromProduct(), s_GetDescription(), NSearchFeatPanel::s_GetFeatureLabel(), s_GetGi(), s_GetIdString(), NSearchFeatPanel::s_GetSeq_TotalRangeLabel(), s_GetSeq_TotalRangeLabel(), s_GetSeqLabel(), s_LocIdType(), s_ObjectIdToStr(), s_ProcessIntraScaffoldTail(), s_RecordSeqId(), s_RemapChildToParent(), s_Render_SeqAlign(), s_SeqAlignToXMLHit(), variation::CHgvsParser::s_SeqIdToHgvsStr(), s_TestQueriesAsBioseqs(), s_TestQueriesAsSeq_locs(), s_TestResultAlignment(), CConversionResultPanel::SetObjects(), variation::CVariationUtil::SetPlacementProperties(), COrg_ref::SetTaxId(), sFindAnchorRow(), sGenerateFields(), variation::CHgvsParser::sx_AppendMoltypeExceptions(), CIdHandler::ToCanonical(), CFeatureGenePanel::TransferDataFromWindow(), CMatchFeatureTableDlg::TransferDataToWindow(), CCDSTranslationPanel::TransferDataToWindow(), variation::CVariationUtil::TranslateNAtoAA(), TSeqLocVector2Packed_seqint(), UpdateOrgInformation(), CValidError_bioseqset::ValidateGenProdSet(), CValidError_bioseq::ValidateSegRef(), CValidError_bioseq::ValidateSeqParts(), CSeq_id::WriteAsFasta(), CAgpFastaComparator::CTmpSeqVecStorage::WriteData(), CMultiAligner::x_AddNewSegment(), CFeatureItem::x_AddQualsProt(), CFeatureItem::x_AddQualsRna(), CMixedStrands::x_AddSequenceIds(), CDBSourceItem::x_AddSPBlock(), CDescPlacementPanel::x_AddToStrings(), variation::CHgvsParser::x_AsHgvsInstExpression(), variation::CVariationUtil::CCdregionIndex::x_CacheSeqData(), CPrimeCacheApplication::x_CacheSeqEntry(), CFastaExportJob::x_CheckForDuplicates(), CCompareSeq_locs::x_Compare(), CSeq_id_Resolver::x_Create(), CSeq_id_Resolver__LRG::x_Create(), CSeq_id_Resolver__CCDS::x_Create(), CSeq_id_Resolver__ChrNamesFromGC::x_Create(), CFeatureGraph::x_CreateMapRanges(), CTaxTreeToolJob::x_CreateProjectItems(), CCreateNeedlemanWunschJob::x_CreateProjectItems(), CProSplignJob::x_CreateProjectItems(), CSplignJob::x_CreateProjectItems(), CTreeBuilderJob::x_CreateProjectItems(), CDisplaySeqalign::x_DisplayBl2SeqLink(), CDisplaySeqalign::x_DisplaySequenceIDForQueryAnchored(), CComponentSearchJob::x_DoSearch(), CCpgSearchJob::x_DoSearch(), COrfSearchJob::x_DoSearch(), CAsnSubCacheCreateApplication::x_EliminateIdsAlreadyInCache(), CAsnSubCacheCreateApplication::x_FetchMissingBlobs(), CGBDocument::x_FireProjectChanged(), CAlignFilter::x_FuncCall(), CTableDataAlnSummary::x_GetAlnSummary(), CSGSegmentSmearJob::x_GetCacheKey(), CCreateGeneModelTask::x_GetCommand(), CCommonComponentScorer::x_GetDeltaExtCompList(), CSingleFeatValidator::x_GetFeatureProduct(), CTSE_Info::x_GetFeaturesById(), CImportFeatTable::x_GetFixedId(), CValidError_align::x_GetIds(), x_GetLabel_Content(), variation::CVariationUtil::x_GetLiteralAtLoc(), CUpdateSeqPanel::x_GetNameAndLength(), CCommonComponentScorer::x_GetSeqHistCompList(), CPhyTreeFormatter::x_GetSeqIDString(), CPrimaryItem::x_GetStrForPrimary(), CAlignGroup::x_GetTaxId(), CCommonComponentScorer::x_GetUserCompList(), CFastaExportJob::x_GetWholeLoc(), CFeatureGenerator::SImplementation::x_HandleRnaExceptions(), variation::CHgvsParser::x_header(), variation::CVariationUtil::x_InferNAfromAA(), CNAUtils::x_Init(), CSequenceDataTester::x_Init(), CSeq_loc_Mapper::x_InitGCSequence(), CSFTranslationJob::x_InitGeneticCode(), CPhyTreeFormatter::x_InitTreeFeatures(), variation_ref::CHgvsParser::x_InstToString(), CGather_Iter::x_IsBioseqHandleOkay(), CAlignGlyph::x_IsSRA(), CGenbankFormatter::x_LocusHtmlPrefix(), CTSE_Info::x_MapChunkByFeatId(), CTSE_Info::x_MapFeatById(), CReportEntry::x_NewCoordinate(), CGroupMapWidget::x_OnSelectItem(), variation::CHgvsParser::x_PlacementCoordsToStr(), CDisplaySeqalign::x_PrepareRowData(), CGenBankLoadOptionPanel::x_ProccessText(), CAgpFastaComparator::x_Process(), CPrimeCacheApplication::x_Process_Fasta(), CPrimeCacheApplication::x_Process_Ids(), CGeneModelFeatJob::x_ProcessLandMarkFeatures(), CXcompareAnnotsApplication::x_ProcessMappingRange(), CXcompareAnnotsApplication::x_ProcessMappingRanges(), CAlignFilter::x_Query_Op(), CAltValidator::x_QueryAccessions(), variation::CVariationUtil::x_Remap(), CRNAValidator::x_ReportRNATranslationProblems(), CCdregionValidator::x_ReportTranslationProblems(), COligoSpecificityCheck::x_SavePrimerInfo(), CSequenceSearchJob::x_SearchSequence(), CMapControl::x_SendSelectionEvent(), variation_ref::CHgvsParser::x_SeqLocToStr(), CBioseqContext::x_SetId(), CLocusItem::x_SetName(), CMasterContext::x_SetNumParts(), CFeatureGenerator::SImplementation::x_SetQualForGapFilledModel(), CMappingObjectLoader::x_ShowMappingDlg(), CSeqTableGridPanel::x_SortByRowLabel(), CPrimeCacheApplication::x_StripSeqEntry(), variation::CHgvsParser::x_translocation(), CIdResolver::x_TryProcessGenomicLRG(), CIdResolver::x_TryProcessLRG(), CTSE_Info::x_UnmapFeatById(), CAssemblyListPanel::x_UpdateSearchTerm(), CCdregionValidator::x_ValidateCommonProduct(), CSingleFeatValidator::x_ValidateSeqFeatProduct(), CValidError_align::x_ValidateSeqLength(), CValidError_align::x_ValidateStrand(), CGff3Writer::xAssignAlignmentDensegGap(), CGff3Writer::xAssignAlignmentDensegMethod(), CGff3Writer::xAssignAlignmentDensegSeqId(), CGff3FlybaseWriter::xAssignAlignmentDensegSeqId(), CGff3Writer::xAssignAlignmentDensegTarget(), CGff3FlybaseWriter::xAssignAlignmentDensegTarget(), CGff3Writer::xAssignAlignmentDensegType(), CGff3Writer::xAssignAlignmentSplicedMethod(), CGff3Writer::xAssignAlignmentSplicedSeqId(), CGff3FlybaseWriter::xAssignAlignmentSplicedSeqId(), CGff3Writer::xAssignAlignmentSplicedTarget(), CGff3FlybaseWriter::xAssignAlignmentSplicedTarget(), CGff3Writer::xAssignAlignmentSplicedType(), CGffIdGenerator::xExtractFarAccession(), CEditObjectFeaturePropagate::xInit(), and CGff3Writer::xSplicedSegHasProteinProd().
◆ GetIdHandle()Definition at line 372 of file seq_loc_util.cpp.
References CSeq_id_Handle::GetHandle(), GetId(), and CSeq_loc_Base::IsNull().
Referenced by CLinkUtils::AddBlastProductLink(), CVisibleRange::Clamp(), IProjectViewFactory::CombineInputObjects(), Convert_Entrezgene_Seq_loc_Product(), Convert_Seq_annot_Seq_id(), Convert_Seq_annot_Seq_loc_TotalRange(), Convert_Seq_feat_Seq_loc_Gen_Loc_TotalRange(), Convert_Seq_loc_Seq_id(), COpenViewManager::DoAsyncConversion(), CGeneFinder::GetAssociatedGeneInfo(), CGenbankIdResolve::GetBestId(), CObjFingerprint::GetFeatSignature(), SGeneCdsmRnaFeats::GetID(), CObjFingerprint::GetRsiteSignature(), CAlignSpanView::GetSelection(), CObjFingerprint::GetVcfVariantSignature(), CResolveRequest::Process(), CFeatCompareJob_Align::Run(), CFeatCompareJob_Location::Run(), CDemoApp::Run(), s_AddCoalescedLocations(), s_GetDescription(), CConversionResultPanel::SetObjects(), CComponentSearchJob::x_DoSearch(), CFlatGatherer::x_GatherFeaturesOnRange(), CFlatGatherer::x_GatherFeaturesOnRangeIdx(), CFlatGatherer::x_GatherFeaturesOnWholeLocation(), CCreateGeneModelTask::x_GetCommand(), CSeqTextView::x_MergeObjects(), CFeatTableView::x_MergeObjects(), CViewGraphic::x_MergeObjects(), COligoSpecificityCheck::x_SequencesMappedToSameTarget(), CBioseqContext::x_SetLocation(), CGtfWriter::xAssignFeatureMethod(), and CGff3Writer::xWriteRecord().
◆ GetLength() [1/3]Get sequence length if scope not null, else return max possible TSeqPos.
Definition at line 71 of file seq_loc_util.cpp.
References CBioseq_Handle::GetBioseqLength(), and max().
Referenced by CSequenceInputStats::AddQueryBatch(), variation_ref::CVariationUtil::AdjustDelinsToInterval(), AdjustFeatureEnd3(), AdjustFeatureEnd5(), CConvertSelectedGaps::apply_impl(), BlastXML_FormatReport(), BOOST_AUTO_TEST_CASE(), BuildBigGoodNucProtSet(), check_end_internal(), CChainer::CChainerImpl::CheckCompatibility(), CheckForEmptySequences(), variation::CVariationUtil::CheckPlacement(), CkEndStop(), CChain::ClipLowCoverageUTR(), CChain::CollectTrustedmRNAsProts(), CreateAlignSetFromAnchoredAln(), CBlastBioseqMaker::CreateBioseqFromId(), CTestObjMgr::CreateBlastSearchQuery(), CreateDense_diagFromAnchoredAln(), CreateDensegFromAnchoredAln(), CreatePackedsegFromAnchoredAln(), CSeqTextDataSourceInterval::CSeqTextDataSourceInterval(), EndAdded(), ExtendCDSToStopCodon(), ExtendToStopCodon(), CCleanup::ExtendToStopCodon(), CGeneSelector::FilterGenes(), CSeqTranslator::FindBestFrame(), CProSplign::FindGlobalAlignment(), CValidError_align::FindSegmentGaps(), CFlatAnticodonQVal::Format(), CGBSeqFormatter::FormatFeature(), CGBSeqFormatter::FormatReference(), g_RestoreFromTemp(), CSplign::GetCds(), CConvertBadCdsAndRnaToMiscFeat::getCdsOverlap(), CConvertCdsWithGapsToMiscFeat::GetCommand(), CExtendCDSToStop::GetCommand(), GetCoverage(), CSeqTextDataSource::GetDataLen(), variation::GetDeltaLength(), GetDeltaSeqForPosition(), GetDeltaSeqSummary(), GetFeatureProtein(), CProteinAlignText::GetGenomicBounds(), GetLastPartialCodonLength(), CBlastSearchQuery::GetLength(), variation_ref::CHgvsParser::SOffsetLoc::GetLength(), GetLength(), CBlastQuerySourceOM::GetLength(), CSeqVecSeqInfoSrc::GetLength(), CBlastInput::GetNextSeqBatch(), CBlastInput::GetNextSeqLocBatch(), GetProtRefDescr(), CConvertBadCdsAndRnaToMiscFeat::getRnaOverlap(), GetTrnaAnticodon(), CValidError_graph::GetUngappedSeqLen(), CProSplign::CImplementation::HasStopOnNuc(), CNSeq::Init(), CConvertBadCdsAndRnaToMiscFeat::IsExtendableLeft(), IsExtendableLeft(), CConvertBadCdsAndRnaToMiscFeat::IsExtendableRight(), IsExtendableRight(), variation_ref::IsFirstSubsetOfSecond(), CValidError_feat::IsIntronShort(), IsLocationInFrame(), IsOverhangOkForTerminalCodeBreak(), CConvertBadCdsAndRnaToMiscFeat::IsShortrRNA(), IsShortrRNA(), CCachedSeqDataForRemote::IsValid(), IsValid(), CGene::LargeCdsOverlap(), CSeqGlyph::LessBySeqSize(), CFastaObjectLoader::LoadFromStream(), LocationOffset(), CChainer::CChainerImpl::LRCanChainItoJ(), CChain::MainPeaks(), MakemRNAforCDS(), CLocMapper_Default::Map(), CGeneModel::MutualExtension(), CCompareSeqRegions::NextComparisonGroup(), CMrnaMatchInfo::OkWithoutCds(), CCleanup::ParseCodeBreak(), CGeneFinder::CGeneSearchPlugin::postProcessDiffAmount(), variation_ref::CVariationUtil::PrecursorToProt(), CGnomonAnnotator::Predict(), PreserveTerminalCodons(), ProductToSource(), ProjectExon_newlogic(), RemapAlignToLoc(), SRelLoc::Resolve(), CGeneFinder::ResolveGeneXref(), RetrieveGi555WithTimeOut(), RetrieveLargeChromosomeWithTimeOut(), RetrieveLargeNuclSequence(), RetrieveLargeProteinWithTimeOut(), RetrievePartsOfLargeChromosome(), CChainer::CChainerImpl::RightLeft(), CVectorScreen::Run(), CSplign::Run(), CRedoAlignmentTestFixture::runRedoAlignmentCoreUnitTest(), CTestTranscript_Orfs::RunTest(), s_BlastXMLAddIteration(), s_CdsLength(), s_CheckQuals_cdregion(), s_CleanupIsShortrRNA(), s_CombineDustMasksWithUserProvidedMasks(), s_DumpSequences_wRange(), s_GetCdregionPlusUpstream(), s_GetDeltaLen(), variation::CVariationUtil::s_GetLength(), s_LockInstanceGuard(), s_MakeSliceMapper(), s_ReadAndTestQueryFromString(), s_Render_SeqFeat(), s_RetrieveSequenceLength(), s_SeqAlignToXMLHit(), s_SeqLocToRangeInfoMap(), s_SeqLocToRangeInfoMapByStrand(), s_SeqLocToTotalRangeInfoMap(), s_SetBlastXMLSearch(), s_TestForOverlapEx(), s_TestResultAlignment(), s_ValidateSeqLiteral(), CRemoteBlastDbAdapter::SeqidToOidBatch(), CReportEntry::SetCds(), CBlastTabularInfo::SetFields(), CCleanup::SetFrameFromLoc(), CCleanup::SetGenePartialByLongestContainedFeature(), variation::CVariationUtil::SetPlacementProperties(), NuclWordFinderTextFixture::setupSequences(), TestFixture::SetUpSubject(), SourceToProduct(), SRelLoc::SRelLoc(), TestDataNotFound(), variation::CVariationUtil::TranslateNAtoAA(), TSeqLocVector2Packed_seqint(), CGapFeatValidator::Validate(), NTweakExon::Validate(), CValidError_bioseq::ValidateBioseqContext(), CValidError_bioseq::ValidateDeltaLoc(), CValidError_bioseq::ValidateRawConst(), CValidError_bioseq::ValidateSegRef(), CFlatSeqLoc::x_Add(), CFeatureItem::x_AddQualProteinConflict(), variation::CVariationUtil::x_AdjustDelinsToInterval(), CMultiAligner::x_AlignProfileProfileUsingHit(), CMultiAligner::x_BuildAlignmentIterative(), variation::CVariationUtil::CCdregionIndex::x_CacheSeqData(), CCDSTranslationProblems::x_CheckForRaggedEnd(), CValidError_imp::x_CheckLoc(), CFeatureGenerator::SImplementation::x_CollectMrnaSequence(), CFlatGatherer::x_CollectSourceDescriptors(), CCompareSeq_locs::x_ComputeOverlapValues(), CCmdMoveCdsToSetLevel::x_CreateActionCmd(), CBLASTSeqToolJob::x_CreateProjectItems(), CProSplignJob::x_CreateProjectItems(), CGenbankGatherer::x_DoSingleSection(), CFeaturePropagator::x_ExtendToStopCodon(), x_FillResidueFrequencies(), CMultiAligner::x_FindConservedColumns(), COligoSpecificityCheck::x_FindOverlappingHSP(), CMultiAligner::x_FindPatternHits(), CMultiAligner::x_FindQueryClusters(), CSingleFeatValidator::x_FindStartOfGap(), CShowBlastDefline::x_FormatDeflineTableLine(), CShowBlastDefline::x_FormatDeflineTableLineCSV(), CShowBlastDefline::x_FormatDeflineTableLineText(), CFtableFormatter::x_FormatLocation(), CFlatItemFormatter::x_FormatRefLocation(), CFlatGatherer::x_GatherFeaturesOnRangeIdx(), CFlatGatherer::x_GatherFeaturesOnWholeLocation(), CFlatGatherer::x_GatherFeaturesOnWholeLocationIdx(), CFlatGatherer::x_GatherSequence(), CVariationUtilities::x_GetAlleleFromLoc(), CFeatGlyph::x_GetBarHeight(), variation_ref::CHgvsParser::x_GetInstLength(), variation::CHgvsParser::x_GetInstLength(), variation::CVariationUtil::x_GetLiteralAtLoc(), CGuiObjectInfoSeq_feat::x_GetLocLengthRow(), CDeflineGenerator::x_GetLongestProtein(), CDistances::x_GetSelfScores(), CCompartApp::x_GetSeqLength(), CAlignedFeatureGraph::x_GetTooltip(), CCDSTranslationProblems::x_GetTranslExceptProblems(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), CFeatureGenerator::SImplementation::x_HandleRnaExceptions(), variation::CVariationUtil::x_InferNAfromAA(), CBioseqIndex::x_InitFeats(), CElementaryMatching::x_InitParticipationVector(), variation_ref::CHgvsParser::x_InstToString(), CIntronValidator::x_IsIntronShort(), CValidError_bioseq::x_IsRangeGap(), CElementaryMatching::x_LoadRemapData(), CMultiAligner::x_MakeFillerBlocks(), CNewCleanup_imp::x_MoveCDSFromNucAnnotToSetAnnot(), CXcompareAnnotsApplication::x_ProcessComparison(), CXcompareAnnotsApplication::x_ProcessMappingRanges(), CXcompareAnnotsApplication::x_ProcessSeqAlignSetFromFile(), variation_ref::CVariationUtil::x_ProtToPrecursor(), variation::CVariationUtil::x_Remap(), CRNAValidator::x_ReportRNATranslationProblems(), CVecscreenRun::x_RunBlast(), CLocusItem::x_SetLength(), CReportEntry::x_SetRnaCds(), CSplign::x_SplitQualifyingHits(), CSequenceDataTester::x_TestLocalStrand(), CSequenceDataTester::x_TestSingleProtein_Local(), CSequenceDataTester::x_TestSingleSequence_Remote(), CAlignGlyph::x_UpdateBoundingBox(), CVisRangeGlyph::x_UpdateBoundingBox(), CCdregionValidator::x_ValidateFeatComment(), CSingleFeatValidator::x_ValidateGeneXRef(), CValidError_graph::x_ValidateGraphOnDeltaBioseq(), CCdregionValidator::x_ValidateProductId(), CSingleFeatValidator::x_ValidateReplaceQual(), CSingleFeatValidator::x_ValidateRptUnitVal(), CValidError_align::x_ValidateSeqLength(), CRNAValidator::x_ValidateTrnaCodons(), CRNAValidator::x_ValidateTrnaData(), CRNAValidator::x_ValidateTrnaOverlap(), CMultiAligner::x_ValidateUserHits(), and CFastaOstreamEx::x_WriteTranslatedCds().
◆ GetLength() [2/3]Get length of sequence represented by CSeq_loc, if possible.
Definition at line 88 of file seq_loc_util.cpp.
References CSeq_loc_Base::e_Bond, CSeq_loc_Base::e_Empty, CSeq_loc_Base::e_Equiv, CSeq_loc_Base::e_Feat, CSeq_loc_Base::e_Int, CSeq_loc_Base::e_Mix, CSeq_loc_Base::e_not_set, CSeq_loc_Base::e_Null, CSeq_loc_Base::e_Packed_int, CSeq_loc_Base::e_Packed_pnt, CSeq_loc_Base::e_Pnt, CSeq_loc_Base::e_Whole, CSeq_loc_Base::GetBond(), CSeq_loc_Base::GetInt(), GetLength(), CPacked_seqint::GetLength(), CSeq_interval::GetLength(), CSeq_loc_Base::GetMix(), CSeq_loc_Base::GetPacked_int(), CSeq_loc_Base::GetPacked_pnt(), CPacked_seqpnt_Base::GetPoints(), CSeq_loc_Base::GetWhole(), CSeq_bond_Base::IsSetA(), CSeq_bond_Base::IsSetB(), NCBI_THROW, and CSeq_loc_Base::Which().
◆ GetLength() [3/3] ◆ GetStart()If only one CBioseq is represented by CSeq_loc, returns the position at the start of the location.
By defulat this is the lowest residue position represented by the location. If not null, scope is used to determine if two CSeq_ids represent the same CBioseq. Throws CObjmgrUtilException if CSeq_loc does not represent one CBioseq.
Definition at line 516 of file seq_loc_util.cpp.
References GetId(), and CSeq_loc::GetStart().
Referenced by CDensityMap< CntType >::AddAlignments(), CDensityMap< CntType >::AddFeatures(), variation_ref::CVariationUtil::AdjustDelinsToInterval(), variation::CVariationUtil::CheckExonBoundary(), variation::CVariationUtil::CheckPlacement(), variation_ref::CVariationUtil::CreateFlankLocs(), variation::CVariationUtil::CreateFlankLocs(), GetIdStartStopStrandStr(), CNSeq::Init(), CAutoDefFeatureClause::OkToGroupUnderByLocation(), CGeneFinder::CGeneSearchPlugin::postProcessDiffAmount(), ProjectExons(), CTestSingleAln_All::RunTest(), s_AddCoalescedLocations(), s_DumpSequences_wRange(), s_GetCdregionPlusUpstream(), s_GetStdsegMasterFrame(), s_Utrs(), TrimSeqFeat(), TSeqLocVector2Packed_seqint(), NTweakExon::Validate(), variation::ValidExonTerminals(), variation::CVariationUtil::x_AdjustDelinsToInterval(), CCompareSeq_locs::x_ComputeOverlapValues(), CBLASTSeqToolJob::x_CreateProjectItems(), CFlatGatherer::x_GatherSequence(), variation_ref::CHgvsParser::x_InstToString(), variation::CHgvsParser::x_PlacementCoordsToStr(), and variation_ref::CHgvsParser::x_SeqLocToStr().
◆ GetStop()If only one CBioseq is represented by CSeq_loc, returns the position at the stop of the location.
By defualt this is the highest residue position represented by the location. If not null, scope is used to determine if two CSeq_ids represent the same CBioseq. Throws CObjmgrUtilException exception if CSeq_loc does not represent one CBioseq.
Definition at line 525 of file seq_loc_util.cpp.
References GetBioseqFromSeqLoc(), CBioseq_Handle::GetBioseqLength(), GetId(), CSeq_loc::GetStop(), CSeq_loc_Base::IsWhole(), and NULL.
Referenced by CDensityMap< CntType >::AddAlignments(), CDensityMap< CntType >::AddFeatures(), variation_ref::CVariationUtil::AdjustDelinsToInterval(), variation::CVariationUtil::CheckExonBoundary(), variation::CVariationUtil::CheckPlacement(), variation_ref::CVariationUtil::CreateFlankLocs(), variation::CVariationUtil::CreateFlankLocs(), CDensityMap< CntType >::ExtendTo(), variation::CVariationUtil::GetEffectiveTranscriptLength(), GetIdStartStopStrandStr(), CNSeq::Init(), CAutoDefFeatureClause::OkToGroupUnderByLocation(), CGeneFinder::CGeneSearchPlugin::postProcessDiffAmount(), ProjectExons(), CTestSingleAln_All::RunTest(), s_AddCoalescedLocations(), s_GetCdregionPlusUpstream(), s_GetStdsegMasterFrame(), s_Utrs(), CSearch< LEGACY, NHITS >::Search(), TrimSeqFeat(), TSeqLocVector2Packed_seqint(), NTweakExon::Validate(), variation::ValidExonTerminals(), variation::CVariationUtil::x_AdjustDelinsToInterval(), CCompareSeq_locs::x_ComputeOverlapValues(), CFlatGatherer::x_GatherSequence(), variation_ref::CHgvsParser::x_InstToString(), variation::CHgvsParser::x_PlacementCoordsToStr(), and variation_ref::CHgvsParser::x_SeqLocToStr().
◆ GetStrand()Returns eNa_strand_unknown if multiple Bioseqs in loc Returns eNa_strand_other if multiple strands in same loc Returns eNa_strand_both if loc is a Whole Returns strand otherwise.
Definition at line 481 of file seq_loc_util.cpp.
References CSeq_loc_Base::e_Int, CSeq_loc_Base::e_Packed_pnt, CSeq_loc_Base::e_Pnt, CSeq_loc_Base::e_Whole, eNa_strand_both, eNa_strand_unknown, CSeq_loc_Base::GetInt(), CSeq_loc_Base::GetPacked_pnt(), CSeq_loc_Base::GetPnt(), CPacked_seqpnt_Base::GetStrand(), CSeq_interval_Base::GetStrand(), CSeq_point_Base::GetStrand(), IsOneBioseq(), CPacked_seqpnt_Base::IsSetStrand(), CSeq_interval_Base::IsSetStrand(), CSeq_point_Base::IsSetStrand(), s_GetStrand(), and CSeq_loc_Base::Which().
Referenced by variation_ref::CVariationUtil::AdjustDelinsToInterval(), BOOST_AUTO_TEST_CASE(), CAnnotCompare::CompareFeats(), Convert_Seq_feat_Seq_loc_Gen_Loc_TotalRange(), variation_ref::CVariationUtil::CreateFlankLocs(), variation::CVariationUtil::CreateFlankLocs(), variation::CreateSplicedSeqAlignFromFeat(), CFeatTableDS::SFeatureRow::FillIn(), variation::FindSSRLoc(), CScore_StartStopCodon::Get(), CFeatGlyph::GetHTMLActiveAreas(), CSegmentGlyph::GetHTMLActiveAreas(), GetIdStartStopStrandStr(), CSeqUtils::GetMappingInfo(), CBlastQuerySourceOM::GetStrand(), CTableDataFTable::GetStringValue(), LocationOffset(), CLocMapper_Default::Map(), CCdregionValidator::MapToNTCoords(), CSeqGraphicPane::NextPrevSplice(), CSeqGraphicPane::OnLeftUp(), CCompartApp::CCompartment::operator<(), CTestSingleAln_All::RunTest(), s_CollectBestOverlaps(), s_GetCdregionLabel(), s_GetCdregionPlusUpstream(), NSearchFeatPanel::s_GetSeq_TotalRangeLabel(), s_GetSeq_TotalRangeLabel(), s_GetStdsegMasterFrame(), s_GetStrand(), s_IsSameStrand(), s_Render_SeqFeat(), s_SetSelection(), s_TestForOverlapEx(), CSeqGraphicPane::SelectOnlyThisObject(), SeqLocCheck(), CGffFeatureRecord::SetLocation(), CReportEntry::SetMrna(), variation_ref::CVariationUtil::SetVariantProperties(), variation::CVariationUtil::TranslateNAtoAA(), variation::ValidExonTerminals(), CFlatSeqLoc::x_Add(), CLinkedFeatsGroup::x_AddFeatHTMLActiveArea(), CGuiObjectInfoSeq_feat::x_AddGroupLocationRows(), CGuiObjectInfoSeq_feat::x_AddLocationRows(), variation::CVariationUtil::x_AdjustDelinsToInterval(), CLinkedFeatsGroup::x_AreAllFeaturesOnSameStrand(), CCompareSeq_locs::x_Compare(), CCompareSeq_locs::x_ComputeOverlapValues(), CSGFeatureJob::x_CreateCrossOriginGlyphs(), CSGFeatureJob::x_CreateFeature1(), CBLASTSeqToolJob::x_CreateProjectItems(), CSegmentGlyph::x_Draw(), CLinkedFeatsGroup::x_DrawChildrenOnParent(), CFeatGlyph::x_DrawFeatureBar(), CLinkedFeatsGroup::x_DrawFeatureBar(), CLinkedFeatsGroup::x_DrawLabels(), CCompartApp::CCompartment::x_EvalExons(), x_GetBestOverlapForSNP(), CVcfGlyph::x_GetClinVarToolTip(), variation_ref::CHgvsParser::x_InstToString(), CLinkedFeatsGroup::x_LabelFirst(), CFeatGlyph::x_LabelOnLeft(), variation::CHgvsParser::x_PlacementCoordsToStr(), CFeaturePanel::x_RenderFeatureGrid(), variation::CVariationUtil::x_SetVariantPropertiesForIntronic(), CLinkedFeatsGroup::x_UpdateBoundingBox(), CSegmentGlyph::x_UpdateBoundingBox(), CValidError_graph::x_ValidateGraphValues(), and CValidError_align::x_ValidateStrand().
◆ IsOneBioseq()Returns true if all embedded CSeq_ids represent the same CBioseq, else false.
Definition at line 386 of file seq_loc_util.cpp.
References CSeq_loc::GetId(), NULL, and s_GetId().
Referenced by GetBioseqFromSeqLoc(), GetStrand(), s_GetLabel(), s_LocIdType(), CIntronValidator::Validate(), CValidError_bioseq::ValidateSegRef(), CValidError_bioseq::ValidateSeqFeatContext(), CCreateNeedlemanWunschJob::x_CreateProjectItems(), CCompareSeqRegions::x_GetSelfLoc(), CGeneValidator::x_ValidateMultiIntervalGene(), CValidError_align::x_ValidateSeqLength(), and CValidError_align::x_ValidateStrand().
◆ IsSameBioseq() [1/2]Determines if two CSeq_ids represent the same CBioseq.
Definition at line 300 of file seq_loc_util.cpp.
References CSeq_id_Handle::GetHandle(), and CSeq_id::Match().
Referenced by CEditSequence::AdjustFeatureLocations(), CEditSequence::AdjustProtFeatureLocations(), variation::CVariationUtil::AttachProteinConsequences(), BadMultipleSequenceLocation(), variation::CVariationUtil::CheckExonBoundary(), CDiscrepancyPanel::FindGraphicalSequenceView(), NSearchFeatPanel::GatherFeatures(), CGeneFinder::GetAssociatedGeneInfo(), GetCdsOnMrna(), CFuseFeaturesDlg::GetCommand(), CEditSequence::GetFeatures(), CCDSTranslationProblems::GetNonsenseIntrons(), CEditSequence::GetProteinFeatures(), IsNotDuplicateInterval(), MakemRNAforCDS(), SCompareFeats_OpLess::operator()(), variation_ref::CVariationUtil::Remap(), variation::CVariationUtil::Remap(), variation::CVariationUtil::RemapToAnnotatedTarget(), CFeatureRetrievalJob::Run(), variation::CVariationUtil::s_AddIntronicOffsets(), s_BreakSeq_loc(), s_ExtendEntriesFromAlignments(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetGeneIdForProduct(), s_GetId(), s_GetSynHandle(), s_Test_CheckIntervals(), s_TestForOverlapEx(), SeqLocAllowed(), SRelLoc::SRelLoc(), ProjectCDS::transform_align(), variation::CVariationUtil::TranslateNAtoAA(), CValidError_bioseq::ValidateSegRef(), CValidError_imp::ValidateSeqLocIds(), variation::CHgvsParser::x_AsHgvsExpression(), CValidError_imp::x_CheckForStrandChange(), CCompareSeq_locs::x_Compare(), CCDSTranslationProblems::x_CountNonsenseIntrons(), CValidatePanel::x_FindGraphicalSequenceView(), CDisplaySeqalign::x_GetFeatureInfo(), CCIGAR_Formatter::x_GetRowById(), IEditingActionFeat::x_GetSublocOnBioseq(), CFeatureGenerator::SImplementation::x_HandleRnaExceptions(), x_IsCorrectlyOrdered(), x_IsNotAdjacent(), CXcompareAnnotsApplication::x_ProcessMappingRanges(), COligoSpecificityCheck::x_SavePrimerInfo(), CFeatureSearchJob::x_SearchForSNP(), CBioseqContext::x_SetLocation(), and CRNAValidator::x_ValidateAnticodon().
◆ IsSameBioseq() [2/2] ◆ IsValid() [1/3] ◆ IsValid() [2/3] ◆ IsValid() [3/3]Checks that point >= 0 and point < length of Bioseq.
Definition at line 264 of file seq_loc_util.cpp.
References CSeq_point_Base::GetId(), GetLength(), and CSeq_point_Base::GetPoint().
Referenced by BOOST_AUTO_TEST_CASE(), SNetStorage::SLimits::Check(), rapidjson::GenericPointer< ValueType, Allocator >::Erase(), CRemoteBlastDbAdapter::GetBioseqNoData(), rapidjson::internal::Hasher< Encoding, Allocator >::GetHashCode(), CRemoteBlastDbAdapter::GetSeqIDs(), CRemoteBlastDbAdapter::GetSeqLength(), CTL_Connection::IsDead(), CTypeConstIterator< C, TypeGetter >::operator==(), SeqLocCheck(), rapidjson::GenericPointer< ValueType, Allocator >::Stringify(), CValidError_imp::x_CheckLoc(), CValidError_imp::x_CheckSeqInt(), and CRNAValidator::x_ValidateAnticodon().
◆ LocationOffset()returns (TSeqPos)-1 if the locations don't overlap
Definition at line 678 of file seq_loc_util.cpp.
References eOffset_FromEnd, eOffset_FromLeft, eOffset_FromRight, eOffset_FromStart, GetLength(), GetStrand(), IsReverse(), and SRelLoc::m_Ranges.
Referenced by CFeatGapInfo::AdjustForRelevantGapIntervals(), CodeBreakPosInCds(), EndAdded(), CCleanup::GetCodeBreakForLocation(), IsLocationInFrame(), CCodeBreakCompare::operator()(), CSingleCDSExceptionPanel::TransferDataToWindow(), CSeqTranslator::Translate(), CSeqTranslator::TranslateToProtein(), CFeatureItem::x_AddQualsCdregionIdx(), CFastaOstreamEx::x_GetCodeBreak(), and CCDSTranslationProblems::x_GetTranslExceptProblems().
◆ Seq_loc_Add()Add two seq-locs.
Definition at line 2107 of file seq_loc_util.cpp.
References CSeq_loc::Add(), and flags.
Referenced by CAutoDefExonListClause::AddSubclause(), CAutoDefFeatureClause::AddToLocation(), BOOST_AUTO_TEST_CASE(), CollapseDiscontinuitiesInUTR(), CFixForTransSplicing::CombineFeatures(), CExtendCDSToStop::ExtendmRNA(), ExtendStop(), CCdsFromGeneMrnaExon::GetCommand(), CExtendCDSToStop::GetCommand(), CFuseFeaturesDlg::GetCommand(), CmRNAFromGeneCdsExon::GetCommand(), CtRNAFromGene::GetCommand(), CNSeq::Init(), MakemRNAforCDS(), CCdsToMatPeptide::MergeConvert(), CCompareSeqRegions::NextComparisonGroup(), variation_ref::CVariationUtil::PrecursorToProt(), CExtendCDSToStop::ResetGenes(), s_CombineRefs(), CGetSeqLocFromStringHelper_ReadLocFromText::Seq_loc_Add(), SeqLocExtend(), CCleanup::SeqLocExtend(), SeqLocExtend3(), SeqLocExtend5(), CAutoDefExonListClause::SeqLocIntersect(), variation_ref::CVariationUtil::SetVariantProperties(), variation::CVariationUtil::TranslateNAtoAA(), variation::CHgvsParser::x_AdjustPlacementForHgvs(), variation::CVariationUtil::CVariantPropertiesIndex::x_Index(), CFlatGatherer::x_MergeEqualBioSources(), IEditingActionFeat::x_TestGeneForFeature(), and CCorrectGenesDialog::x_TestGeneForFeature().
◆ Seq_loc_Merge()Merge ranges in the seq-loc.
Definition at line 2098 of file seq_loc_util.cpp.
References flags, and CSeq_loc::Merge().
Referenced by variation_ref::CVariationUtil::AdjustDelinsToInterval(), CLocationEditPolicy::ApplyPolicyToFeature(), CFeatGapInfo::CollectGaps(), CSequenceEditingEventHandler::CombineSelectedGenesIntoPseudogenes(), CReferenceItem::CReferenceItem(), variation::CVariationUtil::FindLocationProperties(), variation::FindSSRLoc(), CConvertCdsWithGapsToMiscFeat::GetCommand(), CGeneFeatFromOtherFeatDlg::GetCommand(), CTruncateCDS::GetCommand(), CProteinAlignText::GetGenomicBounds(), GetIdStartStopStrandStr(), CCleanup::GetProteinLocationFromNucleotideLocation(), CLocMapper_Default::Map(), ProjectAndCollapseCDS(), variation::CVariationUtil::RemapToAnnotatedTarget(), variation::CVariationUtil::s_AddIntronicOffsets(), variation_ref::CVariationUtil::s_AddIntronicOffsets(), s_CoverageSeqLoc(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetIntronsAndSpliceSiteLocs(), CCompareFeats::s_GetLocLabel(), s_GetMaskLoc(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetNeighborhoodLocs(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetStartAndStopCodonsLocs(), s_GetUngapLoc(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetUTRLocs(), CFeatureGenerator::s_ProjectRNA(), variation_ref::CVariationUtil::s_Remap(), variation::CVariationUtil::s_ResolveIntronicOffsets(), variation_ref::CVariationUtil::s_ResolveIntronicOffsets(), Seq_locs_Merge(), variation::CVariationUtil::TranslateNAtoAA(), CFastaOstream::WriteSequence(), variation::CVariationUtil::x_AdjustDelinsToInterval(), variation::CHgvsParser::x_AdjustPlacementForHgvs(), CCompareSeq_locs::x_Compare(), CCompareSeq_locs::x_ComputeOverlapValues(), CFlatGatherer::x_GatherFeaturesOnRangeIdx(), CFlatGatherer::x_GetFeatsOnCdsProduct(), CFlatGatherer::x_GetFeatsOnCdsProductIdx(), variation::CVariationUtil::x_GetLiteralAtLoc(), CCompareSeqRegions::x_GetPutativeMatches(), CCompareSeqRegions::x_GetSelfLoc(), variation::CVariationUtil::CCdregionIndex::x_Index(), variation::CVariationUtil::CVariantPropertiesIndex::x_Index(), variation::CVariationUtil::x_InferNAfromAA(), variation::CHgvsParser::x_PlacementCoordsToStr(), CXcompareAnnotsApplication::x_ProcessMappingRanges(), variation_ref::CVariationUtil::x_ProtToPrecursor(), and variation::CVariationUtil::x_Remap().
◆ Seq_loc_Subtract()Subtract the second seq-loc from the first one.
Definition at line 2117 of file seq_loc_util.cpp.
References flags, and CSeq_loc::Subtract().
Referenced by variation_ref::CVariationUtil::AdjustDelinsToInterval(), AdjustMappedStop(), CAdjustFeatsForIntrons::apply(), CDiscrepancyVisitorImpl< _Name >::Autofix(), BOOST_AUTO_TEST_CASE(), CResolveIntersectingFeats::GetCommand(), CCleanup::GetProteinLocationFromNucleotideLocation(), CNSeq::Init(), CCdsToMatPeptide::MergeConvert(), CCompareSeqRegions::NextComparisonGroup(), variation::SFastLocSubtract::operator()(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetIntronsAndSpliceSiteLocs(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetUTRLocs(), CSourceFeatureItem::Subtract(), variation::CVariationUtil::x_AdjustDelinsToInterval(), CCompareSeq_locs::x_ComputeOverlapValues(), variation::CVariationUtil::CVariantPropertiesIndex::x_Index(), IEditingActionFeat::x_TestGeneForFeature(), CCorrectGenesDialog::x_TestGeneForFeature(), and CFastaOstreamEx::x_TrimLocation().
◆ Seq_locs_Merge()template<typename TSeq_loc_Set >
◆ SeqLocCheck()Checks that a CSeq_loc is all on one strand on one CBioseq.
For embedded points, checks that the point location is <= length of sequence of point. For packed points, checks that all points are within length of sequence. For intervals, ensures from <= to and interval is within length of sequence. If no mixed strands and lengths are valid, returns eSeqLocCheck_ok. If only mixed strands/CBioseq error, then returns eSeqLocCheck_warning. If length error, then returns eSeqLocCheck_error.
Definition at line 632 of file seq_loc_util.cpp.
References ConstBegin(), CSeq_loc_Base::e_Int, CSeq_loc_Base::e_Packed_int, CSeq_loc_Base::e_Packed_pnt, CSeq_loc_Base::e_Pnt, eNa_strand_other, eNa_strand_unknown, eSeqLocCheck_error, eSeqLocCheck_ok, eSeqLocCheck_warning, GetStrand(), and IsValid().
Referenced by variation::CVariationUtil::CheckPlacement(), CValidError_imp::IsMixedStrands(), CFastaOstream::WriteSequence(), and CCdregionValidator::x_ValidateCodebreak().
◆ SeqLocPartialCheck()Definition at line 819 of file seq_loc_util.cpp.
References CSeq_loc_Base::e_Int, CInt_fuzz_Base::e_Lim, CSeqdesc_Base::e_Molinfo, CSeq_loc_Base::e_Null, CSeq_loc_Base::e_Packed_int, CSeq_loc_Base::e_Packed_pnt, CSeq_loc_Base::e_Pnt, CSeq_loc_Base::e_Whole, CMolInfo_Base::eCompleteness_no_ends, CMolInfo_Base::eCompleteness_no_left, CMolInfo_Base::eCompleteness_no_right, CMolInfo_Base::eCompleteness_partial, CSeq_loc_CI::eEmpty_Allow, CInt_fuzz_Base::eLim_gt, CInt_fuzz_Base::eLim_lt, CInt_fuzz_Base::eLim_unk, eSeqlocPartial_Internal, eSeqlocPartial_Other, eSeqlocPartial_Start, eSeqlocPartial_Stop, first(), CPacked_seqint_Base::Get(), CScope::GetBioseqHandle(), CMolInfo_Base::GetCompleteness(), CSeq_loc_CI::GetEmbeddingSeq_loc(), CPacked_seqpnt_Base::GetFuzz(), CSeq_point_Base::GetFuzz(), CSeq_loc_Base::GetInt(), CInt_fuzz_Base::GetLim(), CSeqdesc_Base::GetMolinfo(), CSeq_loc_Base::GetPacked_int(), CSeq_loc_Base::GetPacked_pnt(), CSeq_loc_Base::GetPnt(), CSeq_loc_Base::GetWhole(), CMolInfo_Base::IsSetCompleteness(), CPacked_seqpnt_Base::IsSetFuzz(), CSeq_point_Base::IsSetFuzz(), ITERATE, last(), SeqIntPartialCheck(), CInt_fuzz_Base::Which(), and CSeq_loc_Base::Which().
Referenced by CGenericPropsPanel::CreateControls(), DealWithGenes(), FeatureHasEnds(), CNewCleanup_imp::ResynchProteinPartials(), s_ShouldSetFeaturePartial(), CValidError_bioseq::ValidateFeatPartialInContext(), CValidError_bioseq::ValidateSegRef(), CFastaOstreamEx::x_AddPartialAttribute(), CFeatureItem::x_AddQualPartial(), CCDSTranslationProblems::x_CheckCDSFrame(), CCDSTranslationProblems::x_CheckForRaggedEnd(), CNewCleanup_imp::x_PostSeqFeat(), and CSingleFeatValidator::x_ValidateFeatPartialness().
◆ SeqLocRevCmp()Old name for this function.
Now it's just a wrapper for the new name, which will be removed in the future.
Definition at line 362 of file seq_loc_util.hpp.
References SeqLocRevCmpl().
◆ SeqLocRevCmpl() ◆ TestForOverlap() ◆ TestForOverlap64() ◆ TestForOverlapEx()Updated version of TestForOverlap64().
Allows more control over handling multi-id/multi-strand bioseqs. Return quality of the overlap: lower values mean better overlapping. 0 = exact match of the ranges, -1 = no overlap.
Definition at line 1961 of file seq_loc_util.cpp.
References flags, kInvalidSeqPos, and s_TestForOverlapEx().
Referenced by BOOST_AUTO_TEST_CASE(), GetOverlappingFeatures(), CMrnaMatchInfo::Overlaps(), CCdsMatchInfo::Overlaps(), s_CheckIntervals(), s_ContainedIn(), s_OverlapOrAbut(), s_SetUpXrefPairs(), CValidError_bioseq::ValidateBadGeneOverlap(), CValidError_bioseq::x_IsSameAsCDS(), and CSingleFeatValidator::x_ValidateGeneXRef().
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4