Showing content from http://www.ncbi.nlm.nih.gov/IEB/ToolBox/CPP_DOC/doxyhtml/seq__loc__util_8hpp.html below:
NCBI C++ ToolKit: include/objmgr/util/seq_loc_util.hpp File Reference
Include dependency graph for seq_loc_util.hpp:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Go to the SVN repository for this file.
Functions
Change id
Replace seq-id with the best or worst rank
void ChangeSeqId (CSeq_id *id, bool best, CScope *scope) Change a CSeq_id to the one for the CBioseq that it represents that has the best rank or worst rank according on value of best. More...
void ChangeSeqLocId (CSeq_loc *loc, bool best, CScope *scope) Change each of the CSeq_ids embedded in a CSeq_loc to the best or worst CSeq_id accoring to the value of best. More...
Operations
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...
template<typename TSeq_loc_Set > CSeq_loc * Seq_locs_Merge (TSeq_loc_Set &locs, CSeq_loc::TOpFlags flags, CScope *scope) Merge multiple locations. More...
CRef< CSeq_loc > Seq_loc_Add (const CSeq_loc &loc1, const CSeq_loc &loc2, CSeq_loc::TOpFlags flags, CScope *scope) Add two seq-locs. More...
CRef< CSeq_loc > Seq_loc_Subtract (const CSeq_loc &loc1, const CSeq_loc &loc2, CSeq_loc::TOpFlags flags, CScope *scope) Subtract the second seq-loc from the first one. More...
Basic information
Basic seq-loc information and verification
enum ESeqLocCheck { eSeqLocCheck_ok , eSeqLocCheck_warning , eSeqLocCheck_error } SeqLocCheck results. More...
TSeqPos GetLength (const CSeq_id &id, CScope *scope) Get sequence length if scope not null, else return max possible TSeqPos. More...
TSeqPos GetLength (const CSeq_loc &loc, CScope *scope) Get length of sequence represented by CSeq_loc, if possible. More...
TSeqPos GetCoverage (const CSeq_loc &loc, CScope *scope) Get number of unique bases in the location. More...
TSeqPos GetLength (const CSeq_loc_mix &mix, CScope *scope) Get length of CSeq_loc_mix == sum (length of embedded CSeq_locs) More...
bool IsValid (const CSeq_point &pt, CScope *scope) Checks that point >= 0 and point < length of Bioseq. More...
bool IsValid (const CPacked_seqpnt &pts, CScope *scope) Checks that all points >=0 and < length of CBioseq. More...
bool IsValid (const CSeq_interval &interval, CScope *scope) Checks from and to of CSeq_interval. More...
bool IsSameBioseq (const CSeq_id &id1, const CSeq_id &id2, CScope *scope, CScope::EGetBioseqFlag get_flag=CScope::eGetBioseq_All) Determines if two CSeq_ids represent the same CBioseq. More...
bool IsSameBioseq (const CSeq_id_Handle &id1, const CSeq_id_Handle &id2, CScope *scope, CScope::EGetBioseqFlag get_flag=CScope::eGetBioseq_All) bool IsOneBioseq (const CSeq_loc &loc, CScope *scope) Returns true if all embedded CSeq_ids represent the same CBioseq, else false. More...
const CSeq_id & GetId (const CSeq_loc &loc, CScope *scope) If all CSeq_ids embedded in CSeq_loc refer to the same CBioseq, returns the first CSeq_id found, else throws CObjmgrUtilException exception. More...
CSeq_id_Handle GetIdHandle (const CSeq_loc &loc, CScope *scope) ENa_strand GetStrand (const CSeq_loc &loc, CScope *scope=0) 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. More...
TSeqPos GetStart (const CSeq_loc &loc, CScope *scope, ESeqLocExtremes ext=eExtreme_Positional) If only one CBioseq is represented by CSeq_loc, returns the position at the start of the location. More...
TSeqPos GetStop (const CSeq_loc &loc, CScope *scope, ESeqLocExtremes ext=eExtreme_Positional) If only one CBioseq is represented by CSeq_loc, returns the position at the stop of the location. More...
ESeqLocCheck SeqLocCheck (const CSeq_loc &loc, CScope *scope) Checks that a CSeq_loc is all on one strand on one CBioseq. More...
bool BadSeqLocSortOrder (const CBioseq_Handle &bsh, const CSeq_loc &loc) Returns true if the order of Seq_locs is bad, otherwise, false. More...
bool BadSeqLocSortOrder (const CBioseq &seq, const CSeq_loc &loc, CScope *scope) Compare
Check if the two CSeq_locs are abutting
enum ECompare {
eNoOverlap = 0 , eContained , eContains , eSame ,
eOverlap , eAbutting , eAbutAndOverlap
} enum FCompareFlags { fCompareAbutting = 1 << 0 , fCompareOverlapping = 1 << 1 , fCompareAll = fCompareAbutting | fCompareOverlapping , fComparePositional = 1 << 2 } typedef int TCompareFlags sequence::ECompare Compare (const CSeq_loc &loc1, const CSeq_loc &loc2, CScope *scope) Returns the sequence::ECompare containment relationship between CSeq_locs. More...
sequence::ECompare Compare (const CSeq_loc &loc1, const CSeq_loc &loc2, CScope *scope, TCompareFlags flags) Compare the seq-locs. More...
Overlapping
Overlapping of seq-locs
enum EOffsetType { eOffset_FromStart , eOffset_FromEnd , eOffset_FromLeft , eOffset_FromRight } enum EOverlapType {
eOverlap_Simple , eOverlap_Contained , eOverlap_Contains , eOverlap_Subset ,
eOverlap_SubsetRev , eOverlap_CheckIntervals , eOverlap_CheckIntRev , eOverlap_Interval
} enum EOverlapFlags { fOverlap_NoMultiSeq = 1 << 0 , fOverlap_NoMultiStrand = 1 << 1 , fOverlap_IgnoreTopology = 1 << 2 , fOverlap_Default = 0 } Flags, controlling behavior of TestForOverlapEx(). More...
typedef int TOverlapFlags TSeqPos LocationOffset (const CSeq_loc &outer, const CSeq_loc &inner, EOffsetType how=eOffset_FromStart, CScope *scope=0) returns (TSeqPos)-1 if the locations don't overlap More...
Int8 TestForOverlap64 (const CSeq_loc &loc1, const CSeq_loc &loc2, EOverlapType type, TSeqPos circular_len=kInvalidSeqPos, CScope *scope=0) 64-bit version of TestForOverlap() Check if the two locations have ovarlap of a given type. More...
Int8 TestForOverlapEx (const CSeq_loc &loc1, const CSeq_loc &loc2, EOverlapType type, CScope *scope=0, TOverlapFlags flags=fOverlap_Default) Updated version of TestForOverlap64(). More...
int TestForOverlap (const CSeq_loc &loc1, const CSeq_loc &loc2, EOverlapType type, TSeqPos circular_len=kInvalidSeqPos, CScope *scope=0) Calls TestForOverlap64() and if the result is greater than kMax_Int truncates it to kMax_Int. More...
PartialCheck
Sets bits for incomplete location and/or errors
enum ESeqlocPartial {
eSeqlocPartial_Complete = 0 , eSeqlocPartial_Start = 1<<0 , eSeqlocPartial_Stop = 1<<1 , eSeqlocPartial_Internal = 1<<2 ,
eSeqlocPartial_Other = 1<<3 , eSeqlocPartial_Nostart = 1<<4 , eSeqlocPartial_Nostop = 1<<5 , eSeqlocPartial_Nointernal = 1<<6 ,
eSeqlocPartial_Limwrong = 1<<7 , eSeqlocPartial_Haderror = 1<<8
} int SeqLocPartialCheck (const CSeq_loc &loc, CScope *scope) CSeq_loc * SeqLocRevCmpl (const CSeq_loc &loc, CScope *scope) Get reverse complement of the seq-loc (?) More...
CSeq_loc * SeqLocRevCmp (const CSeq_loc &loc, CScope *scope) Old name for this function. More...
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