NCBI C++ ToolKit
Classes | Macros | Typedefs | Enumerations | Enumerator | Functions | Variables
Seq-loc Management
+ Collaboration diagram for Seq-loc Management:

Classes

class  CSeqLocException
 Seq-loc exceptions. More...
 
class  CSeq_loc
 
class  CSeq_loc::ISubLocFilter
 Used as a helper for determining which pieces of a CSeq_loc to compare. More...
 
class  ISynonymMapper
 Interface for mapping IDs to the best synonym. More...
 
class  ILengthGetter
 Interface for getting bioseq length. More...
 
struct  SSeq_loc_CI_RangeInfo
 
class  CSeq_loc_CI
 Seq-loc iterator class – iterates all intervals from a seq-loc in the correct order. More...
 
class  CSeq_loc_I
 Seq-loc iterator class – iterates all intervals from a seq-loc in the correct order. More...
 

Macros

#define DEFINE_NCBI_SEQ_LOC_SETTERS(x)
 

Typedefs

typedef CSeq_loc_Base CSeq_loc::Tparent
 
typedef CPacked_seqpnt_Base::TPoints CSeq_loc::TPoints
 
typedef CPacked_seqint_Base::Tdata CSeq_loc::TIntervals
 
typedef CSeq_loc_mix_Base::Tdata CSeq_loc::TLocations
 
typedef CSeq_id CSeq_loc::TId
 
typedef ENa_strand CSeq_loc::TStrand
 
typedef TSeqPos CSeq_loc::TPoint
 
typedef CPacked_seqint::TRanges CSeq_loc::TRanges
 
typedef CRange< TSeqPosCSeq_loc::TRange
 See related functions in objmgr/util/seq_loc_util.hpp: More...
 
typedef int CSeq_loc::TCompareFlags
 
typedef int CSeq_loc::TOpFlags
 
typedef CSeq_loc_CI CSeq_loc::const_iterator
 Make CSeq_loc look like an STL container. More...
 
typedef CSeq_loc::TRange SSeq_loc_CI_RangeInfo::TRange
 
typedef CSeq_loc::TRange CSeq_loc_CI::TRange
 

Enumerations

enum  CSeqLocException::EErrCode {
  CSeqLocException::eNotSet , CSeqLocException::eMultipleId , CSeqLocException::eUnsupported , CSeqLocException::eBadLocation ,
  CSeqLocException::eBadIterator , CSeqLocException::eIncomatible , CSeqLocException::eOutOfRange , CSeqLocException::eOtherError
}
 
enum  CSeq_loc::ECompareFlags { CSeq_loc::fCompare_Default = 0 , CSeq_loc::fCompare_Strand = 1 }
 Flags for location comparison. More...
 
enum  CSeq_loc::EOpFlags {
  CSeq_loc::fStrand_Ignore = 1<<0 , CSeq_loc::fMerge_Contained = 1<<1 , CSeq_loc::fMerge_AbuttingOnly = 1<<2 , CSeq_loc::fMerge_Abutting = fMerge_AbuttingOnly | fMerge_Contained ,
  CSeq_loc::fMerge_OverlappingOnly = 1<<3 , CSeq_loc::fMerge_Overlapping = fMerge_OverlappingOnly | fMerge_Contained , CSeq_loc::fMerge_All = fMerge_Abutting | fMerge_Overlapping , CSeq_loc::fMerge_SingleRange = 1<<4 ,
  CSeq_loc::fSort = 1<<5 , CSeq_loc::fSortAndMerge_All = fSort | fMerge_All
}
 CSeq_loc operations. More...
 
enum  { CSeq_loc::kDirtyCache = -2 , CSeq_loc::kSeveralIds = -3 }
 
enum  CSeq_loc_CI::EEmptyFlag { CSeq_loc_CI::eEmpty_Skip , CSeq_loc_CI::eEmpty_Allow }
 Options for empty locations processing. More...
 
enum  CSeq_loc_CI::ESeqLocOrder { CSeq_loc_CI::eOrder_Positional , CSeq_loc_CI::eOrder_Biological }
 
enum  CSeq_loc_I::EMakeType { CSeq_loc_I::eMake_CompactType , CSeq_loc_I::eMake_PreserveType }
 Options for creation modified locations Bond and equiv types are preserved if possible. More...
 
enum  CSeq_loc_I::EEquivMode {
  CSeq_loc_I::eEquiv_none , CSeq_loc_I::eEquiv_new_equiv , CSeq_loc_I::eEquiv_new_part , CSeq_loc_I::eEquiv_append ,
  CSeq_loc_I::eEquiv_prepend
}
 This enum defines a way equiv sets are expanded or created when one of Insert*() methods is called. More...
 

Functions

virtual const char * CSeqLocException::GetErrCodeString (void) const override
 Get error code interpreted as text. More...
 
 CSeqLocException::NCBI_EXCEPTION_DEFAULT (CSeqLocException, CException)
 
 CSeq_loc::CSeq_loc (void)
 constructors More...
 
 CSeq_loc::CSeq_loc (E_Choice index)
 
 CSeq_loc::CSeq_loc (TId &id, TPoint point, TStrand strand=eNa_strand_unknown)
 
 CSeq_loc::CSeq_loc (TId &id, const TPoints &points, TStrand strand=eNa_strand_unknown)
 
 CSeq_loc::CSeq_loc (TId &id, TPoint from, TPoint to, TStrand strand=eNa_strand_unknown)
 
 CSeq_loc::CSeq_loc (TId &id, TRanges ivals, TStrand strand=eNa_strand_unknown)
 
virtual CSeq_loc::~CSeq_loc (void)
 
TRange CSeq_loc::GetTotalRange (void) const
 
void CSeq_loc::InvalidateTotalRangeCache (void) const
 
bool CSeq_loc::IsSetStrand (EIsSetStrand flag=eIsSetStrand_Any) const
 Check if strand is set for any/all part(s) of the seq-loc depending on the flag. More...
 
ENa_strand CSeq_loc::GetStrand (void) const
 Get the location's strand. More...
 
bool CSeq_loc::IsReverseStrand (void) const
 Return true if all ranges have reverse strand. More...
 
void CSeq_loc::FlipStrand (void)
 Flip the strand (e.g. plus to minus) More...
 
void CSeq_loc::SetStrand (ENa_strand strand)
 Set the strand for all of the location's ranges. More...
 
void CSeq_loc::ResetStrand (void)
 Reset the strand on this location. More...
 
TSeqPos CSeq_loc::GetStart (ESeqLocExtremes ext) const
 Return start and stop positions of the seq-loc. More...
 
TSeqPos CSeq_loc::GetStop (ESeqLocExtremes ext) const
 
TSeqPos CSeq_loc::GetCircularLength (TSeqPos seq_len) const
 Special case for circular sequences. More...
 
void CSeq_loc::GetLabel (string *label) const
 Appends a label suitable for display (e.g., error messages) label must point to an existing string object Method just returns if label is null. More...
 
bool CSeq_loc::IsPartialStart (ESeqLocExtremes ext) const
 check start or stop of location for e_Lim fuzz More...
 
bool CSeq_loc::IsPartialStop (ESeqLocExtremes ext) const
 
void CSeq_loc::SetPartialStart (bool val, ESeqLocExtremes ext)
 set / remove e_Lim fuzz on start or stop (lt/gt - indicating partial interval) More...
 
void CSeq_loc::SetPartialStop (bool val, ESeqLocExtremes ext)
 
bool CSeq_loc::IsTruncatedStart (ESeqLocExtremes ext) const
 check if parts of the seq-loc are missing More...
 
bool CSeq_loc::IsTruncatedStop (ESeqLocExtremes ext) const
 
void CSeq_loc::SetTruncatedStart (bool val, ESeqLocExtremes ext)
 set / remove e_Lim fuzz on start or stop (tl/tr - indicating removed parts of the seq-loc) More...
 
void CSeq_loc::SetTruncatedStop (bool val, ESeqLocExtremes ext)
 
const CSeq_idCSeq_loc::GetId (void) const
 Get the id of the location return NULL if has multiple ids or no id at all. More...
 
bool CSeq_loc::CheckId (const CSeq_id *&id, bool may_throw=true) const
 check that the 'id' field in all parts of the location is the same as the specifies id. More...
 
void CSeq_loc::InvalidateIdCache (void) const
 
void CSeq_loc::SetId (CSeq_id &id)
 set the 'id' field in all parts of this location More...
 
void CSeq_loc::SetId (const CSeq_id &id)
 
void CSeq_loc::InvalidateCache (void) const
 Combine invalidation of all cached values. More...
 
virtual void CSeq_loc::Assign (const CSerialObject &source, ESerialRecursionMode how=eRecursive)
 Override Assign() to incorporate cache invalidation. More...
 
void CSeq_loc::SetNull (void)
 Override all setters to incorporate cache invalidation. More...
 
void CSeq_loc::SetEmpty (TEmpty &v)
 
TEmptyCSeq_loc::SetEmpty (void)
 
void CSeq_loc::SetWhole (TWhole &v)
 
TWholeCSeq_loc::SetWhole (void)
 
void CSeq_loc::SetInt (TInt &v)
 
TIntCSeq_loc::SetInt (void)
 
void CSeq_loc::SetPacked_int (TPacked_int &v)
 
TPacked_intCSeq_loc::SetPacked_int (void)
 
void CSeq_loc::SetPnt (TPnt &v)
 
TPntCSeq_loc::SetPnt (void)
 
void CSeq_loc::SetPacked_pnt (TPacked_pnt &v)
 
TPacked_pntCSeq_loc::SetPacked_pnt (void)
 
void CSeq_loc::SetMix (TMix &v)
 
TMixCSeq_loc::SetMix (void)
 
void CSeq_loc::SetEquiv (TEquiv &v)
 
TEquivCSeq_loc::SetEquiv (void)
 
void CSeq_loc::SetBond (TBond &v)
 
TBondCSeq_loc::SetBond (void)
 
void CSeq_loc::SetFeat (TFeat &v)
 
TFeatCSeq_loc::SetFeat (void)
 
void CSeq_loc::PostRead (void) const
 Invalidate id/range cache after deserialization. More...
 
int CSeq_loc::Compare (const CSeq_loc &loc) const
 
int CSeq_loc::Compare (const CSeq_loc &loc, TCompareFlags flags) const
 Compare locations by total range for each seq-id. More...
 
virtual CSeq_loc::ISubLocFilter::~ISubLocFilter ()
 
virtual bool CSeq_loc::ISubLocFilter::operator() (const CSeq_id *id) const =0
 
int CSeq_loc::CompareSubLoc (const CSeq_loc &loc, ENa_strand strand, const ISubLocFilter *filter=NULL) const
 Compare first-level sub-locations sequentially to order them by biological "complexity". More...
 
void CSeq_loc::Add (const CSeq_loc &other)
 Simple adding of seq-locs. More...
 
void CSeq_loc::ChangeToMix (void)
 
void CSeq_loc::ChangeToPackedInt (void)
 Works only if location is currently an interval, point, packed-int (handled trivially), or a mix built recursively from these. More...
 
CRef< CSeq_locCSeq_loc::Merge (TOpFlags flags, ISynonymMapper *syn_mapper) const
 All functions create and return a new seq-loc object. More...
 
CRef< CSeq_locCSeq_loc::Add (const CSeq_loc &other, TOpFlags flags, ISynonymMapper *syn_mapper) const
 Add seq-loc, merge/sort resulting ranges depending on flags. More...
 
CRef< CSeq_locCSeq_loc::Subtract (const CSeq_loc &other, TOpFlags flags, ISynonymMapper *syn_mapper, ILengthGetter *len_getter) const
 Subtract seq-loc from this, merge/sort resulting ranges depending on flags. More...
 
CRef< CSeq_locCSeq_loc::Intersect (const CSeq_loc &other, TOpFlags flags, ISynonymMapper *syn_mapper) const
 Find the intersection with the seq-loc, merge/sort resulting ranges depending on flags. More...
 
const_iterator CSeq_loc::begin (void) const
 
const_iterator CSeq_loc::end (void) const
 
 CSeq_loc::CSeq_loc (const CSeq_loc &)
 
CSeq_locCSeq_loc::operator= (const CSeq_loc &)
 
TRange CSeq_loc::x_UpdateTotalRange (void) const
 
TRange CSeq_loc::x_CalculateTotalRangeCheckId (const CSeq_id *&id) const
 
bool CSeq_loc::x_CheckId (const CSeq_id *&id, bool may_throw=true) const
 
bool CSeq_loc::x_UpdateId (const CSeq_id *&total_id, const CSeq_id *id, bool may_throw=true) const
 
void CSeq_loc::x_ChangeToMix (const CSeq_loc &other)
 
void CSeq_loc::x_ChangeToPackedInt (const CSeq_interval &other)
 
void CSeq_loc::x_ChangeToPackedInt (const CSeq_loc &other)
 
void CSeq_loc::x_ChangeToPackedPnt (const CSeq_loc &other)
 
int CSeq_loc::x_CompareSingleId (const CSeq_loc &loc, const CSeq_id *id1, const CSeq_id *id2, TCompareFlags flags) const
 Compare single-id locations, or throw an exception if any location is multi-id. More...
 
 ISynonymMapper::ISynonymMapper (void)
 
virtual ISynonymMapper::~ISynonymMapper (void)
 
virtual CSeq_id_Handle ISynonymMapper::GetBestSynonym (const CSeq_id &id)=0
 
 ILengthGetter::ILengthGetter (void)
 
virtual ILengthGetter::~ILengthGetter (void)
 
virtual TSeqPos ILengthGetter::GetLength (const CSeq_id &id)=0
 
 SSeq_loc_CI_RangeInfo::SSeq_loc_CI_RangeInfo (void)
 
 SSeq_loc_CI_RangeInfo::~SSeq_loc_CI_RangeInfo (void)
 
void SSeq_loc_CI_RangeInfo::SetStrand (ENa_strand strand)
 
 CSeq_loc_CI::CSeq_loc_CI (void)
 constructors More...
 
 CSeq_loc_CI::CSeq_loc_CI (const CSeq_loc &loc, EEmptyFlag empty_flag=eEmpty_Skip, ESeqLocOrder order=eOrder_Biological)
 
 CSeq_loc_CI::CSeq_loc_CI (const CSeq_loc_CI &iter, size_t pos)
 construct iterator at a different position in the same location More...
 
virtual CSeq_loc_CI::~CSeq_loc_CI (void)
 destructor More...
 
 CSeq_loc_CI::CSeq_loc_CI (const CSeq_loc_CI &iter)
 
CSeq_loc_CICSeq_loc_CI::operator= (const CSeq_loc_CI &iter)
 
CSeq_loc_CICSeq_loc_CI::operator++ (void)
 
 CSeq_loc_CI::DECLARE_OPERATOR_BOOL (x_IsValid())
 
bool CSeq_loc_CI::operator== (const CSeq_loc_CI &iter) const
 
bool CSeq_loc_CI::operator!= (const CSeq_loc_CI &iter) const
 
bool CSeq_loc_CI::IsInBond (void) const
 Location of type equiv define set of equivalent locations. More...
 
bool CSeq_loc_CI::IsBondA (void) const
 Return true if current position is A part of a bond. More...
 
bool CSeq_loc_CI::IsBondB (void) const
 Return true if current position is B part of a bond. More...
 
pair< CSeq_loc_CI, CSeq_loc_CICSeq_loc_CI::GetBondRange (void) const
 Return iterators that cover bond of current position result.first is the first segment in the equiv set result.second is the first segment after the equiv set. More...
 
bool CSeq_loc_CI::HasEquivSets (void) const
 Return true if location has equiv parts. More...
 
bool CSeq_loc_CI::IsInEquivSet (void) const
 Return true if current position is in some equiv part. More...
 
size_t CSeq_loc_CI::GetEquivSetsCount (void) const
 Return number of recursuve equiv parts current position in. More...
 
pair< CSeq_loc_CI, CSeq_loc_CICSeq_loc_CI::GetEquivSetRange (size_t level=0) const
 Return iterators that cover equiv set of current position result.first is the first segment in the equiv set result.second is the first segment after the equiv set level specify equiv set if there are more than one of them level = 0 is the smallest equiv set (innermost) More...
 
pair< CSeq_loc_CI, CSeq_loc_CICSeq_loc_CI::GetEquivPartRange (size_t level=0) const
 Return iterators that cover equiv part of current position result.first is the first segment in the equiv part result.second is the first segment after the equiv part level specify equiv set if there are more than one of them level = 0 is the smallest equiv set (innermost) More...
 
const CSeq_idCSeq_loc_CI::GetSeq_id (void) const
 Get seq_id of the current location. More...
 
CSeq_id_Handle CSeq_loc_CI::GetSeq_id_Handle (void) const
 
TRange CSeq_loc_CI::GetRange (void) const
 Get the range. More...
 
bool CSeq_loc_CI::IsSetStrand (void) const
 Get strand. More...
 
ENa_strand CSeq_loc_CI::GetStrand (void) const
 
CConstRef< CSeq_locCSeq_loc_CI::GetRangeAsSeq_loc (void) const
 Get seq-loc for the current iterator position. More...
 
const CSeq_locCSeq_loc_CI::GetEmbeddingSeq_loc (void) const
 Get the nearest seq-loc containing the current range. More...
 
const CSeq_locCSeq_loc_CI::GetSeq_loc (void) const
 
const CInt_fuzzCSeq_loc_CI::GetFuzzFrom (void) const
 
const CInt_fuzzCSeq_loc_CI::GetFuzzTo (void) const
 
bool CSeq_loc_CI::IsWhole (void) const
 True if the current location is a whole sequence. More...
 
bool CSeq_loc_CI::IsEmpty (void) const
 True if the current location is empty. More...
 
bool CSeq_loc_CI::IsPoint (void) const
 True if the current location is a single point. More...
 
void CSeq_loc_CI::Rewind (void)
 Reset the iterator to the initial state. More...
 
size_t CSeq_loc_CI::GetSize (void) const
 Get number of ranges. More...
 
size_t CSeq_loc_CI::GetPos (void) const
 Get iterator's position. More...
 
void CSeq_loc_CI::SetPos (size_t pos)
 Set iterator's position. More...
 
const CSeq_loc_CICSeq_loc_CI::operator* () const
 
const SSeq_loc_CI_RangeInfoCSeq_loc_CI::x_GetRangeInfo (void) const
 
bool CSeq_loc_CI::x_IsValid (void) const
 
virtual const char * CSeq_loc_CI::x_GetIteratorType (void) const
 
void CSeq_loc_CI::x_CheckValid (const char *where) const
 
void CSeq_loc_CI::x_ThrowNotValid (const char *where) const
 
 CSeq_loc_I::CSeq_loc_I (void)
 constructors More...
 
 CSeq_loc_I::CSeq_loc_I (CSeq_loc &loc)
 
 CSeq_loc_I::CSeq_loc_I (const CSeq_loc_I &iter, size_t pos)
 construct iterator at a different position in the same location More...
 
virtual CSeq_loc_I::~CSeq_loc_I (void)
 destructor More...
 
bool CSeq_loc_I::HasChanges (void) const
 return true of any part was changed since initialization More...
 
CRef< CSeq_locCSeq_loc_I::MakeSeq_loc (EMakeType make_type=eMake_CompactType) const
 return constructed CSeq_loc with all changes More...
 
void CSeq_loc_I::Delete (void)
 Delete current element, and make iterator to point to the next element. More...
 
CSeq_loc_I CSeq_loc_I::InsertNull (void)
 Set of Insert*() methods. More...
 
CSeq_loc_I CSeq_loc_I::InsertEmpty (const CSeq_id_Handle &id)
 Insert new element before the current one (. More...
 
CSeq_loc_I CSeq_loc_I::InsertEmpty (const CSeq_id &id)
 Insert new element before the current one (. More...
 
CSeq_loc_I CSeq_loc_I::InsertWhole (const CSeq_id_Handle &id)
 Insert new element before the current one (. More...
 
CSeq_loc_I CSeq_loc_I::InsertWhole (const CSeq_id &id)
 Insert new element before the current one (. More...
 
CSeq_loc_I CSeq_loc_I::InsertInterval (const CSeq_id_Handle &id, const TRange &range, ENa_strand strand=eNa_strand_unknown)
 Insert new element before the current one (. More...
 
CSeq_loc_I CSeq_loc_I::InsertInterval (const CSeq_id &id, const TRange &range, ENa_strand strand=eNa_strand_unknown)
 Insert new element before the current one (. More...
 
CSeq_loc_I CSeq_loc_I::InsertInterval (const CSeq_id &id, TSeqPos from, TSeqPos to, ENa_strand strand=eNa_strand_unknown)
 Insert new element before the current one (. More...
 
CSeq_loc_I CSeq_loc_I::InsertInterval (const CSeq_id_Handle &id, TSeqPos from, TSeqPos to, ENa_strand strand=eNa_strand_unknown)
 Insert new element before the current one (. More...
 
CSeq_loc_I CSeq_loc_I::InsertPoint (const CSeq_id_Handle &id, TSeqPos pos, ENa_strand strand=eNa_strand_unknown)
 Insert new element before the current one (. More...
 
CSeq_loc_I CSeq_loc_I::InsertPoint (const CSeq_id &id, TSeqPos pos, ENa_strand strand=eNa_strand_unknown)
 Insert new element before the current one (. More...
 
void CSeq_loc_I::SetSeq_id_Handle (const CSeq_id_Handle &id)
 Set seq_id of the current location. More...
 
void CSeq_loc_I::SetSeq_id (const CSeq_id &id)
 Set seq_id of the current location. More...
 
void CSeq_loc_I::SetRange (const TRange &range)
 Set the range. More...
 
void CSeq_loc_I::SetFrom (TSeqPos from)
 Set the range from position. More...
 
void CSeq_loc_I::SetTo (TSeqPos to)
 Set the range to position. More...
 
void CSeq_loc_I::SetPoint (TSeqPos pos)
 Set the range from and to positions. More...
 
void CSeq_loc_I::ResetStrand (void)
 Reset the range strand. More...
 
void CSeq_loc_I::SetStrand (ENa_strand strand)
 Set the range strand. More...
 
void CSeq_loc_I::ResetFuzzFrom (void)
 Reset fuzz from. More...
 
void CSeq_loc_I::SetFuzzFrom (CInt_fuzz &fuzz)
 Change fuzz from. More...
 
void CSeq_loc_I::ResetFuzzTo (void)
 Reset fuzz to. More...
 
void CSeq_loc_I::SetFuzzTo (CInt_fuzz &fuzz)
 Change fuzz to values. More...
 
void CSeq_loc_I::ResetFuzz (void)
 Reset fuzz of a point. More...
 
void CSeq_loc_I::SetFuzz (CInt_fuzz &fuzz)
 Change fuzz of a point. More...
 
pair< CSeq_loc_I, CSeq_loc_ICSeq_loc_I::GetEquivSetRange (size_t level=0) const
 Return iterators that cover equiv set of current position result.first is the first segment in the equiv set result.second is the first segment after the equiv set level specify equiv set if there are more than one of them level = 0 is the smallest equiv set (innermost) More...
 
pair< CSeq_loc_I, CSeq_loc_ICSeq_loc_I::GetEquivPartRange (size_t level=0) const
 Return iterators that cover equiv part of current position result.first is the first segment in the equiv part result.second is the first segment after the equiv part level specify equiv set if there are more than one of them level = 0 is the smallest equiv set (innermost) More...
 
void CSeq_loc_I::SetEquivMode (EEquivMode mode)
 Change equiv modification mode. More...
 
void CSeq_loc_I::StartNewEquiv (void)
 Change equiv modification mode to add new equiv set for the next insert operation. More...
 
void CSeq_loc_I::StartNewEquivPart (void)
 Change equiv modification mode to add new equiv part for the next insert operation. More...
 
void CSeq_loc_I::StopEquiv (void)
 Change equiv modification mode to normal behavior that will only update existing equiv sets. More...
 
EEquivMode CSeq_loc_I::GetEquivMode (void) const
 Get equiv modification mode. More...
 
void CSeq_loc_I::RemoveEquiv (size_t level=0)
 Remove equiv set, all pieces that are part of the set will be preserved as independent pieces. More...
 
void CSeq_loc_I::MakeEquiv (const CSeq_loc_I &end_it)
 Create equiv set with one part from current position to the position pointed by end_it argument exclusive. More...
 
void CSeq_loc_I::MakeEquivPartBreak (size_t level=0)
 Create equiv set with one part from current position to the position pointed by end_it argument exclusive. More...
 
void CSeq_loc_I::RemoveBond (void)
 Remove bond at current position - it may be either A or B part. More...
 
void CSeq_loc_I::MakeBondA (void)
 Make bond at current position (only A) The current part must be a point If current posision is already a bond A part, it will be updated. More...
 
void CSeq_loc_I::MakeBondAB (void)
 Make bond at current position with the next position (A and B) The current and next parts must be points If current posision is already a bond A part, it will be updated. More...
 
void CSeq_loc_I::MakeBondB (void)
 Make bond at previous position with the current position (A and B) The current and previous parts must be points If previous posision is already a bond A part, it will be updated. More...
 
SSeq_loc_CI_RangeInfoCSeq_loc_I::x_GetRangeInfo (void)
 
void CSeq_loc_I::x_SetSeq_id_Handle (SSeq_loc_CI_RangeInfo &info, const CSeq_id_Handle &id)
 
bool CSeq_loc_I::x_IsValidForInsert (void) const
 
void CSeq_loc_I::x_CheckValidForInsert (const char *where) const
 
virtual const char * CSeq_loc_I::x_GetIteratorType (void) const
 

Variables

atomic< TSeqPosCSeq_loc::m_TotalRangeCacheFrom
 
atomic< TSeqPosCSeq_loc::m_TotalRangeCacheToOpen
 
atomic< const CSeq_id * > CSeq_loc::m_IdCache
 
CSeq_id_Handle SSeq_loc_CI_RangeInfo::m_IdHandle
 
CConstRef< CSeq_idSSeq_loc_CI_RangeInfo::m_Id
 
TRange SSeq_loc_CI_RangeInfo::m_Range
 
bool SSeq_loc_CI_RangeInfo::m_IsSetStrand
 
ENa_strand SSeq_loc_CI_RangeInfo::m_Strand
 
CConstRef< CSeq_locSSeq_loc_CI_RangeInfo::m_Loc
 
pair< CConstRef< CInt_fuzz >, CConstRef< CInt_fuzz > > SSeq_loc_CI_RangeInfo::m_Fuzz
 
CRef< CSeq_loc_CI_ImplCSeq_loc_CI::m_Impl
 
size_t CSeq_loc_CI::m_Index
 

Detailed Description

Macro Definition Documentation

◆ DEFINE_NCBI_SEQ_LOC_SETTERS

#define DEFINE_NCBI_SEQ_LOC_SETTERS (   x)
Value:
inline \
void CSeq_loc::Set##x(T##x& v) \
{ \
InvalidateCache(); \
Tparent::Set##x(v); \
} \
\
CSeq_loc::T##x& CSeq_loc::Set##x(void) \
{ \
InvalidateCache(); \
return Tparent::Set##x(); \
}
#define T(s)
Definition: common.h:230

Definition at line 966 of file Seq_loc.hpp.

Typedef Documentation

◆ const_iterator

Make CSeq_loc look like an STL container.

Definition at line 367 of file Seq_loc.hpp.

◆ TCompareFlags

Definition at line 248 of file Seq_loc.hpp.

◆ TId

Definition at line 100 of file Seq_loc.hpp.

◆ TIntervals

Definition at line 98 of file Seq_loc.hpp.

◆ TLocations

Definition at line 99 of file Seq_loc.hpp.

◆ TOpFlags

Definition at line 336 of file Seq_loc.hpp.

◆ Tparent

Definition at line 96 of file Seq_loc.hpp.

◆ TPoint

Definition at line 102 of file Seq_loc.hpp.

◆ TPoints

Definition at line 97 of file Seq_loc.hpp.

◆ TRange [1/3]

See related functions in objmgr/util/seq_loc_util.hpp:

TSeqPos GetLength(const CSeq_loc&, CScope*) bool IsOneBioseq(const CSeq_loc&, CScope*) const CSeq_id& GetId(const CSeq_loc&, CScope*) TSeqPos GetStart(const CSeq_loc&, CScope*) sequence::ECompare Compare(const CSeq_loc&, CSeq_loc&, CScope*) sequence::SeqLocMerge(...)

Definition at line 126 of file Seq_loc.hpp.

◆ TRange [2/3]

Definition at line 436 of file Seq_loc.hpp.

◆ TRange [3/3]

Definition at line 464 of file Seq_loc.hpp.

◆ TRanges

Definition at line 103 of file Seq_loc.hpp.

◆ TStrand

Definition at line 101 of file Seq_loc.hpp.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
private
Enumerator
kDirtyCache 
kSeveralIds 

Definition at line 392 of file Seq_loc.hpp.

◆ ECompareFlags

Flags for location comparison.

Enumerator
fCompare_Default 
fCompare_Strand 

Definition at line 244 of file Seq_loc.hpp.

◆ EEmptyFlag

Options for empty locations processing.

Enumerator
eEmpty_Skip 
eEmpty_Allow 

ignore empty locations

treat empty locations as usual

Definition at line 456 of file Seq_loc.hpp.

◆ EEquivMode

This enum defines a way equiv sets are expanded or created when one of Insert*() methods is called.

Enumerator
eEquiv_none 

By default no equiv sets are created or expanded except if insertion point is completely inside of an equiv or its part.

eEquiv_new_equiv 

A new equiv set will be created, even if the insertion point is already inside of an existing equiv, so that new equiv set may become a sub-unit of an exisiting equiv set.

The new equiv set will contain one part with the inserted element as its content. The mode will switch to eEquiv_append after the insertion.

eEquiv_new_part 

New equiv part will be started with the inserted element.

If the insertion point is not in or near any existing equiv part then exception is thrown. If... A. the insertion point is exactly between two equiv sets then a new equiv part will be created at the end of the first set with the inserted element as its content. B. the insertion point is at a boundary of any equiv part then a new equiv part will be created at this point with the inserted element as its content. C. the insertion point is in the middle of existing part then the existing part will be split at the insertion point and new element will be added to the second part after splitting.

The mode will switch to eEquiv_append after the insertion.

eEquiv_append 

If the insertion point is just after any equiv part, including the last one in an equiv, then the inserted element is appended to the part, and the equiv mode will remain eEquiv_append.

Otherwise the equiv mode will switch to eEquiv_none. Change the mode to eEquiv_none explicitly if you want to stop expanding existing equiv.

eEquiv_prepend 

If the insertion point is just before any equiv part, including the first one in an equiv, then the inserted element is prepended to the part, and the equiv mode will remain eEquiv_prepend.

Otherwise the equiv mode will switch to eEquiv_none. Change the mode to eEquiv_none explicitly if you want to stop expanding existing equiv.

Definition at line 760 of file Seq_loc.hpp.

◆ EErrCode

Enumerator
eNotSet 

Seq-loc is not set.

eMultipleId 

Seq-loc on multiple ids when one id is required.

eUnsupported 

Seq-loc has data that is not supported yet.

eBadLocation 

Seq-loc is incorrectly formed.

eBadIterator 

Seq-loc iterator is in bad state.

eIncomatible 

Seq-loc type is incompatible with operation.

eOutOfRange 

parameter is out of valid range

eOtherError 

Definition at line 76 of file Seq_loc.hpp.

◆ EMakeType

Options for creation modified locations Bond and equiv types are preserved if possible.

Enumerator
eMake_CompactType 
eMake_PreserveType 

use most compact Seq-loc type (default)

keep original Seq-loc type if possible

Definition at line 597 of file Seq_loc.hpp.

◆ EOpFlags

CSeq_loc operations.

Flags for operations: fStrand_Ignore - if set, strands will be ignored and any ranges may be merged/sorted. If not set, ranges on plus and minus strands are treated as different sub-sets. In some operations strand may still be checked (see fMerge_Abutting and order of ranges).

NOTE: merge flags do not sort ranges, so only overlaps bewtween neighbor ranges can be detected. To merge all overlappig ranges add fSort flag. The only exception is fSortAndMerge_All which already includes fSort;

fMerge_Contained - merges (removes) any range which is completely contained in another range. fMerge_Abutting - merge abutting ranges. Also forces merging of contained ranges. Even if fStrand_Ignore is set, only the ranges with the correct order are merged (e.g. loc2.to == loc1.from must be true if loc1.strand is minus). fMerge_Overlapping - merge overlapping ranges. Also forces merging of contained ranges. fMerge_All - merge any ranges if possible (contained, overlapping, abutting). The flag does not force sorting, so only neighbor ranges can be merged. To sort ranges before merging add fSort flag or use fSortAndMerge_All. fSortAndMerge_All - combination of fSort and fMerge_All. fMerge_SingleRange - creates a single range, covering all original ranges. Strand is set to the first strand in the original seq-loc, regardless of the strand flag.

fSort - forces sorting of the resulting ranges. All ranges on the same ID are grouped together, but the order of IDs is undefined. Strand is preserved if all values having the same direction are equal. Otherwise strand is reset to plus and minuns (in strand-preserve mode) or unknown (in strand-ignore mode). NULLs are always merged to a single NULL. The order of locations for each ID is: NULL, whole, empty, plus strand intervals, minus strand intervals.

Enumerator
fStrand_Ignore 
fMerge_Contained 
fMerge_AbuttingOnly 
fMerge_Abutting 
fMerge_OverlappingOnly 
fMerge_Overlapping 
fMerge_All 
fMerge_SingleRange 
fSort 
fSortAndMerge_All 

Definition at line 324 of file Seq_loc.hpp.

◆ ESeqLocOrder

Enumerator
eOrder_Positional 
eOrder_Biological 

Iterate sub-locations in positional order.

Iterate sub-locations in biological order

Definition at line 460 of file Seq_loc.hpp.

Function Documentation

◆ Add() [1/2]

void CSeq_loc::Add ( const CSeq_loc other)

Simple adding of seq-locs.

Definition at line 3875 of file Seq_loc.cpp.

References CSeq_loc_equiv::Add(), CPacked_seqint::AddInterval(), CPacked_seqint::AddIntervals(), CPacked_seqpnt::AddPoint(), CPacked_seqpnt::AddPoints(), CSeq_loc_mix::AddSeqLoc(), CSeq_loc::Assign(), 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(), CSeq_loc_Base::GetPacked_int(), CSeq_loc_Base::GetPacked_pnt(), CSeq_loc_Base::GetPnt(), CSeq_point_Base::GetPoint(), CPacked_seqpnt_Base::GetPoints(), CSeq_loc::InvalidateCache(), CSeq_loc_Base::IsInt(), CSeq_loc_Base::IsPacked_int(), CSeq_loc_Base::IsPacked_pnt(), CSeq_loc_Base::IsPnt(), NCBI_THROW_FMT, s_CanAdd(), CSeq_loc_Base::SelectionName(), CSeq_loc::SetEquiv(), CSeq_loc::SetMix(), CSeq_loc::SetPacked_int(), CSeq_loc::SetPacked_pnt(), CSeq_loc_Base::Which(), CSeq_loc::x_ChangeToMix(), CSeq_loc::x_ChangeToPackedInt(), and CSeq_loc::x_ChangeToPackedPnt().

Referenced by FeatUtil::AddLocations(), CAutoDefFeatureClause::CAutoDefFeatureClause(), ExtendCDSToStopCodon(), ExtendToStopCodon(), CFeatureGenerator::SImplementation::FixOrderOfCrossTheOriginSeqloc(), CValidError_bioseq::GetLocFromSeq(), GetSeqExt(), C5ColImportData::Initialize(), CLocMapper_Default::Map(), CFeatureGenerator::SImplementation::MergeSeq_locs(), CCompareSeqRegions::NextComparisonGroup(), s_CombineDustMasksWithUserProvidedMasks(), variation_ref::CVariationUtil::s_FactorOutLocsInPlace(), s_GetMaskLoc(), s_GetUngapLoc(), s_MakeNewMasterSeq(), CGetSeqLocFromStringHelper::Seq_loc_Add(), Seq_loc_Add(), Seq_locs_Merge(), CGeneFinder::CGeneSearchPlugin::setUpFeatureIterator(), SplitLocationForGap(), TruncateSeqLoc(), CMaskedRangeSet::x_CombineLocs(), CSGAlignmentJob::x_CreateFeatGlyph(), CWindowMaskerJob::x_CreateProjectItems(), CFeaturePropagator::x_ExtendToStopCodon(), variation::CVariationUtil::CCdregionIndex::x_Index(), CXcompareAnnotsApplication::x_ProcessMappingRange(), CNewCleanup_imp::x_SeqFeatRnaGBQualBC(), CSeq_loc_Mapper_Base::x_StripExtraneousFuzz(), x_ToBlastVec(), CFeaturePropagator::x_TruncateToStopCodon(), CGtfWriter::xWriteFeatureExons(), and CBedWriter::xWriteFeaturesTracked().

◆ Add() [2/2]

CRef< CSeq_loc > CSeq_loc::Add ( const CSeq_loc other,
TOpFlags  flags,
ISynonymMapper syn_mapper 
) const

Add seq-loc, merge/sort resulting ranges depending on flags.

Return a new seq-loc object.

Definition at line 5060 of file Seq_loc.cpp.

References flags, CSeq_loc::fMerge_SingleRange, CSeq_loc::fSort, tmp, x_MergeAndSort(), x_MergeNoSort(), and x_SingleRange().

◆ Assign()

void CSeq_loc::Assign ( const CSerialObject source,
ESerialRecursionMode  how = eRecursive 
)
virtual

Override Assign() to incorporate cache invalidation.

Reimplemented from CSerialObject.

Definition at line 337 of file Seq_loc.cpp.

References CSeq_id::Assign(), CSerialObject::Assign(), 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::GetEmpty(), CSeq_loc_Base::GetEquiv(), CSeq_loc_Base::GetFeat(), CSeq_loc_Base::GetInt(), CSeq_loc_Base::GetMix(), CSeq_loc_Base::GetPacked_int(), CSeq_loc_Base::GetPacked_pnt(), CSeq_loc_Base::GetPnt(), CSerialObject::GetThisTypeInfo(), CSeq_loc_Base::GetWhole(), CSeq_loc::InvalidateCache(), CSeq_loc_Base::Reset(), CSeq_loc::SetBond(), CSeq_loc::SetEmpty(), CSeq_loc::SetEquiv(), CSeq_loc::SetFeat(), CSeq_loc::SetInt(), CSeq_loc::SetMix(), CSeq_loc::SetNull(), CSeq_loc::SetPacked_int(), CSeq_loc::SetPacked_pnt(), CSeq_loc::SetPnt(), CSeq_loc::SetWhole(), CSeq_loc_Base::Which(), and x_Assign().

Referenced by CSeq_loc_equiv::Add(), CSeq_loc::Add(), FeatUtil::AddLocations(), CSeq_loc_mix::AddSeqLoc(), CEditSequence::AdjustFeatureLocations(), CCDSTranslationPanel::AdjustForStopCodonHyperlinkClicked(), CEditSeqEndsWithAlign::AdjustLoc(), CAlignmentAssistant::AdjustLoc(), AdjustMappedStop(), CAdjustForConsensusSpliceSite::AdjustmRNAToMatchCDSEnds(), CFeatGapInfo::AdjustProteinSeq(), CFeatTrim::Apply(), CFuseJoinsInLocs::apply(), CAdjustFeatsForIntrons::apply(), CCreateLocusTagGene::apply(), CDiscrepancyVisitorImpl< _Name >::Autofix(), BOOST_AUTO_TEST_CASE(), Canonicalize(), CBedImportData::CBedImportData(), CCompareSeq_locs::CCompareSeq_locs(), CGtfImportData::CGtfImportData(), CSeq_loc::ChangeToMix(), CWriteUtil::ChangeToPackedInt(), CSeq_loc::ChangeToPackedInt(), CMultiSeqInfo::CMultiSeqInfo(), CollapseDiscontinuitiesInUTR(), CFixForTransSplicing::CombineFeatures(), variation::Contains(), CConvertCDSToMiscFeat::Convert(), CLocationEditPolicy::ConvertToJoin(), CLocationEditPolicy::ConvertToOrder(), CQueryFactoryInfo::CQueryFactoryInfo(), CAlignmentAssistant::CreateFeature(), CEditSequence::CreateFeature(), variation_ref::CVariationUtil::CreateFlankLocs(), variation::CVariationUtil::CreateFlankLocs(), CEditSequence::CreateRegulatory(), CStd_seg::CreateRowSeq_loc(), ExtendCDSToStopCodon(), ExtendStop(), ExtendToStopCodon(), CProSplign::FindGlobalAlignment(), CProSplign::CImplementation::FindGlobalAlignment_stage1(), FindNewLocations(), IEditingActionFeat::FindOrCreateProtFeat(), CEditingActionFeatGeneLocus::FindRelated(), IEditingActionFeat::FindRelatedOrCreateProtFeat(), variation::FindSSRLoc(), CFlatAnticodonQVal::Format(), fta_seqloc_del_far(), fta_seqloc_local(), CGeneFinder::GeneSearchNormalizeLoc(), variation::CVariationUtil::CCdregionIndex::Get(), CFindRSites::GetAnnot(), CMacroBioData_FeatIterBase::GetBestDescr(), CMacroBioData_FeatIntervalIter::GetBestDescr(), GetBioseq(), variation::CVariationUtil::CCdregionIndex::GetCachedLiteralAtLoc(), CCdsFromGeneMrnaExon::GetCommand(), CFuseFeaturesDlg::GetCommand(), CGeneFeatFromOtherFeatDlg::GetCommand(), CmRNAFromGeneCdsExon::GetCommand(), CtRNAFromGene::GetCommand(), CTruncateCDS::GetCommand(), CGeneFeatFromXrefs::GetCommand(), CValidErrorFormat::GetFeatureLocationLabel(), CValidErrorFormat::GetFeatureProductLocLabel(), CGeneFinder::GetFeatViaSubsetThenExtremesIfPossible(), CProteinAlignText::GetGenomicBounds(), variation::CVariationUtil::CVariantPropertiesIndex::GetLocationProperties(), GetOverlappingFeatures(), GetProductLabel(), GetSeqLocation(), GetSeqLocDescription(), CAlignGlyph::GetSignature(), GetSourceFeatForProduct(), CFeatGlyph::GetTooltip(), CWriteUtil::GetTranssplicedEndpoints(), GetValidatorLocationLabel(), CNSeq::Init(), CGffFeatureRecord::InitLocation(), MakemRNAforCDS(), CAliToSeq_align::MakeSeq_align(), CIdMapper::Map(), CLocMapper_Default::Map(), CGencollIdMapper::Map(), CCdsToMatPeptide::MergeConvert(), NormalizeLoc(), variation::SFastLocSubtract::operator()(), PatchTargetSequence(), CBedAnnotAssembler::ProcessRecord(), variation::CVariationUtil::RemapToAnnotatedTarget(), s_FlattenLoc(), s_GetClipLoc(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetIntronsAndSpliceSiteLocs(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetUTRLocs(), s_HasMobileElementForInterval(), s_LocationJoinToOrder(), s_NormalizeNullsBetween(), CSequenceUpdater::s_OffsetLocation(), s_UpdateCodeBreaksAndAnticodons(), CClippedScorer::ScoreAlignments(), CNewCleanup_imp::SeqLocBC(), CCleanup::SeqLocExtend(), CSeq_loc_Mapper_Message::SetLoc(), CCDSTranslationPanel::SetProduct(), variation_ref::CVariationUtil::SetVariantProperties(), CFeatGapInfo::Split(), SrchGene(), CAlignmentAssistant::TranslateLocations(), CFeatGapInfo::Trim(), TruncateSeqLoc(), UpdateToBestId(), CUCSCRegionWriter::WriteAnnot(), CFeatureItem::x_AddQualsProt(), CFeatGapInfo::x_AdjustCodebreaks(), variation::CVariationUtil::x_AdjustDelinsToInterval(), CFeatGlyph::x_AdjustFrame(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), variation_ref::CHgvsParser::x_AsHgvsExpression(), CSequenceEditingEventHandler::x_CacheSelectedLocations(), variation::CVariationUtil::CCdregionIndex::x_CacheSeqData(), CFastaExportJob::x_CheckForDuplicates(), CFlatGatherer::x_CollectSourceFeatures(), CCompareSeq_locs::x_Compare(), variation_ref::CHgvsParser::x_conversion(), CFeatureGenerator::SImplementation::x_CreateCdsFeature(), CFeatureGenerator::SImplementation::x_CreateNcRnaFeature(), CAdjustForConsensusSpliceSite::x_CreateNewLocation(), CGBankLoadingJob::x_CreateProjectItems(), CCreateNeedlemanWunschJob::x_CreateProjectItems(), CFeatureGenerator::SImplementation::x_CreateProteinBioseq(), CFeaturePropagator::x_ExtendToStopCodon(), CSeq_loc_Mapper_Base::x_FixNonsenseFuzz(), CFlatGatherer::x_GatherFeatures(), CFlatGatherer::x_GatherFeaturesIdx(), x_GetBestOverlapForSNP(), CSeq_align_Mapper_Base::x_GetDstSpliced(), CAsn2FlatApp::x_GetLocation(), CEditingBtnsPanel::x_GetSelectedLocations(), x_GetSourceFeatViaCDS(), IEditingActionFeat::x_GetSublocOnBioseq(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), CEditObjectSeq_feat::x_HandleCdsProduct(), variation_ref::CHgvsParser::x_identity(), variation::CVariationUtil::CVariantPropertiesIndex::x_Index(), variation_ref::CHgvsParser::x_InstToString(), CGencollIdMapper::x_Map_OneToOne(), CGencollIdMapper::x_Map_Up(), CFeatureGenerator::SImplementation::x_MapFeature(), CFeaturePropagator::x_MapLocation(), CSequenceUpdater::x_MappedFeature_ChangeId(), CSeq_loc_Mapper_Base::x_MapSeq_loc(), variation_ref::CHgvsParser::x_nuc_inv(), variation::CHgvsParser::x_seq_loc(), CBioseqContext::x_SetLocation(), CCDSTranslationPanel::x_SetLocationForProtein(), variation_ref::CHgvsParser::x_ssr(), CSeq_loc_Mapper_Base::x_StripExtraneousFuzz(), CFeatTrim::x_TrimCodeBreak(), CFeatTrim::x_TrimTrnaExt(), CFeaturePropagator::x_TruncateToStopCodon(), CModifySeqId::x_UpdateLoc(), CAdjustForConsensusSpliceSite::x_UpdateMixLocations(), CGff3Writer::xAssignFeature(), CGtfWriter::xAssignFeaturesCds(), CGtfWriter::xAssignFeaturesGene(), CGtfWriter::xAssignFeaturesTranscript(), and CExonNumberAssigner::xInitialize().

◆ begin()

CSeq_loc::const_iterator CSeq_loc::begin ( void  ) const

◆ ChangeToMix()

void CSeq_loc::ChangeToMix ( void  )

◆ ChangeToPackedInt()

void CSeq_loc::ChangeToPackedInt ( void  )

Works only if location is currently an interval, point, packed-int (handled trivially), or a mix built recursively from these.

Definition at line 3670 of file Seq_loc.cpp.

References CPacked_seqint::AddInterval(), CSeq_loc::Assign(), CSeq_loc::ChangeToPackedInt(), copy(), 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_Pnt, CInt_fuzz_Base::eLim_gt, CInt_fuzz_Base::eLim_lt, Get(), CSeq_point_Base::GetFuzz(), CSeq_loc::GetId(), CSeq_loc_Base::GetInt(), CInt_fuzz_Base::GetLim(), CSeq_loc_Base::GetMix(), CSeq_loc_Base::GetPnt(), CSeq_loc::GetStrand(), CInt_fuzz_Base::IsLim(), CSeq_loc::IsSetStrand(), ITERATE, NCBI_THROW_FMT, CSeq_loc_Base::SelectionName(), CSeq_interval_Base::SetFrom(), CSeq_interval_Base::SetFuzz_from(), CSeq_interval_Base::SetFuzz_to(), CSeq_interval_Base::SetId(), CSeq_loc::SetPacked_int(), CSeq_interval_Base::SetStrand(), CSeq_interval_Base::SetTo(), ncbi::grid::netcache::search::fields::size, and CSeq_loc_Base::Which().

Referenced by CWriteUtil::ChangeToPackedInt(), CSeq_loc::ChangeToPackedInt(), CFeatureGenerator::SImplementation::ConvertMixedAlignToAnnot(), CFeatureGenerator::SImplementation::FixOrderOfCrossTheOriginSeqloc(), CWriteUtil::GetTranssplicedEndpoints(), CGtfLocationMerger::MergeLocationForGene(), s_CombineDustMasksWithUserProvidedMasks(), s_GetMaskLoc(), s_GetUngapLoc(), TruncateToCDS(), CUCSCRegionWriter::WriteAnnot(), CSeq_loc::x_ChangeToPackedInt(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), CFeatureGenerator::SImplementation::x_MapFeature(), CGtfWriter::xAssignFeaturesCds(), CGtfWriter::xAssignFeaturesGene(), CGtfWriter::xAssignFeaturesTranscript(), CExonNumberAssigner::xInitialize(), and CGtfWriter::xWriteFeatureExons().

◆ CheckId()

bool CSeq_loc::CheckId ( const CSeq_id *&  id,
bool  may_throw = true 
) const
inline

check that the 'id' field in all parts of the location is the same as the specifies id.

if the id parameter is NULL will return the location's id (if unique)

Returns
true on success

Definition at line 927 of file Seq_loc.hpp.

References CSeq_loc::m_IdCache, NULL, CSeq_loc::x_CheckId(), and CSeq_loc::x_UpdateId().

Referenced by CSeq_loc::GetId(), GetOverlappingFeatures(), and CStd_seg::RemapToLoc().

◆ Compare() [1/2]

int CSeq_loc::Compare ( const CSeq_loc loc) const

◆ Compare() [2/2]

int CSeq_loc::Compare ( const CSeq_loc loc,
TCompareFlags  flags 
) const

Compare locations by total range for each seq-id.

Compares seq-ids (

See also
CSeq_loc::CompareOrdered()), then compares total range starts (left to right) and lengths (longerst first). Optionally compares strands; location without strand goes first.

Definition at line 596 of file Seq_loc.cpp.

References CSeq_loc::CSeq_loc(), CSeq_id_Base::e_not_set, CSeq_loc_CI::eEmpty_Allow, CSerialObject::Equals(), flags, CSeq_loc::GetId(), CSeq_loc_CI::GetRangeAsSeq_loc(), CSeq_loc_CI::GetSeq_id(), CSeq_loc_Base::IsMix(), NULL, CSeq_loc::SetMix(), tmp, CSeq_id_Base::Which(), and CSeq_loc::x_CompareSingleId().

◆ CompareSubLoc()

int CSeq_loc::CompareSubLoc ( const CSeq_loc loc,
ENa_strand  strand,
const ISubLocFilter filter = NULL 
) const

Compare first-level sub-locations sequentially to order them by biological "complexity".

More "complex" location will come last. Sub-locations are checked in Seq-loc-mix and Packed-seqint. Minus strand locations' order is reversed. Seq-ids are not checked in this method, unless you set filter, which will allow the user to pick which parts to skip.

Definition at line 805 of file Seq_loc.cpp.

References Get(), CPacked_seqint_Base::Get(), CSeq_loc_mix_Base::Get(), CSeq_loc_Base::GetMix(), CSeq_loc_Base::GetPacked_int(), CSeq_loc_Base::IsMix(), CSeq_loc_Base::IsPacked_int(), IsReverse(), and s_CompareIntervals().

Referenced by CSeq_feat::CompareNonLocation(), CSeqUtils::GetCdsMappingInfoFromRna(), and CAnnotObjectType_Less::operator()().

◆ CSeq_loc() [1/7]

CSeq_loc::CSeq_loc ( const CSeq_loc )
private

◆ CSeq_loc() [2/7]

CSeq_loc::CSeq_loc ( E_Choice  index)

◆ CSeq_loc() [3/7]

CSeq_loc::CSeq_loc ( TId id,
const TPoints points,
TStrand  strand = eNa_strand_unknown 
)

◆ CSeq_loc() [4/7]

CSeq_loc::CSeq_loc ( TId id,
TPoint  from,
TPoint  to,
TStrand  strand = eNa_strand_unknown 
)

Definition at line 166 of file Seq_loc.cpp.

References CSeq_loc::InvalidateCache(), and CSeq_loc::SetInt().

◆ CSeq_loc() [5/7]

CSeq_loc::CSeq_loc ( TId id,
TPoint  point,
TStrand  strand = eNa_strand_unknown 
)

Definition at line 148 of file Seq_loc.cpp.

References CSeq_loc::InvalidateCache(), and CSeq_loc::SetPnt().

◆ CSeq_loc() [6/7]

CSeq_loc::CSeq_loc ( TId id,
TRanges  ivals,
TStrand  strand = eNa_strand_unknown 
)

◆ CSeq_loc() [7/7]

CSeq_loc::CSeq_loc ( void  )
inline

constructors

Definition at line 906 of file Seq_loc.hpp.

References CSeq_loc::InvalidateCache().

Referenced by CSeq_loc::ChangeToMix(), and CSeq_loc::Compare().

◆ CSeq_loc_CI() [1/4]

CSeq_loc_CI::CSeq_loc_CI ( const CSeq_loc loc,
EEmptyFlag  empty_flag = eEmpty_Skip,
ESeqLocOrder  order = eOrder_Biological 
)

Definition at line 2440 of file Seq_loc.cpp.

◆ CSeq_loc_CI() [2/4]

CSeq_loc_CI::CSeq_loc_CI ( const CSeq_loc_CI iter)

Definition at line 2462 of file Seq_loc.cpp.

◆ CSeq_loc_CI() [3/4]

CSeq_loc_CI::CSeq_loc_CI ( const CSeq_loc_CI iter,
size_t  pos 
)

construct iterator at a different position in the same location

See also
GetPos()

Definition at line 2449 of file Seq_loc.cpp.

References CSeq_loc_CI::SetPos().

◆ CSeq_loc_CI() [4/4]

CSeq_loc_CI::CSeq_loc_CI ( void  )

◆ CSeq_loc_I() [1/3]

CSeq_loc_I::CSeq_loc_I ( const CSeq_loc_I iter,
size_t  pos 
)

construct iterator at a different position in the same location

See also
GetPos()

Definition at line 2667 of file Seq_loc.cpp.

References CSeq_loc_CI::SetPos().

◆ CSeq_loc_I() [2/3]

CSeq_loc_I::CSeq_loc_I ( CSeq_loc loc)

Definition at line 2661 of file Seq_loc.cpp.

◆ CSeq_loc_I() [3/3]

CSeq_loc_I::CSeq_loc_I ( void  )

◆ DECLARE_OPERATOR_BOOL()

CSeq_loc_CI::DECLARE_OPERATOR_BOOL ( x_IsValid()  )

◆ Delete()

void CSeq_loc_I::Delete ( void  )

Delete current element, and make iterator to point to the next element.

All other iterators of the same CSeq_loc object will become invalid. If the deleted element is contained in any equiv set then the equiv set and its corresponding part will be reduced in size appropriately, and if the part and/or the set become empty after the deletion they will be removed completely.

Definition at line 2724 of file Seq_loc.cpp.

References CSeq_loc_CI_Impl::DeleteRange(), CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

Referenced by CEditSequence::AdjustFeatureLocations(), CEditSeqEndsWithAlign::AdjustLoc(), CAlignmentAssistant::AdjustLoc(), CEditSequence::AdjustProtFeatureLocations(), CFuseJoinsInLocs::apply(), CDiscrepancyVisitorImpl< _Name >::Autofix(), CAlignmentAssistant::TranslateLocations(), IEditingActionFeat::x_GetSublocOnBioseq(), and CFeaturePropagator::x_MapLocation().

◆ end()

CSeq_loc::const_iterator CSeq_loc::end ( void  ) const

◆ FlipStrand()

void CSeq_loc::FlipStrand ( void  )

◆ GetBestSynonym()

virtual CSeq_id_Handle ISynonymMapper::GetBestSynonym ( const CSeq_id id)
pure virtual

◆ GetBondRange()

pair< CSeq_loc_CI, CSeq_loc_CI > CSeq_loc_CI::GetBondRange ( void  ) const

Return iterators that cover bond of current position result.first is the first segment in the equiv set result.second is the first segment after the equiv set.

Definition at line 2518 of file Seq_loc.cpp.

References CSeq_loc_CI::CSeq_loc_CI(), CSeq_loc_CI_Impl::GetBondRange(), indexes, CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

◆ GetCircularLength()

TSeqPos CSeq_loc::GetCircularLength ( TSeqPos  seq_len) const

Special case for circular sequences.

No ID is checked for circular locations. If the sequence is not circular (seq_len == kInvalidSeqPos) the function works like GetTotalRange()

Definition at line 1011 of file Seq_loc.cpp.

References eExtreme_Biological, COpenRange< Position >::GetLength(), CSeq_loc::GetStart(), CSeq_loc::GetStop(), CSeq_loc::GetTotalRange(), CSeq_loc::IsReverseStrand(), kInvalidSeqPos, and minus().

◆ GetEmbeddingSeq_loc()

const CSeq_loc & CSeq_loc_CI::GetEmbeddingSeq_loc ( void  ) const

Get the nearest seq-loc containing the current range.

For packed/mixed locations the embedding seq-loc may include other ranges.

Note
Don't ever confuse it with GetRangeAsSeq_loc!

Definition at line 2573 of file Seq_loc.cpp.

References eNotSet, SSeq_loc_CI_RangeInfo::m_Loc, NCBI_THROW, CSeq_loc_CI::x_CheckValid(), and CSeq_loc_CI::x_GetRangeInfo().

Referenced by CDiscrepancyVisitorImpl< _Name >::Autofix(), CFeatureGenePanel::GetLocationForGene(), CSeq_loc_CI::GetSeq_loc(), s_GetCdregionPlusUpstream(), s_LocationJoinToOrder(), s_LocationToStartStopPairs(), s_SeqLocAnyNull(), SeqLocPartialCheck(), and CFlatSeqLoc::x_Add().

◆ GetEquivMode()

CSeq_loc_I::EEquivMode CSeq_loc_I::GetEquivMode ( void  ) const

Get equiv modification mode.

See also
SetEquivMode()

Definition at line 2712 of file Seq_loc.cpp.

References CSeq_loc_CI_Impl::GetEquivMode(), and CSeq_loc_CI::m_Impl.

◆ GetEquivPartRange() [1/2]

pair< CSeq_loc_CI, CSeq_loc_CI > CSeq_loc_CI::GetEquivPartRange ( size_t  level = 0) const

Return iterators that cover equiv part of current position result.first is the first segment in the equiv part result.second is the first segment after the equiv part level specify equiv set if there are more than one of them level = 0 is the smallest equiv set (innermost)

Definition at line 2558 of file Seq_loc.cpp.

References CSeq_loc_CI::CSeq_loc_CI(), CSeq_loc_CI_Impl::GetEquivPartRange(), indexes, CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

Referenced by BOOST_AUTO_TEST_CASE().

◆ GetEquivPartRange() [2/2]

pair< CSeq_loc_I, CSeq_loc_I > CSeq_loc_I::GetEquivPartRange ( size_t  level = 0) const

Return iterators that cover equiv part of current position result.first is the first segment in the equiv part result.second is the first segment after the equiv part level specify equiv set if there are more than one of them level = 0 is the smallest equiv set (innermost)

Definition at line 2963 of file Seq_loc.cpp.

References CSeq_loc_I::CSeq_loc_I(), CSeq_loc_CI_Impl::GetEquivPartRange(), indexes, CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

Referenced by BOOST_AUTO_TEST_CASE().

◆ GetEquivSetRange() [1/2]

pair< CSeq_loc_CI, CSeq_loc_CI > CSeq_loc_CI::GetEquivSetRange ( size_t  level = 0) const

Return iterators that cover equiv set of current position result.first is the first segment in the equiv set result.second is the first segment after the equiv set level specify equiv set if there are more than one of them level = 0 is the smallest equiv set (innermost)

Definition at line 2548 of file Seq_loc.cpp.

References CSeq_loc_CI::CSeq_loc_CI(), CSeq_loc_CI_Impl::GetEquivSetRange(), indexes, CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

Referenced by BOOST_AUTO_TEST_CASE().

◆ GetEquivSetRange() [2/2]

pair< CSeq_loc_I, CSeq_loc_I > CSeq_loc_I::GetEquivSetRange ( size_t  level = 0) const

Return iterators that cover equiv set of current position result.first is the first segment in the equiv set result.second is the first segment after the equiv set level specify equiv set if there are more than one of them level = 0 is the smallest equiv set (innermost)

Definition at line 2953 of file Seq_loc.cpp.

References CSeq_loc_I::CSeq_loc_I(), CSeq_loc_CI_Impl::GetEquivSetRange(), indexes, CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

Referenced by BOOST_AUTO_TEST_CASE().

◆ GetEquivSetsCount()

size_t CSeq_loc_CI::GetEquivSetsCount ( void  ) const

Return number of recursuve equiv parts current position in.

Definition at line 2540 of file Seq_loc.cpp.

References CSeq_loc_CI_Impl::GetEquivSetsCount(), CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

Referenced by BOOST_AUTO_TEST_CASE().

◆ GetErrCodeString()

const char * CSeqLocException::GetErrCodeString ( void  ) const
overridevirtual

◆ GetFuzzFrom()

const CInt_fuzz * CSeq_loc_CI::GetFuzzFrom ( void  ) const
inline

◆ GetFuzzTo()

const CInt_fuzz * CSeq_loc_CI::GetFuzzTo ( void  ) const
inline

◆ GetId()

const CSeq_id * CSeq_loc::GetId ( void  ) const
inline

Get the id of the location return NULL if has multiple ids or no id at all.

Definition at line 941 of file Seq_loc.hpp.

References CSeq_loc::CheckId(), and NULL.

Referenced by AddCodeBreak(), AddColumnsToFeatureTable(), CIdMapper::AddMapping(), CCleanup::AddProtein(), AddProteinFeature(), CImportFeatTable::AddSeqAnnotToSeqEntry(), CAdjustForConsensusSpliceSite::AdjustCDS(), CAdjustForConsensusSpliceSite::AdjustCDSEnds(), CEditSequence::AdjustFeatureLocations(), AdjustMappedStop(), variation::AdjustMoltype(), CFeatGapInfo::AdjustProteinSeq(), AdjustSingleFeature(), CGroupExplode::apply(), CExplodeRNAFeats::apply(), ApplyFeatureSeqTableToSeqEntry(), variation::CVariationUtil::AsVariation(), variation::CHgvsParser::AttachHgvs(), variation::CVariationUtil::AttachProteinConsequences(), CDiscrepancyVisitorImpl< _Name >::Autofix(), Blast_FindWindowMaskerLoc(), BOOST_AUTO_TEST_CASE(), BuildFeatureSeqTableFromSeqEntry(), CSeq_loc::ChangeToPackedInt(), variation_ref::CVariationUtil::CheckExonBoundary(), variation::CVariationUtil::CheckExonBoundary(), CheckForeignLoc(), variation::CVariationUtil::CheckPlacement(), CIdRangeMap::CIdRangeMap(), IProjectViewFactory::CombineObjects(), CTableViewWithTextViewNav::CombineObjects(), CSeq_loc::Compare(), CFeaturePropagator::ConstructProteinFeatureForPropagatedCodingRegion(), COrfSearchForm::ConstructQuery(), CSequenceSearchForm::ConstructQuery(), CVariationNormalizationDelIns::ConvertExpandedInsertionToDelIns(), CProteinAlignText::CProteinAlignText(), CCreateProteinId::create_protein_ids(), CAlignmentAssistant::CreateFeature(), CEditSequence::CreateFeature(), variation::CVariationUtil::CreateFlankLocs(), CGuiObjectInfoComponent::CreateObject(), CGuiObjectInfoSeq_feat::CreateObject(), CGuiObjectInfoSeq_loc::CreateObject(), CGuiSeqInfoSeq_id::CreateObject(), CEditSequence::CreateRegulatory(), CRemoveName::CRemoveName(), CSeqVector::CSeqVector(), DoImportFTable(), CGBObjectLoader::Execute(), ExtendCDSToStopCodon(), ExtendLocationForTranslExcept(), ExtendStop(), CCleanup::ExtendStopPosition(), ExtendToStopCodon(), CAnnotationASN1::ExtractModels(), FinalCleanup(), CProSplign::FindGlobalAlignment(), variation::CVariationUtil::FindLocationProperties(), CInternalStopFinder::FindStartStopRanges(), CFeatureGenerator::SImplementation::FixOrderOfCrossTheOriginSeqloc(), FormatAsAsn(), fta_seqloc_del_far(), FTASeqLocCheck(), NSearchFeatPanel::GatherFeatures(), GetAccessionFromObjects(), CGenbankIdResolve::GetBestId(), CSeqUtils::GetCdsMappingInfoFromRna(), GetCdsOnMrna(), GetCDSProductSeq(), CExonFromCds::GetCommand(), CExtendCDSToStop::GetCommand(), CSNPTableModel::GetExtraValueAt(), CSeqUtils::GetFeatLocation(), CAddFeatureBetweenDlg::GetFeatureLocations(), CFeatGlyph::GetHTMLActiveAreas(), CBioseqSeqInfoSrc::GetId(), CSeq_featHandler::GetLabel(), GetLastCodonLoc(), CVecscreenRun::GetList(), CAnnotMapping_Info::GetLocationId(), CSeq_feat_Handle::GetLocationId(), CSeqUtils::GetMappingInfo(), GetOverlappingFeatures(), CAnnotMapping_Info::GetProductId(), CSeq_feat_Handle::GetProductId(), CCleanup::GetProteinLocationFromNucleotideLocation(), CCleanup::GetProteinName(), CCodingPropensity::GetScore(), CSeq_align::GetSeq_id(), IRepeatRegion::GetSeqIdString(), CWriteUtil::GetStringId(), CBlastQuerySourceOM::GetTitle(), CFeatGlyph::GetTooltip(), CGuiObjectInfoClone::GetToolTip(), CSeqIdField::GetVal(), CEditingActionFeatTranslation::GetValue(), CEditingActionFeatTranscriptId::GetValue(), CAsn2FastaApp::HandleSeqEntry(), CNewCleanup_imp::ImpFeatBC(), InheritPartialness(), CNSeq::Init(), CSeqTextPanel::InitObject(), IsGeneLocationOk(), IsOneBioseq(), CEditingActionFeatTranslation::IsSetValue(), CEditingActionFeatTranscriptId::IsSetValue(), MakeGeneForFeature(), MakemRNAforCDS(), MakeTrnaWithAnticodon(), CIdMapper::Map(), CCdsToMatPeptide::MergeConvert(), CGtfLocationMerger::MergeLocationForGene(), CFeatureGenerator::SImplementation::MergeSeq_locs(), variation::SFastLocSubtract::operator()(), operator<<(), PackSeqPntCheckCpp(), CCleanup::ParseCodeBreak(), PatchTargetSequence(), CTabularFormatter_SeqId::Print(), ProjectExons(), CGFFReader::Read(), CHgvsReader::ReadSeqAnnot(), CFeature_table_reader::ReadSequinFeatureTables(), variation_ref::CVariationUtil::Remap(), variation::CVariationUtil::Remap(), RemapAlignToLoc(), variation::CVariationUtil::RemapToAnnotatedTarget(), CCdsToMatPeptide::RemoveProteins(), RenameGeneratedBioseqs(), RestoreModelFromPublicMrnaFeature(), RestoreModelReadingFrame(), RetrievePartsOfLargeChromosome(), CNewCleanup_imp::RnaFeatBC(), CFeatureRetrievalJob::Run(), CVectorScreen::Run(), CDemoApp::Run(), variation::CVariationUtil::s_AddIntronicOffsets(), variation_ref::CVariationUtil::s_AddIntronicOffsets(), s_AddTopLevelGenomicLinks(), s_BLAST_OneSubjectResults2CSeqAlign(), s_CheckIfMatchesBioseq(), s_ChrName(), s_CombineRefs(), s_CreateMappingInfo(), s_DumpSequences_wRange(), s_EliminateDuplicates(), variation::CVariationUtil::s_FindConsequenceForPlacement(), s_GetAnnotId(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetGeneIdForProduct(), s_GetmRNAForCDS(), s_GetProductIdOrLocusTag(), s_GetRnaMappingLocs(), s_IdXrefsNotReciprocal(), s_IsVirtualLocation(), s_LocSortCompare(), s_ParseTRnaFromAnticodonString(), s_PartialAtGapOrNs(), s_TestForOverlapEx(), SeqIntCheckCpp(), SeqLocExtend(), CCleanup::SeqLocExtend(), CAutoDefExonListClause::SeqLocIntersect(), CFeatureSearchJob::SeqLocToString(), SeqPntCheckCpp(), CReportEntry::SetCds(), CReportEntry::SetMrna(), CEditingActionFeatTranslExcept::SetValue(), CFeatGapInfo::Split(), CUnorderedSplitter::SplitLoc(), StartAbutsGap(), StopAbutsGap(), TransferPartialness(), Translate(), TranslateCDSCommand(), CFeatGapInfo::Trim(), TruncateSeqLoc(), CMolTypeValidator::Validate(), CValidError_bioseq::ValidateDeltaLoc(), CValidError_bioseq::ValidateSeqFeatContext(), CCleanup::WGSCleanup(), CUCSCRegionWriter::WriteAnnot(), CFastaOstreamEx::WriteFeature(), CFastaOstreamEx::x_AddProteinIdAttribute(), CFastaOstreamEx::x_AddProteinNameAttribute(), CFeatureItem::x_AddQualProteinConflict(), CFeatureItem::x_AddQualsCdregionIdx(), CFeatureItem::x_AddQualSeqfeatNote(), CFeatureItem::x_AddQualsRna(), CFastaOstreamEx::x_AddTranscriptIdAttribute(), CEditObjectSeq_feat::x_AdjustCircularGene(), CEditObjectSeq_feat::x_AdjustGene(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), variation::CHgvsParser::x_AsHgvsExpression(), variation::CHgvsParser::x_AsHgvsInstExpression(), CSGFeatureJob::x_CalcIntervals(), CFastaExportJob::x_CheckForDuplicates(), CFeatureGenerator::SImplementation::x_CheckInconsistentDbxrefs(), CSeqdesc_CI::x_CheckRef(), CQuerySplitter::x_ComputeQueryIndicesForChunks(), CCorrectGenesDialog::x_CorrectPairInterval(), CFeatureGenerator::SImplementation::x_CreateCdsFeature(), CImportFeatTable::x_CreateCommand(), CSGFeatureJob::x_CreateFeature1(), CGFFReader::x_CreateGeneFeatures(), CBLASTSeqToolJob::x_CreateProjectItems(), CTaxTreeToolJob::x_CreateProjectItems(), CProSplignJob::x_CreateProjectItems(), CWindowMaskerJob::x_CreateProjectItems(), CFeatureGenerator::SImplementation::x_CreateProteinBioseq(), CImportFeatTable::x_DoImportCDS(), CAdjustFeaturesForGaps::x_DoOne(), CFeatGlyph::x_DrawProjectedRuler(), CFeatGlyph::x_DrawRuler(), CNewCleanup_imp::x_ExtendFeatureToCoverSequence(), CFeaturePropagator::x_ExtendToStopCodon(), CImportFeatTable::x_FindLocalBioseq_Handle(), CFlatGatherer::x_GatherFeatures(), CFlatGatherer::x_GatherFeaturesIdx(), CFlatGatherer::x_GatherFeaturesOnRangeIdx(), CFlatGatherer::x_GatherFeaturesOnWholeLocation(), CFlatGatherer::x_GatherFeaturesOnWholeLocationIdx(), CDBSourceItem::x_GatherInfo(), CProjectFileWriter::x_GetAnnotId(), CFeatureItem::x_GetAssociatedProtInfo(), CFeatureItem::x_GetAssociatedProtInfoIdx(), CClonePlacementGlyph::x_GetCloneEnds(), CCreateGeneModelTask::x_GetCommand(), x_GetDivisionProc(), x_GetDivisionProcIdx(), CGuiObjectInfoSeq_feat::x_GetFeatLocation(), CFastaOstreamEx::x_GetOtherIdString(), CGuiObjectInfoSeq_feat::x_GetProductLengthRow(), CClonePlacementGlyph::x_GetSupportTypeForNonPrototypeEnds(), CAlignedFeatureGraph::x_GetTooltip(), CFastaExportJob::x_GetWholeLoc(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), CFeatureGenerator::SImplementation::x_HandleRnaExceptions(), CValidError_bioseq::x_IdXrefsNotReciprocal(), variation::CVariationUtil::CCdregionIndex::x_Index(), variation::CVariationUtil::CVariantPropertiesIndex::x_Index(), variation::CVariationUtil::x_InferNAfromAA(), CSeq_align_Mapper_Base::x_Init(), CSeq_loc_Mapper_Base::x_InitializeLocs(), CValidError_bioseq::x_IsPartialAtSpliceSiteOrGap(), CCdregionValidator::x_IsProductMisplaced(), CSGAlignmentJob::x_LoadAlignmentFeats(), CBatchFeatJob::x_LoadFeatProducts(), CGencollIdMapper::x_Map_Up(), CFeatureGenerator::SImplementation::x_MapFeature(), CRNAPanel::x_PopulateTranscriptID(), CFlatGatherer::x_PrepareAnnotDescStrucComment(), variation::CVariationUtil::x_Remap(), CValidError_bioseq::x_ReportOverlappingPeptidePair(), CVecscreenRun::x_RunBlast(), CProSplignJob::x_RunProSplign(), CFeatureSearchJob::x_SearchForSNP(), CSequenceSearchJob::x_SearchSequence(), CBLASTToolManager::x_SelectCompatibleInputObjects(), CProSplignTool::x_SelectCompatibleInputObjects(), CSplignTool::x_SelectCompatibleInputObjects(), CWindowMaskerTool::x_SelectCompatibleInputObjects(), CNewCleanup_imp::x_SeqFeatCDSGBQualBC(), CFeatureGenerator::SImplementation::x_SetComment(), CFeatureGenerator::SImplementation::x_SetExceptText(), CCDSTranslationPanel::x_SetLocationForProtein(), CReportEntry::x_SetRnaCds(), CVariationNormalization_base< T >::x_Shift(), CAlignTabExportPage2::x_StartAlignNamesJob(), CAlignTabExportPage2::x_StartNAAlignNamesJob(), CValidError_bioseq::x_TranscriptIDsMatch(), CFastaOstreamEx::x_TrimLocation(), CFeaturePropagator::x_TruncateToStopCodon(), CSeqAlignFilter::x_UpdateGiInSeqalign(), CModifySeqId::x_UpdateLoc(), CAdjustForConsensusSpliceSite::x_UpdateLocation(), CSingleFeatValidator::x_ValidateExceptText(), CCdregionValidator::x_ValidateFarProducts(), CValidError_graph::x_ValidateGraphLocation(), CSingleFeatValidator::x_ValidateSeqFeatLoc(), CValidError_align::x_ValidateSeqLength(), CGff3Writer::xAssignFeature(), CGff2Writer::xAssignFeatureAttributeProduct(), CGff2Writer::xAssignFeatureAttributeProteinId(), CFeatTableEdit::xConvertToGeneralIds(), CFeatTableEdit::xGetGeneLocation(), CGff3ImportData::xInitializeDataCds(), XISAGappedSeqLoc(), CFeatureTableReader::xMoveCdRegions(), CWiggleWriter::xTableGetChromName(), CBedGraphWriter::xWriteAnnotSeqTable(), CGff3Writer::xWriteFeatureCds(), and CWiggleWriter::xWriteSingleGraphFixedStep().

◆ GetLabel()

void CSeq_loc::GetLabel ( string label) const

Appends a label suitable for display (e.g., error messages) label must point to an existing string object Method just returns if label is null.

Note this label is NOT GenBank-style.

Definition at line 3467 of file Seq_loc.cpp.

References label, and s_GetLabel().

Referenced by COrfSearchForm::ConstructQuery(), CExploreProcess::DoOneBioseq(), fta_fix_seq_loc_id(), CMacroBioData_FeatIterBase::GetBestDescr(), CMacroBioData_FeatIntervalIter::GetBestDescr(), variation::CVariationUtil::CCdregionIndex::GetCachedLiteralAtLoc(), CBulkGene::GetCommandFromValuesTable(), CBulkMiscFeat::GetCommandFromValuesTable(), CBulkRna::GetCommandFromValuesTable(), CDesktopGraphItem::GetDescription(), GetIdStartStopStrandStr(), GetLocationStr(), CSequenceUpdater::GetNotImportedFeatsReport(), GetProductLabel(), GetSeqLocDescription(), GetValidatorLocationLabel(), CBulkGene::GetValuesTableFromSeqEntry(), CBulkMiscFeat::GetValuesTableFromSeqEntry(), CBulkRna::GetValuesTableFromSeqEntry(), location_to_string(), CLocMapper_Default::Map(), CIdMapper::MapErrorString(), CCompareSeqRegions::NextComparisonGroup(), SFeats_OpLess::operator()(), COverlapPairLess::operator()(), CValidError_imp::PostErr(), PrintPntAndPntsUseBestID(), CFeaturePropagator::Propagate(), objects::CFixSuspectProductName::ReportFixedProduct(), SRelLoc::Resolve(), s_GetFeatDesc(), s_GetGeneTextLabel(), s_GetLabel(), CCompareFeats::s_GetLocLabel(), s_GetMrnaProductString(), SeqLocHaveFuzz(), SeqLocPrintUseBestID(), SeqLocString(), CGeneOverlapProcess::SeqLocString(), CGeneFeatTreeProcess::SeqLocString(), CSeqUtils::SeqLocToBioseq(), CFeatureSearchJob::SeqLocToString(), CValidError_bioseq::ValidateDeltaLoc(), variation::CVariationUtil::x_GetLiteralAtLoc(), CCompareSeqRegions::x_GetPutativeMatches(), CXcompareAnnotsApplication::x_ProcessComparison(), CXcompareAnnotsApplication::x_ProcessMappingRanges(), CXcompareAnnotsApplication::x_ProcessSeqAlignSetFromFile(), CFeaturePropagator::x_PropagatetRNA(), CSequenceUpdater::x_ShouldImportFeature(), and CValidError_bioseq::x_ValidateCDSVDJCmatch().

◆ GetLength()

virtual TSeqPos ILengthGetter::GetLength ( const CSeq_id id)
pure virtual

◆ GetPos()

size_t CSeq_loc_CI::GetPos ( void  ) const
inline

Get iterator's position.

Definition at line 1098 of file Seq_loc.hpp.

References CSeq_loc_CI::m_Index.

Referenced by CFeaturePropagator::x_MapLocation().

◆ GetRange()

CSeq_loc_CI::TRange CSeq_loc_CI::GetRange ( void  ) const
inline

Get the range.

Definition at line 1042 of file Seq_loc.hpp.

References SSeq_loc_CI_RangeInfo::m_Range, CSeq_loc_CI::x_CheckValid(), and CSeq_loc_CI::x_GetRangeInfo().

Referenced by CEditSequence::AdjustFeatureLocations(), CEditSeqEndsWithAlign::AdjustLoc(), CAlignmentAssistant::AdjustLoc(), CEditSequence::AdjustProtFeatureLocations(), CFuseJoinsInLocs::apply(), BOOST_AUTO_TEST_CASE(), CAnnotCompare::CompareFeats(), ConvertSeqLocsToPairwiseAln(), CLocationEditPolicy::Extend5(), CFeatureGenePanel::GetLocationForGene(), CSeqUtils::GetMappingInfoFromLocation(), CLocationEditPolicy::Is3AtEndOfSeq(), CLocationEditPolicy::Is5AtEndOfSeq(), IsExtendable(), CDense_seg::RemapToLoc(), s_AdjustToAnnotatedCDS(), s_CheckAbutting(), s_CheckMixLoc(), s_CreateMappingInfo(), s_IntervalsMatchGaps(), s_IsLocationEndAtOtherLocationInternalEndpoint(), CSequenceUpdater::s_OffsetLocation(), s_PartialAtGapOrNs(), s_PrintLocAsJavascriptArray(), s_SeqLocToRangeInfoMap(), s_SeqLocToRangeInfoMapByStrand(), s_SeqLocToTotalRangeInfoMap(), s_SeqLocToTotalRangesInfoMapByStrand(), s_Test_CheckIntervals(), s_TestForOverlapEx(), SeqLocToBioseq(), CReportEntry::SetCds(), CAlignmentAssistant::TranslateLocations(), CGuiObjectInfoSeq_feat::x_AddExtraInfo(), CFeatGlyph::x_AdjustFrame(), CSGFeatureJob::x_CalcIntervals(), CSGAlignmentJob::x_CreateFeatGlyph(), CFeatGlyph::x_DrawRuler(), CClonePlacementGlyph::x_GetCloneEnds(), CAnnotObject_Less::x_GetExtremes(), CSeq_loc_Mapper_Base::x_GetRangeLength(), CCleanup::x_HasShortIntron(), CSeq_loc_Mapper::x_InitGCSequence(), CSeq_loc_Mapper_Base::x_InitializeLocs(), CValidError_bioseq::x_IsPartialAtSpliceSiteOrGap(), CFeaturePropagator::x_MapLocation(), CAnnotObject_Info::x_ProcessAlign(), and CAdjustForConsensusSpliceSite::x_UpdateExonFeatures().

◆ GetRangeAsSeq_loc()

CConstRef< CSeq_loc > CSeq_loc_CI::GetRangeAsSeq_loc ( void  ) const

Get seq-loc for the current iterator position.

New CSeq_loc object may be created if the current range is a part of a packed/mixed seq-loc. The resulting seq-loc will always include only one range (which may be whole or empty).

See also
GetEmbeddingSeq_loc

Definition at line 2585 of file Seq_loc.cpp.

References ConstRef(), CSeq_loc_Base::e_Empty, CSeq_loc_Base::e_Int, CSeq_loc_Base::e_not_set, CSeq_loc_Base::e_Null, CSeq_loc_Base::e_Pnt, CSeq_loc_Base::e_Whole, info, CSeq_loc_CI::m_Impl, CSeq_loc_CI_Impl::MakeRangeLoc(), CRef< C, Locker >::Release(), CSeq_loc_CI::x_CheckValid(), and CSeq_loc_CI::x_GetRangeInfo().

Referenced by CAdjustForConsensusSpliceSite::AdjustCDS(), BOOST_AUTO_TEST_CASE(), CSeq_loc::Compare(), CLocationEditPolicy::ConvertToJoin(), CLocationEditPolicy::ConvertToOrder(), ExtendCDSToStopCodon(), ExtendToStopCodon(), fta_check_con_for_wgs(), fta_create_wgs_seqid(), FTASeqLocCheck(), CExtendCDSToStop::GetCommand(), IsMixedStrandGeneLocationOk(), s_NormalizeNullsBetween(), s_PartialAtGapOrNs(), s_SeqLocEndsOnBioseq(), SeqLocExtend3(), SeqLocExtend5(), CAdjustForConsensusSpliceSite::x_AdjustCDS3End(), CAdjustForConsensusSpliceSite::x_AdjustCDS5End(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), CSGFeatureJob::x_CalcIntervals(), CFeatGlyph::x_DrawFeatureBar(), CFeatGlyph::x_DrawRSites(), CFeaturePropagator::x_ExtendToStopCodon(), CValidError_bioseq::x_IsPartialAtSpliceSiteOrGap(), CSeq_loc_Mapper_Base::x_StripExtraneousFuzz(), CAdjustForConsensusSpliceSite::x_UpdateExonFeatures(), CAdjustForConsensusSpliceSite::x_UpdateLocation(), and CAdjustForConsensusSpliceSite::x_UpdateMixLocations().

◆ GetSeq_id()

const CSeq_id & CSeq_loc_CI::GetSeq_id ( void  ) const
inline

◆ GetSeq_id_Handle()

CSeq_id_Handle CSeq_loc_CI::GetSeq_id_Handle ( void  ) const
inline

◆ GetSeq_loc()

const CSeq_loc & CSeq_loc_CI::GetSeq_loc ( void  ) const
Deprecated:
You probably actually wanted to use GetRangeAsSeq_loc or GetEmbeddingSeq_loc instead.

Definition at line 2567 of file Seq_loc.cpp.

References CSeq_loc_CI::GetEmbeddingSeq_loc().

◆ GetSize()

size_t CSeq_loc_CI::GetSize ( void  ) const

◆ GetStart()

TSeqPos CSeq_loc::GetStart ( ESeqLocExtremes  ext) const

Return start and stop positions of the seq-loc.

Start position is the start of the first range in the seq-loc, stop is the end of the last range. if eExtreme_Biological flag is used, the effective order of ranges and range direction depends on the strand. NOTE: The returned values are not necessarily the same as the boundaries returned by GetTotalRange(). It's also not guaranteed that the value returned by GetStart() is less or equal to the one returned by GetStop().

Definition at line 915 of file Seq_loc.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(), COpenRange< Position >::GetFrom(), CSeq_loc_Base::GetInt(), CSeq_loc_Base::GetMix(), CSeq_loc_Base::GetPacked_int(), CSeq_loc_Base::GetPacked_pnt(), CSeq_loc_Base::GetPnt(), CSeq_point_Base::GetPoint(), CPacked_seqint::GetStart(), CPacked_seqpnt::GetStart(), CSeq_bond::GetStart(), CSeq_interval::GetStart(), CSeq_loc_mix::GetStart(), COpenRange< TSeqPos >::GetWhole(), kInvalidSeqPos, NCBI_THROW_FMT, CSeq_loc_Base::SelectionName(), and CSeq_loc_Base::Which().

Referenced by AdjustFeatureEnd5(), CEditSeqEndsWithAlign::AdjustFeatureLocations(), CAlignmentAssistant::AdjustFeatureLocations(), CEditSequence::AdjustFeatureLocations(), AdjustGene(), CEditSeqEndsWithAlign::AdjustLoc(), CAlignmentAssistant::AdjustLoc(), CAdjustForConsensusSpliceSite::AdjustmRNAToMatchCDSEnds(), CFeatGapInfo::AdjustProteinSeq(), CSplign::AlignSingleCompartment(), CConvertSelectedGaps::apply_impl(), CEditSelectedGaps::apply_impl(), ApplyPolicyToFeature(), BOOST_AUTO_TEST_CASE(), CFeatureIndex::CFeatureIndex(), Check5Extend(), CheckAdjustStart(), variation_ref::CVariationUtil::CheckExonBoundary(), CIdRangeMap::CIdRangeMap(), CMatchFeat::CMatchFeat(), CFeatGapInfo::CollectGaps(), CWriteUtil::CompareFeatures(), CConvertCDSToMiscFeat::Convert(), CVariationNormalizationDelIns::ConvertExpandedInsertionToDelIns(), CFeatureGenerator::SImplementation::ConvertMixedAlignToAnnot(), CEditingBtnsPanel::EditSequence(), CSequenceEditingEventHandler::EditSequence(), CCleanup::ExpandGeneToIncludeChildren(), CEditSequenceEnds::Extend5(), CExtendPartialFeatDlg::ExtendCDS(), ExtendCDSToStopCodon(), CCleanup::ExtendStopPosition(), ExtendToGapsOrEnds(), ExtendToStopCodon(), CBestFeatFinder::FindBestFeatForLoc(), FindNewLocations(), CInternalStopFinder::FindStartStopRanges(), CFeatureGenerator::SImplementation::FixOrderOfCrossTheOriginSeqloc(), CHTMLFormatterEx::FormatLocation(), CValidError_bioseq::GapByGapInst(), CScore_StartStopCodon::Get(), CScore_CdsScore::Get(), NSnp::GetAlleles(), variation::CVariationUtil::CCdregionIndex::GetCachedLiteralAtLoc(), GetCdRegionCB(), CSeqUtils::GetCdsMappingInfoFromRna(), CSeq_loc::GetCircularLength(), CWriteUtil::GetCodeBreak(), CExtendCDSToStop::GetCommand(), CmRNAFromGeneCdsExon::GetCommand(), CAlignmentAssistant::GetFeatures(), CProteinAlignText::GetGenomicBounds(), CSeq_featHandler::GetLabel(), GetOverlappingFeatures(), CCleanup::GetProteinLocationFromNucleotideLocation(), IRepeatRegion::GetSeqPosBegin(), GetStart(), CSeq_loc_mix::GetStart(), GetTerminalPartialness(), CWriteUtil::GetTrnaAntiCodon(), CEditingActionFeatTranslExcept::GetValue(), HasExcludedAnnotation(), IfOnlyStopCodon(), InheritPartialness(), CLocationEditPolicy::Is5AtEndOfSeq(), CExtendPartialFeatDlg::Is5AtStartOfSeq(), IsContinuous(), IsGeneLocationOk(), IsMixedStrandGeneLocationOk(), CConvertBadCdsAndRnaToMiscFeat::IsNonExtendable(), IsNonExtendable(), IsPartialStartConflict(), less(), MakeCompartments(), CFeatureTableReader::MakeGap(), MakeGeneForFeature(), MakemRNAforCDS(), CMatchmRNA::MatchAnyUnderlyingCDS(), CMatchmRNA::MatchesUnderlyingCDS(), CGtfLocationMerger::MergeLocationForGene(), CFeatureGenerator::SImplementation::MergeSeq_locs(), CMrnaMatchInfo::OkWithoutCds(), CBestFeatFinder::CSeqLocSort::operator()(), PatchTargetSequence(), CValidError_imp::PostErr(), CTabularFormatter_StopCodonChanges::Print(), printed_range(), ProjectExon_newlogic(), variation::CVariationUtil::Remap(), RemapOtherProtFeats(), variation::CVariationUtil::s_AddIntronicOffsets(), variation_ref::CVariationUtil::s_AddIntronicOffsets(), s_AddTopLevelGenomicLinks(), s_BuildMaskedRanges(), s_CheckIntervals(), s_CheckLocationResults(), s_CodonVariation(), s_CoincidingGapFeatures(), s_CompareTwoSeqGraphs(), s_ContainedIn(), s_GetFeatureKeyLinkLocation(), s_GetRestrictedBlastSeqLocs(), s_LocSortCompare(), s_MatchPartialType(), s_OverlapOrAbut(), CFeatureGenerator::s_ProjectRNA(), s_RestrictSeqLocs_Multiframe(), s_ShouldRemoveRef(), s_ShouldSetGenePartialStart(), s_SortShorttRNAs(), SeqLocExtend(), CCleanup::SeqLocExtend(), SeqLocExtend5(), C5ColImportData::Serialize(), CReportEntry::SetAlignment(), CBedFeatureRecord::SetBlocks(), CReportEntry::SetCds(), CGffFeatureRecord::SetLocation(), CFeatureGenerator::SImplementation::SetPartialFlags(), variation_ref::CVariationUtil::SetVariantProperties(), SplitLocationForGap(), StartAbutsGap(), CFeatureGenerator::SImplementation::StitchSmallHoles(), TestOneCDS(), CMacroFunction_ReplaceStopWithSelenocysteine::TheFunction(), CMacroFunction_LocEnd::TheFunction(), CMacroFunction_LocationDistConstraint::TheFunction(), CCrossRefFeatsDlg::TransferDataToWindow(), TransferPartialness(), CAlignmentAssistant::TranslateLocations(), variation::CVariationUtil::TranslateNAtoAA(), CEditSeqEndsWithAlign::TrimQualityScores(), TrimSeqGraph(), TruncateSeqLoc(), CValidError_bioseq::ValidateDupOrOverlapFeats(), CSpliceProblems::ValidateSpliceExon(), CSpliceProblems::ValidateSpliceMrna(), CCleanup::WGSCleanup(), CFeatureItem::x_AddQualsProt(), CSeqTextDataSourceInterval::x_AddVariationsFromFeature(), CEditObjectSeq_feat::x_AdjustCircularGene(), CEditObjectSeq_feat::x_AdjustGene(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), CCompareSeq_locs::x_Compare(), CCompareSeq_locs::x_CompareInts(), CSeq_loc::x_CompareSingleId(), CNaSeqlocHelper::x_ComputeSiteIndex(), CCorrectGenesDialog::x_CorrectPairInterval(), CFeatureGenerator::SImplementation::x_CreateProteinBioseq(), CLocation_constraint::x_DoesLocationMatchDistanceConstraint(), CSNPSearchJob::x_DoSearch(), CFeaturePropagator::x_ExtendToStopCodon(), CFlatGatherer::x_GatherFeaturesOnRangeIdx(), CFlatGatherer::x_GatherFeaturesOnWholeLocation(), CFlatGatherer::x_GatherFeaturesOnWholeLocationIdx(), CFastaOstreamEx::x_GetCodeBreak(), CObjectIndex::x_GetFeatureCode(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), CBioseqIndex::x_InitFeats(), CCDSTranslationProblems::x_Is5AtEndSpliceSiteOrGap(), CSingleFeatValidator::x_IsMostlyNs(), CFeatureGenerator::SImplementation::x_MapFeature(), CFeaturePropagator::x_MapLocation(), CValidError_bioseq::x_MatchesOverlappingFeaturePartial(), CValidError_bioseq::x_PartialAdjacentToIntron(), variation::CHgvsParser::x_PlacementCoordsToStr(), CFeatureGenerator::SImplementation::x_SetComment(), variation::CVariationUtil::x_SetVariantPropertiesForIntronic(), variation_ref::CVariationUtil::x_SetVariantPropertiesForIntronic(), CSequenceUpdater::x_ShouldRemoveFeature(), CUnorderedSplitter::x_SplitDeltaExt(), IEditingActionFeat::x_TestGeneForFeature(), CFastaOstreamEx::x_TrimLocation(), CVectorTrimPanel::x_TrimSeqGraphData(), CReportTrim::x_TrimSeqGraphData(), CFeaturePropagator::x_TruncateToStopCodon(), CAdjustForConsensusSpliceSite::x_UpdateExonFeatures(), CCreateGeneModelTask::x_UpdateGeneOnSequence(), CValidError_bioseq::x_ValidateAbuttingRNA(), CSingleFeatValidator::x_ValidateGeneXRef(), CValidError_graph::x_ValidateGraphLocation(), CValidError_graph::x_ValidateGraphValues(), CCdregionValidator::x_ValidateParentPartialness(), CValidError_align::x_ValidateStrand(), CGff2Writer::xAssignFeatureEndpoints(), CGff3Writer::xAssignFeatureEndpoints(), CFeatTableEdit::xGetGeneLocation(), CGff3AnnotAssembler::xProcessFeatureCds(), CFeatTableEdit::xPutErrorMissingLocustag(), CFeatTableEdit::xPutErrorMissingProteinId(), CFeatTableEdit::xPutErrorMissingTranscriptId(), and CGff2Record::xUpdateFeatureData().

◆ GetStop()

TSeqPos CSeq_loc::GetStop ( ESeqLocExtremes  ext) const

Definition at line 963 of file Seq_loc.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(), CSeq_loc_Base::GetMix(), CSeq_loc_Base::GetPacked_int(), CSeq_loc_Base::GetPacked_pnt(), CSeq_loc_Base::GetPnt(), CSeq_point_Base::GetPoint(), CPacked_seqint::GetStop(), CPacked_seqpnt::GetStop(), CSeq_bond::GetStop(), CSeq_interval::GetStop(), CSeq_loc_mix::GetStop(), COpenRange< Position >::GetTo(), COpenRange< TSeqPos >::GetWhole(), kInvalidSeqPos, NCBI_THROW_FMT, CSeq_loc_Base::SelectionName(), and CSeq_loc_Base::Which().

Referenced by AdjustFeatureEnd3(), AdjustGene(), CEditSeqEndsWithAlign::AdjustLoc(), CAlignmentAssistant::AdjustLoc(), AdjustMappedStop(), CFeatGapInfo::AdjustProteinSeq(), CSplign::AlignSingleCompartment(), ApplyPolicyToFeature(), BOOST_AUTO_TEST_CASE(), CFeatureIndex::CFeatureIndex(), Check3Extend(), CheckAdjustStop(), variation_ref::CVariationUtil::CheckExonBoundary(), CheckTerminalExceptionResults(), CIdRangeMap::CIdRangeMap(), CMatchFeat::CMatchFeat(), CFeatGapInfo::CollectGaps(), CWriteUtil::CompareFeatures(), CConvertCDSToMiscFeat::Convert(), CVariationNormalizationDelIns::ConvertExpandedDeletionToDelIns(), CCdsToMatPeptide::ConvertInner(), CFeatureGenerator::SImplementation::ConvertMixedAlignToAnnot(), CCleanup::ExpandGeneToIncludeChildren(), CEditSequenceEnds::Extend3(), CExtendPartialFeatDlg::ExtendCDS(), ExtendCDSToStopCodon(), ExtendLocationForTranslExcept(), ExtendStop(), CCleanup::ExtendStopPosition(), ExtendToGapsOrEnds(), ExtendToStopCodon(), CCleanup::ExtendToStopCodon(), CCleanup::ExtendToStopIfShortAndNotPartial(), CBestFeatFinder::FindBestFeatForLoc(), CInternalStopFinder::FindStartStopRanges(), CFeatureGenerator::SImplementation::FixOrderOfCrossTheOriginSeqloc(), FormatAsAsn(), CHTMLFormatterEx::FormatLocation(), CValidError_bioseq::GapByGapInst(), CScore_StartStopCodon::Get(), CScore_CdsScore::Get(), NSnp::GetAlleles(), GetCdRegionCB(), CSeqUtils::GetCdsMappingInfoFromRna(), CSeq_loc::GetCircularLength(), CWriteUtil::GetCodeBreak(), CExtendCDSToStop::GetCommand(), CmRNAFromGeneCdsExon::GetCommand(), CProteinAlignText::GetGenomicBounds(), CSeq_featHandler::GetLabel(), GetLastCodonLoc(), GetOverlappingFeatures(), CCleanup::GetProteinLocationFromNucleotideLocation(), GetRetranslateCDSCommand(), IRepeatRegion::GetSeqPosEnd(), GetStop(), CSeq_loc_mix::GetStop(), GetTerminalPartialness(), CWriteUtil::GetTrnaAntiCodon(), HasExcludedAnnotation(), IfOnlyStopCodon(), InheritPartialness(), InspectSeqFeat(), CExtendPartialFeatDlg::Is3AtEndOfSeq(), CLocationEditPolicy::Is3AtEndOfSeq(), IsContinuous(), IsExtendable(), IsGeneLocationOk(), IsMixedStrandGeneLocationOk(), CConvertBadCdsAndRnaToMiscFeat::IsNonExtendable(), IsNonExtendable(), IsPartialStopConflict(), less(), CCleanup::LocationMayBeExtendedToMatch(), MakeCompartments(), CFeatureTableReader::MakeGap(), MakeGeneForFeature(), MakemRNAforCDS(), CMatchmRNA::MatchAnyUnderlyingCDS(), CMatchmRNA::MatchesUnderlyingCDS(), CCdsToMatPeptide::MergeConvert(), CGtfLocationMerger::MergeLocationForGene(), CFeatureGenerator::SImplementation::MergeSeq_locs(), CMrnaMatchInfo::OkWithoutCds(), CBestFeatFinder::CSeqLocSort::operator()(), printed_range(), ProjectExon_newlogic(), variation::CVariationUtil::Remap(), RemapOtherProtFeats(), CStd_seg::RemapToLoc(), variation::CVariationUtil::s_AddIntronicOffsets(), variation_ref::CVariationUtil::s_AddIntronicOffsets(), s_AddTopLevelGenomicLinks(), s_CheckIntervals(), s_CheckLocationResults(), s_CoincidingGapFeatures(), s_CompareTwoSeqGraphs(), s_ContainedIn(), variation::CVariationUtil::s_FindLocationProperties(), s_GetFeatureKeyLinkLocation(), s_GetRestrictedBlastSeqLocs(), s_IsLocationEndAtOtherLocationInternalEndpoint(), s_LocSortCompare(), s_MakePointForLocationStop(), s_MatchPartialType(), s_OverlapOrAbut(), s_ParseTRnaFromAnticodonString(), CFeatureGenerator::s_ProjectRNA(), s_RestrictSeqLocs_Multiframe(), s_SeqLocEndsOnBioseq(), s_ShouldRemoveRef(), s_ShouldSetGenePartialStop(), SeqLocExtend(), CCleanup::SeqLocExtend(), SeqLocExtend3(), C5ColImportData::Serialize(), CGffFeatureRecord::SetLocation(), CFeatureGenerator::SImplementation::SetPartialFlags(), SetTranslExcept(), variation_ref::CVariationUtil::SetVariantProperties(), StopAbutsGap(), CMacroFunction_ReplaceStopWithSelenocysteine::TheFunction(), CMacroFunction_LocEnd::TheFunction(), CMacroFunction_LocationDistConstraint::TheFunction(), CCrossRefFeatsDlg::TransferDataToWindow(), TransferPartialness(), CEditSeqEndsWithAlign::TrimQualityScores(), TrimSeqGraph(), TrimStopsFromCompleteCDS(), CValidError_bioseq::ValidateDeltaLoc(), CValidError_bioseq::ValidateDupOrOverlapFeats(), CSpliceProblems::ValidateSpliceExon(), CSpliceProblems::ValidateSpliceMrna(), CCleanup::WGSCleanup(), CFeatureItem::x_AddQualsProt(), CSeqTextDataSourceInterval::x_AddVariationsFromFeature(), CEditObjectSeq_feat::x_AdjustCircularGene(), CEditObjectSeq_feat::x_AdjustGene(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), CCompareSeq_locs::x_Compare(), CCompareSeq_locs::x_CompareInts(), CSeq_loc::x_CompareSingleId(), CNaSeqlocHelper::x_ComputeSiteIndex(), CCorrectGenesDialog::x_CorrectPairInterval(), CLocation_constraint::x_DoesLocationMatchDistanceConstraint(), CImportFeatTable::x_DoImportCDS(), CSNPSearchJob::x_DoSearch(), CFeaturePropagator::x_ExtendToStopCodon(), CFlatGatherer::x_GatherFeaturesOnRangeIdx(), CFlatGatherer::x_GatherFeaturesOnWholeLocation(), CFlatGatherer::x_GatherFeaturesOnWholeLocationIdx(), CFastaOstreamEx::x_GetCodeBreak(), CObjectIndex::x_GetFeatureCode(), variation::CVariationUtil::x_GetLiteralAtLoc(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), CFeatureGenerator::SImplementation::x_MapFeature(), CFeaturePropagator::x_MapLocation(), CValidError_bioseq::x_MatchesOverlappingFeaturePartial(), CValidError_bioseq::x_PartialAdjacentToIntron(), variation::CHgvsParser::x_PlacementCoordsToStr(), variation::CVariationUtil::x_SetVariantPropertiesForIntronic(), variation_ref::CVariationUtil::x_SetVariantPropertiesForIntronic(), CSequenceUpdater::x_ShouldRemoveFeature(), CUnorderedSplitter::x_SplitDeltaExt(), IEditingActionFeat::x_TestGeneForFeature(), CVectorTrimPanel::x_TrimSeqGraphData(), CReportTrim::x_TrimSeqGraphData(), CAdjustForConsensusSpliceSite::x_UpdateExonFeatures(), CCreateGeneModelTask::x_UpdateGeneOnSequence(), CValidError_bioseq::x_ValidateAbuttingRNA(), CSingleFeatValidator::x_ValidateGeneXRef(), CValidError_graph::x_ValidateGraphLocation(), CCdregionValidator::x_ValidateParentPartialness(), CGff2Writer::xAssignFeatureEndpoints(), CGff3Writer::xAssignFeatureEndpoints(), CFeatTableEdit::xGetGeneLocation(), CFeatTableEdit::xPutErrorMissingLocustag(), CFeatTableEdit::xPutErrorMissingProteinId(), CFeatTableEdit::xPutErrorMissingTranscriptId(), and CGff2Record::xUpdateFeatureData().

◆ GetStrand() [1/2]

ENa_strand CSeq_loc::GetStrand ( void  ) const

Get the location's strand.

If no strand is set, returns eNa_strand_unknown. If different strands are set in different parts, returns eNa_strand_other. Explicitly set unknown strand is ignored when combined whith plus or minus strand. Examples: not-set = unknown not-set + plus = plus unknown + plus = plus unknown + both = other plus + minus = other

Definition at line 882 of file Seq_loc.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, eNa_strand_both, eNa_strand_unknown, CSeq_loc_Base::GetBond(), CSeq_loc_Base::GetInt(), CSeq_loc_Base::GetMix(), CSeq_loc_Base::GetPacked_int(), CSeq_loc_Base::GetPacked_pnt(), CSeq_loc_Base::GetPnt(), CPacked_seqint::GetStrand(), CPacked_seqpnt_Base::GetStrand(), CSeq_bond::GetStrand(), CSeq_interval_Base::GetStrand(), CSeq_loc_mix::GetStrand(), CSeq_point_Base::GetStrand(), CPacked_seqpnt_Base::IsSetStrand(), CSeq_interval_Base::IsSetStrand(), CSeq_point_Base::IsSetStrand(), NCBI_THROW_FMT, CSeq_loc_Base::SelectionName(), and CSeq_loc_Base::Which().

Referenced by AdjustCdregionFrame(), CAdjustForConsensusSpliceSite::AdjustCDS(), CAdjustForConsensusSpliceSite::AdjustCDSEnds(), CEditSeqEndsWithAlign::AdjustFeatureLocations(), CCDSTranslationPanel::AdjustForStopCodonHyperlinkClicked(), AdjustMappedStop(), CFeatTrim::Apply(), variation::ApplyOffsetFuzz(), CRemoveFeaturesDlg::ApplyToCSeq_entry(), CDiscrepancyVisitorImpl< _Name >::Autofix(), CBlastSeqVectorOM::CBlastSeqVectorOM(), CSeq_loc::ChangeToPackedInt(), CWriteUtil::CompareFeatures(), CSeq_feat::CompareNonLocation(), CConvertCDSToMiscFeat::Convert(), CVariationNormalizationDelIns::ConvertExpandedInsertionToDelIns(), CStdSegHit::CStdSegHit(), CEditSequenceEnds::Extend3(), CEditSequenceEnds::Extend5(), CExtendPartialFeatDlg::ExtendCDS(), ExtendCDSToStopCodon(), ExtendLocationForTranslExcept(), ExtendStop(), CCleanup::ExtendStopPosition(), ExtendToGapsOrEnds(), ExtendToStopCodon(), CCleanup::ExtendToStopCodon(), CProSplign::FindGlobalAlignment(), CInternalStopFinder::FindStartStopRanges(), FixMixLoc(), FormatAsAsn(), FTASeqLocCheck(), GenelocContained(), variation::CVariationUtil::CCdregionIndex::GetCachedLiteralAtLoc(), GetCdRegionCB(), CInternalStopFinder::GetCDSNucleotideSequence(), CConvertBadCdsAndRnaToMiscFeat::getCdsOverlap(), CExtendCDSToStop::GetCommand(), CAddFeatureBetweenDlg::GetFeatureLocations(), CAlignmentAssistant::GetFeatures(), GetLastCodonLoc(), GetOverlappingFeatures(), GetOverlappingGene(), CCleanup::GetProteinLocationFromNucleotideLocation(), GetProtRefDescr(), CConvertBadCdsAndRnaToMiscFeat::getRnaOverlap(), CCodingPropensity::GetScore(), CCreateFeat::GetStrand(), CValidError_feat::GetTSACDSOnMinusStrandErrors(), CStdSegHit::HasAlignment(), IfOnlyStopCodon(), InheritPartialness(), CNSeq::Init(), CExtendPartialFeatDlg::Is3AtEndOfSeq(), CLocationEditPolicy::Is3AtEndOfSeq(), CLocationEditPolicy::Is5AtEndOfSeq(), CExtendPartialFeatDlg::Is5AtStartOfSeq(), IsGeneLocationOk(), IsNonExtendable(), CSeq_loc::IsReverseStrand(), MakeCompartments(), MakeGeneForFeature(), CCdsToMatPeptide::MergeConvert(), CGtfLocationMerger::MergeLocationForGene(), CFeatureGenerator::SImplementation::MergeSeq_locs(), CAutoDefFeatureClause::OkToGroupUnderByLocation(), operator<<(), SSNP_Info::ParseSeq_feat(), PatchTargetSequence(), CGFFReader::Read(), RemapAlignToLoc(), RetranslateCdregion(), CAutoDefFeatureClause::ReverseCDSClauseLists(), CNewCleanup_imp::RnaFeatBC(), CDemoApp::Run(), variation::CVariationUtil::s_AddIntronicOffsets(), variation_ref::CVariationUtil::s_AddIntronicOffsets(), s_CheckLocationAndStrandResults(), s_CodonVariation(), CMacroFunction_ConvertLocStrand::s_ConvertLocationStrand(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetNeighborhoodLocs(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetStartAndStopCodonsLocs(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetUTRLocs(), s_IsLocationEndAtOtherLocationInternalEndpoint(), s_ParseTRnaFromAnticodonString(), variation::CVariationUtil::s_ResolveIntronicOffsets(), variation_ref::CVariationUtil::s_ResolveIntronicOffsets(), variation::CHgvsParser::s_SeqIdToHgvsStr(), s_ShouldBeMerged(), s_SortShorttRNAs(), CAutoDefFeatureClause::SameStrand(), SeqLocExtend(), CCleanup::SeqLocExtend(), SeqLocExtend3(), SeqLocExtend5(), CFeatureSearchJob::SeqLocToString(), CReportEntry::SetAlignment(), CReportEntry::SetCds(), SetTranslExcept(), CEditingActionFeatTranslExcept::SetValue(), CBlastTabular::sx_MineSegment(), TestOneCDS(), CMacroFunction_LocationDistConstraint::TheFunction(), TransferPartialness(), TrimSeqFeat(), TruncateSeqLoc(), TruncateTransSplicedCDSForExtension(), CCleanup::WGSCleanup(), CFeatureItem::x_AddQualsCdregionIdx(), variation::CHgvsParser::x_AdjustPlacementForHgvs(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), variation::CHgvsParser::x_AsHgvsExpression(), CValidError_bioseq::x_CheckSingleStrandedRNAViruses(), CQuerySplitter::x_ComputeQueryIndicesForChunks(), CCorrectGenesDialog::x_CorrectPairInterval(), CCorrectGenesDialog::x_CorrectPairStrand(), CGFFReader::x_CreateGeneFeatures(), CLocation_constraint::x_DoesLocationMatchDistanceConstraint(), CLocation_constraint::x_DoesStrandMatchConstraint(), CFeatGlyph::x_DrawRuler(), CFeaturePropagator::x_ExtendToStopCodon(), CBlastSeqVectorOM::x_FixStrand(), CFlatGatherer::x_GatherFeaturesOnRange(), CFlatGatherer::x_GatherFeaturesOnRangeIdx(), CClonePlacementGlyph::x_GetCloneEnds(), CFeatTrim::x_GetStartOffset(), CHitMatrixDataSource::x_GoodSeg(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), variation::CVariationUtil::CVariantPropertiesIndex::x_Index(), variation::CVariationUtil::x_InferNAfromAA(), CSeq_align_Mapper_Base::x_Init(), CCDSTranslationProblems::x_Is5AtEndSpliceSiteOrGap(), CSGSeqGraphJob::x_LoadSeqTable(), CFeatureGenerator::SImplementation::x_MapFeature(), CFeaturePropagator::x_MapLocation(), CMacroFunction_FeatStrandednessConstraint::x_Match(), CFeatureTableReader_Imp::x_ParseTrnaExtString(), CValidError_bioseq::x_PartialAdjacentToIntron(), variation_ref::CVariationUtil::x_ProtToPrecursor(), CBioseqContext::x_SetLocation(), CVariationNormalization_base< T >::x_Shift(), IEditingActionFeat::x_TestGeneForFeature(), CCorrectGenesDialog::x_TestGeneForFeature(), CFeatTrim::x_TrimLocation(), CFeaturePropagator::x_TruncateToStopCodon(), CCreateGeneModelTask::x_UpdateGeneOnSequence(), CAdjustForConsensusSpliceSite::x_UpdateLocation(), CValidError_bioseq::x_ValidateAbuttingRNA(), CRNAValidator::x_ValidateAnticodon(), CValidError_bioseq::x_ValidateCDSagainstVDJC(), CValidError_graph::x_ValidateGraphLocation(), CCdregionValidator::x_ValidateParentPartialness(), CSplitQueryTestFixture::x_ValidateQuerySeqLocsPerChunk(), CSingleFeatValidator::x_ValidateSeqFeatLoc(), CGff2Writer::xAssignFeatureEndpoints(), CGff3Writer::xAssignFeatureEndpoints(), CGff3Writer::xAssignFeatureStrand(), CFeatTableEdit::xGetGeneLocation(), and CGff3Writer::xWriteNucleotideFeatureTransSpliced().

◆ GetStrand() [2/2]

ENa_strand CSeq_loc_CI::GetStrand ( void  ) const
inline

Definition at line 1056 of file Seq_loc.hpp.

References SSeq_loc_CI_RangeInfo::m_Strand, CSeq_loc_CI::x_CheckValid(), and CSeq_loc_CI::x_GetRangeInfo().

Referenced by AdjustFeatureEnd3(), AdjustFeatureEnd5(), CAdjustForConsensusSpliceSite::AdjustmRNAToMatchCDSEnds(), BOOST_AUTO_TEST_CASE(), ConvertSeqLocsToPairwiseAln(), CLocationEditPolicy::Extend3(), CLocationEditPolicy::Extend5(), CFeatureGenePanel::GetLocationForGene(), CSeqUtils::GetMappingInfoFromLocation(), GetStrandForLastInterval(), HasMixedStrands(), CLocationEditPolicy::Is3AtEndOfSeq(), CLocationEditPolicy::Is5AtEndOfSeq(), IsMixedStrand(), IsMixedStrandGeneLocationOk(), CSeqUtils::IsSameStrands(), OneIdOneStrand(), CDense_seg::RemapToLoc(), s_CheckAbutting(), s_CreateMappingInfo(), s_IsLocationEndAtOtherLocationInternalEndpoint(), s_PartialAtGapOrNs(), s_PrintLocAsJavascriptArray(), s_SeqLocEndsOnBioseq(), s_SeqLocToRangeInfoMapByStrand(), s_SeqLocToTotalRangeInfoMap(), s_SeqLocToTotalRangesInfoMapByStrand(), s_Test_CheckIntervals(), s_TestForOverlapEx(), SeqLocToBioseq(), CAlignmentAssistant::TranslateLocations(), CGuiObjectInfoSeq_feat::x_AddExtraInfo(), CFeatGlyph::x_AdjustFrame(), CSGAlignmentJob::x_CreateFeatGlyph(), CClonePlacementGlyph::x_GetCloneEnds(), CAnnotObject_Less::x_GetExtremes(), CSeq_loc_Mapper_Base::x_GetRangeLength(), CCleanup::x_HasShortIntron(), CSeq_loc_Mapper::x_InitGCSequence(), CSeq_loc_Mapper_Base::x_InitializeLocs(), CValidError_bioseq::x_IsPartialAtSpliceSiteOrGap(), CFeaturePropagator::x_MapLocation(), and CAnnotObject_Info::x_ProcessAlign().

◆ GetTotalRange()

CSeq_loc::TRange CSeq_loc::GetTotalRange ( void  ) const
inline

Definition at line 913 of file Seq_loc.hpp.

References CSeq_loc::kDirtyCache, CSeq_loc::m_TotalRangeCacheFrom, CSeq_loc::m_TotalRangeCacheToOpen, and CSeq_loc::x_UpdateTotalRange().

Referenced by CGBProjectHelper::AddProjectItemsFromRID(), CFeatTrim::Apply(), CConvertSelectedGaps::apply_impl(), CEditSelectedGaps::apply_impl(), CDiscrepancyVisitorImpl< _Name >::Autofix(), CdsTrnaOverlapStr(), CFeatHistogramDS::CFeatHistogramDS(), check_no_overlaps(), CDiscrepancyContext::Compare(), CAnnotCompare::CompareFeats(), Convert_Seq_annot_Seq_loc_TotalRange(), Convert_Seq_feat_Seq_loc_Gen_Loc_TotalRange(), CProteinAlignText::CProteinAlignText(), Does3primerAbutGap(), Does5primerAbutGap(), NSnpAnnot::EstimateSNPCount(), CProSplign::FindGlobalAlignment(), NSearchFeatPanel::GatherFeatures(), CScore_StartStopCodon::Get(), CGnomonEngine::GetAnnot(), variation::CVariationUtil::CCdregionIndex::GetCachedLiteralAtLoc(), CFeatureGenerator::SImplementation::GetCds(), CSeqUtils::GetCdsMappingInfoFromRna(), CConvertBadCdsAndRnaToMiscFeat::getCdsOverlap(), CSeq_loc::GetCircularLength(), NSnpAnnot::GetGraph_CI(), CTableDataFTable::GetIntValue(), CSeq_featHandler::GetLabel(), NSnp::GetLength(), CSeq_feat_Handle::GetProductTotalRange(), GetProteinWeight(), GetProteinWeights(), CSeq_feat_Handle::GetRange(), CProjectView::GetReflectionInfo(), CConvertBadCdsAndRnaToMiscFeat::getRnaOverlap(), CCodingPropensity::GetScore(), GetTrnaAnticodon(), CViewGraphic::InitView(), CVcfTableView::InitView(), CmRNACDSLinker::LinkByLabelAndLocation(), CAlignedFeatureGraph::NeedTooltip(), CDiscrepancyPanel::OnListClk(), CValidatePanel::OnListItemSelected(), SFeatLengthPredicate::operator()(), SOutsideRange::operator()(), LessThan::operator()(), variation::SFastLocSubtract::operator()(), operator<<(), PatchTargetSequence(), CGFFReader::Read(), CFeatureGenerator::SImplementation::RecomputePartialFlags(), CExtendCDSToStop::ResetGenes(), RestoreModelReadingFrame(), RetrievePartsOfLargeChromosome(), CAlignTabExportJob::Run(), CAgpExportJob::Run(), CDemoApp::Run(), CTestBMApp::Run(), s_CreateObjList(), s_GetAlignmentSpans_Interval(), s_GetFeatureKey(), s_GetRnaMappingLocs(), NSearchFeatPanel::s_GetSeq_TotalRangeLabel(), s_GetSeq_TotalRangeLabel(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetUTRLocs(), s_LocationsTouch(), s_LocToRange(), s_Render_SeqFeat(), variation::CVariationUtil::s_ResolveIntronicOffsets(), CSeqGraphicPane::SelectSeqLoc(), CFeatureSearchJob::SeqLocToString(), CUnorderedSplitter::SplitLoc(), CValidError_graph::ValidateGraphsOnBioseq(), CValidError_bioseq::ValidateSeqFeatContext(), CLinkUtils::x_AddDbxrefFeatureLinks(), CSGAnnotJob::x_AddGraphToMap(), CGuiObjectInfoSeq_feat::x_AddGroupLocationRows(), CFeatureItem::x_AddQualsProt(), CSequenceSearchJob::x_AddToResults(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), CAdvancedAlignCleanup::x_CleanupProsplignCompartment(), CFeatureGenerator::SImplementation::x_CollectMrnaSequence(), CFlatGatherer::x_CollectSourceFeatures(), CFeatureGenerator::SImplementation::x_CreateCdsFeature(), CSGFeatureJob::x_CreateCloneFeature(), CSGFeatureJob::x_CreateFeatHist(), CSGFeatureJob::x_CreateFeatSmear(), CGFFReader::x_CreateGeneFeatures(), CCreateNeedlemanWunschJob::x_CreateProjectItems(), CComponentSearchJob::x_DoSearch(), CCpgSearchJob::x_DoSearch(), COrfSearchJob::x_DoSearch(), CCdsGlyph::x_DrawProtSeqWithMapping(), CSnpJob::x_FetchGraphs(), CFlatGatherer::x_GatherFeaturesOnRange(), CFlatGatherer::x_GatherFeaturesOnRangeIdx(), CClonePlacementGlyph::x_GetCloneEnds(), CObjectIndex::x_GetFeatureCode(), CDisplaySeqalign::x_GetFeatureInfo(), CFeatTrim::x_GetStartOffset(), CAlignedFeatureGraph::x_GetTooltip(), CCreateGeneModelTask::x_Group_By_GeneID(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), CFeatureGenerator::SImplementation::x_HandleRnaExceptions(), CSeq_align_Mapper_Base::x_Init(), CSeq_annot_Info::x_InitFeatTableKeys(), CAlignedFeatureGraph::x_Layout(), CAlignmentTrack::x_LoadAlignedSeqFeats(), CSGAlignmentJob::x_LoadAlignmentFeats(), CBatchFeatJob::x_LoadFeatProducts(), CSGSeqGraphJob::x_LoadSeqTable(), CFeatureGenerator::SImplementation::x_MapFeature(), CSeqTextView::x_MergeObjects(), CFeatTableView::x_MergeObjects(), CViewGraphic::x_MergeObjects(), variation_ref::CHgvsParser::x_nuc_inv(), CAlignedFeatureGraph::x_RenderFeature(), CFeatureGenerator::SImplementation::x_SetComment(), CBioseqContext::x_SetLocation(), CReportEntry::x_SetRnaCds(), CFeatTrim::x_TrimTrnaExt(), CValidError_graph::x_ValidateGraphOnDeltaBioseq(), CSplitQueryTestFixture::x_ValidateQuerySeqLocsPerChunk(), CSingleFeatValidator::x_ValidateRptUnitRangeVal(), CPolyASiteValidator::x_ValidateSeqFeatLoc(), CPolyASignalValidator::x_ValidateSeqFeatLoc(), CValidError_align::x_ValidateSeqLength(), CGff2Writer::xAssignFeatureAttributePartial(), CGff3Writer::xWriteNucleotideFeature(), and CGff3Writer::xWriteProteinFeature().

◆ HasChanges()

bool CSeq_loc_I::HasChanges ( void  ) const

◆ HasEquivSets()

bool CSeq_loc_CI::HasEquivSets ( void  ) const

Return true if location has equiv parts.

Definition at line 2527 of file Seq_loc.cpp.

References CSeq_loc_CI_Impl::HasEquivSets(), and CSeq_loc_CI::m_Impl.

Referenced by BOOST_AUTO_TEST_CASE().

◆ ILengthGetter()

ILengthGetter::ILengthGetter ( void  )
inline

Definition at line 422 of file Seq_loc.hpp.

◆ InsertEmpty() [1/2]

CSeq_loc_I CSeq_loc_I::InsertEmpty ( const CSeq_id id)
inline

Insert new element before the current one (.

See also
InsertNull()).

Definition at line 648 of file Seq_loc.hpp.

References CSeq_id_Handle::GetHandle(), and CSeq_loc_I::InsertEmpty().

◆ InsertEmpty() [2/2]

CSeq_loc_I CSeq_loc_I::InsertEmpty ( const CSeq_id_Handle id)

◆ InsertInterval() [1/4]

CSeq_loc_I CSeq_loc_I::InsertInterval ( const CSeq_id id,
const TRange range,
ENa_strand  strand = eNa_strand_unknown 
)
inline

Insert new element before the current one (.

See also
InsertNull()). The strand value eNa_strand_unknown produces strand field not set, If eNa_strand_unknown is expicitly required, call SetStrand().

Definition at line 669 of file Seq_loc.hpp.

References CSeq_id_Handle::GetHandle(), CSeq_loc_I::InsertInterval(), and compile_time_bits::range().

◆ InsertInterval() [2/4]

CSeq_loc_I CSeq_loc_I::InsertInterval ( const CSeq_id id,
TSeqPos  from,
TSeqPos  to,
ENa_strand  strand = eNa_strand_unknown 
)
inline

Insert new element before the current one (.

See also
InsertNull()). The strand value eNa_strand_unknown produces strand field not set, If eNa_strand_unknown is expicitly required, call SetStrand().

Definition at line 678 of file Seq_loc.hpp.

References CSeq_loc_I::InsertInterval().

◆ InsertInterval() [3/4]

CSeq_loc_I CSeq_loc_I::InsertInterval ( const CSeq_id_Handle id,
const TRange range,
ENa_strand  strand = eNa_strand_unknown 
)

◆ InsertInterval() [4/4]

CSeq_loc_I CSeq_loc_I::InsertInterval ( const CSeq_id_Handle id,
TSeqPos  from,
TSeqPos  to,
ENa_strand  strand = eNa_strand_unknown 
)
inline

Insert new element before the current one (.

See also
InsertNull()). The strand value eNa_strand_unknown produces strand field not set, If eNa_strand_unknown is expicitly required, call SetStrand().

Definition at line 687 of file Seq_loc.hpp.

References CSeq_loc_I::InsertInterval().

◆ InsertNull()

CSeq_loc_I CSeq_loc_I::InsertNull ( void  )

Set of Insert*() methods.

All of them insert new element before the one the iterator points to. If the iterator is at the end of CSeq_loc then the new element is inserted after the last element of the CSeq_loc. After the insertion this iterator will point to the element it was pointing before (or end), and the result iterator will point to the inserted element. All other iterators of the same CSeq_loc object will become invalid. If the insertion point is completely within an equiv set (excluding the equiv set boundary) the equiv set will be expanded appropriately. If the insertion point is completely within an equiv part (excluding the equiv part boundary) the new element is added to that equiv part. If the insertion point is between two equiv parts of the same set then the new element is appended to the part just before the insertion point. The effect of the insertion on equiv sets can be modified by calling SetEquivMode(EEquivMode).

See also
SetEquivMode()

Definition at line 2731 of file Seq_loc.cpp.

References CSeq_loc_I::CSeq_loc_I(), CSeq_loc_Base::e_Null, CSeq_loc_CI_Impl::InsertRange(), CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_I::x_CheckValidForInsert().

Referenced by FindNewLocations().

◆ InsertPoint() [1/2]

CSeq_loc_I CSeq_loc_I::InsertPoint ( const CSeq_id id,
TSeqPos  pos,
ENa_strand  strand = eNa_strand_unknown 
)
inline

Insert new element before the current one (.

See also
InsertNull()). The strand value eNa_strand_unknown produces strand field not set, If eNa_strand_unknown is expicitly required, call SetStrand().

Definition at line 703 of file Seq_loc.hpp.

References CSeq_id_Handle::GetHandle(), and CSeq_loc_I::InsertPoint().

◆ InsertPoint() [2/2]

CSeq_loc_I CSeq_loc_I::InsertPoint ( const CSeq_id_Handle id,
TSeqPos  pos,
ENa_strand  strand = eNa_strand_unknown 
)

◆ InsertWhole() [1/2]

CSeq_loc_I CSeq_loc_I::InsertWhole ( const CSeq_id id)
inline

Insert new element before the current one (.

See also
InsertNull()).

Definition at line 655 of file Seq_loc.hpp.

References CSeq_id_Handle::GetHandle(), and CSeq_loc_I::InsertWhole().

◆ InsertWhole() [2/2]

CSeq_loc_I CSeq_loc_I::InsertWhole ( const CSeq_id_Handle id)

◆ Intersect()

CRef< CSeq_loc > CSeq_loc::Intersect ( const CSeq_loc other,
TOpFlags  flags,
ISynonymMapper syn_mapper 
) const

◆ InvalidateCache()

void CSeq_loc::InvalidateCache ( void  ) const
inline

◆ InvalidateIdCache()

void CSeq_loc::InvalidateIdCache ( void  ) const
inline

Definition at line 890 of file Seq_loc.hpp.

References CSeq_loc::m_IdCache, and NULL.

Referenced by CSeq_loc::InvalidateCache(), CSeq_loc::SetId(), and CSeq_loc::SetNull().

◆ InvalidateTotalRangeCache()

void CSeq_loc::InvalidateTotalRangeCache ( void  ) const
inline

◆ IsBondA()

bool CSeq_loc_CI::IsBondA ( void  ) const

Return true if current position is A part of a bond.

Definition at line 2503 of file Seq_loc.cpp.

References CSeq_loc_CI_Impl::IsBondPartA(), CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

Referenced by BOOST_AUTO_TEST_CASE().

◆ IsBondB()

bool CSeq_loc_CI::IsBondB ( void  ) const

Return true if current position is B part of a bond.

Definition at line 2510 of file Seq_loc.cpp.

References CSeq_loc_CI_Impl::IsBondPartB(), CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

Referenced by BOOST_AUTO_TEST_CASE().

◆ IsEmpty()

bool CSeq_loc_CI::IsEmpty ( void  ) const
inline

◆ IsInBond()

bool CSeq_loc_CI::IsInBond ( void  ) const

Location of type equiv define set of equivalent locations.

Each equiv set consist of several equivalent parts. Each equiv part can contain equiv location too, so equiv sets are recursive. Return true if current position is part of a bond

Definition at line 2496 of file Seq_loc.cpp.

References CSeq_loc_CI_Impl::IsInBond(), CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

Referenced by BOOST_AUTO_TEST_CASE().

◆ IsInEquivSet()

bool CSeq_loc_CI::IsInEquivSet ( void  ) const

Return true if current position is in some equiv part.

Definition at line 2533 of file Seq_loc.cpp.

References CSeq_loc_CI_Impl::IsInEquivSet(), CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

Referenced by BOOST_AUTO_TEST_CASE().

◆ IsPartialStart()

bool CSeq_loc::IsPartialStart ( ESeqLocExtremes  ext) const

check start or stop of location for e_Lim fuzz

Definition at line 3222 of file Seq_loc.cpp.

References CSeq_loc_Base::e_Int, CSeq_loc_Base::e_Mix, 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::GetInt(), CSeq_loc_Base::GetMix(), CSeq_loc_Base::GetPacked_int(), CSeq_loc_Base::GetPacked_pnt(), CSeq_loc_Base::GetPnt(), CPacked_seqint::IsPartialStart(), CPacked_seqpnt::IsPartialStart(), CSeq_interval::IsPartialStart(), CSeq_loc_mix::IsPartialStart(), CSeq_point::IsPartialStart(), and CSeq_loc_Base::Which().

Referenced by CExonFromCds::AddIntron(), CBulkCDSAddPanel::AddOneCommand(), CPartialStartColumn::AddToFeature(), CPartialStopColumn::AddToFeature(), CAutoDefFeatureClause::AddToLocation(), AdjustCdregionFrame(), CAdjustForConsensusSpliceSite::AdjustCDS(), CAdjustForConsensusSpliceSite::AdjustCDSEnds(), AdjustFeatureEnd5(), AdjustFeaturePartialFlagForLocation(), CFeatGapInfo::AdjustForRelevantGapIntervals(), AdjustGene(), AdjustProteinFeaturePartialsToMatchCDS(), AdjustProteinMolInfoToMatchCDS(), CFeatTrim::Apply(), CRecomputeIntervals::apply(), CAdjustFeatsForIntrons::apply(), CGroupExplode::apply(), CExplodeRNAFeats::apply(), BOOST_AUTO_TEST_CASE(), CAutoDefParsedClause::CAutoDefParsedClause(), CAutoDefParsedIntergenicSpacerClause::CAutoDefParsedIntergenicSpacerClause(), CNewCleanup_imp::CdRegionEC(), CPartialStartColumn::ClearInFeature(), CPartialStopColumn::ClearInFeature(), CFixForTransSplicing::CombineFeatures(), CFeaturePropagator::ConstructProteinFeatureForPropagatedCodingRegion(), CSeq_loc_Conversion::ConvertMix(), CSeq_loc_Conversion_Set::ConvertMix(), CSeq_loc_Conversion_Set::ConvertPacked_int(), CopyFeaturePartials(), CreateSeqLocMapperFromFeat(), CExtendPartialFeatDlg::ExtendCDS(), ExtendToGapsOrEnds(), ExtendToStopCodon(), CEditingActionFeatGeneLocusPlain::Find(), CEditingActionFeatGeneLocusRna::Find(), CEditingActionFeatGeneLocusCdsGeneProt::Find(), CSeqTranslator::FindBestFrame(), FindNewLocations(), IEditingActionFeat::FindOrCreateProtFeat(), CEditingActionFeatGeneLocus::FindRelated(), IEditingActionFeat::FindRelatedOrCreateProtFeat(), CCleanup::FixRNAEditingCodingRegion(), CGBSeqFormatter::FormatFeature(), CCdsFromGeneMrnaExon::GetCommand(), CExonFromCds::GetCommand(), CExtendCDSToStop::GetCommand(), CFuseFeaturesDlg::GetCommand(), CGeneFeatFromOtherFeatDlg::GetCommand(), CmRNAFromGeneCdsExon::GetCommand(), CResolveIntersectingFeats::GetCommand(), CtRNAFromGene::GetCommand(), CTruncateCDS::GetCommand(), CGeneFeatFromXrefs::GetCommand(), GetEditLocationCommand(), CPartialStartColumn::GetFromFeat(), GetLastPartialCodonLength(), CFeatureGenePanel::GetLocationForGene(), CFeatureGenePanel::GetNewGene(), CCleanup::GetProteinLocationFromNucleotideLocation(), GetProtRefAnnot(), GetProtRefDescr(), GetTerminalPartialness(), HasBadStartCodon(), InheritPartialness(), CLocationEditPolicy::Interpret5Policy(), IsExtendable(), IsGeneLocationOk(), IsLocationInFrame(), CConvertBadCdsAndRnaToMiscFeat::IsNonExtendable(), IsNonExtendable(), CAutoDefFeatureClause::IsPartial(), CSeqUtils::IsPartialStart(), CSeq_loc_mix::IsPartialStart(), IsPartialStartConflict(), MakeGeneForFeature(), MakemRNAforCDS(), CCdsToMatPeptide::MergeConvert(), PartialsSame(), CFeaturePropagator::Propagate(), RemapOtherProtFeats(), CNewCleanup_imp::ResynchPeptidePartials(), CNewCleanup_imp::ResynchProteinPartials(), RetranslateCdregion(), s_CheckLocationResults(), s_CheckQuals_cdregion(), s_FixPartial(), s_GetCdsByLocation(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetStartAndStopCodonsLocs(), s_ShouldSetGenePartialStart(), SeqLocExtend(), CCleanup::SeqLocExtend(), SeqLocExtend5(), CCleanup::SetCDSPartialsByFrameAndTranslation(), CCleanup::SetFrameFromLoc(), CFeatureGenerator::SImplementation::SetPartialFlags(), CSeq_loc::SetPartialStart(), SetProteinFeature(), CMacroFunction_ApplyCDS::TheFunction(), CMacroFunction_LocPartialTest::TheFunction(), TransferPartialness(), CSeqTranslator::Translate(), TranslateCDSCommand(), CSeqTranslator::TranslateToProtein(), TruncateCDSAtStop(), CTruncateCDS::TruncateProteinFeat(), TruncateSeqLoc(), UpdateFeat(), CIntronValidator::Validate(), CValidError_bioseq::ValidateRawConst(), CSpliceProblems::ValidateSpliceExon(), CSpliceProblems::ValidateSpliceMrna(), CFeatureTableReader_Imp::x_AddIntervalToFeature(), CFeatureItem::x_AddQualsProt(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), CFeaturePropagator::x_CdsCleanupPartials(), CConvertFeatureBase::x_ConvertToCDS(), CCorrectGenesDialog::x_CorrectPairInterval(), CFeatureGenerator::SImplementation::x_CreateCdsFeature(), CFeatureGenerator::SImplementation::x_CreateMrnaBioseq(), CFeatureGenerator::SImplementation::x_CreateProteinBioseq(), CLocation_constraint::x_DoesLocationMatchPartialnessConstraint(), CImportFeatTable::x_DoImportCDS(), CNewCleanup_imp::x_ExtendFeatureToCoverSequence(), CFtableFormatter::x_FormatLocation(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), CEditObjectSeq_feat::x_HandleCdsProduct(), CIntronValidator::x_IsIntronShort(), CPromote::x_MakeMolinfoDesc(), CFeatureGenerator::SImplementation::x_MapFeature(), CFeaturePropagator::x_MapLocation(), CSequenceUpdater::x_MappedFeature_ChangeId(), CSequenceUpdater::x_MappedFeature_ThroughAlign(), CValidError_bioseq::x_MatchesOverlappingFeaturePartial(), CValidError_bioseq::x_PartialAdjacentToIntron(), CPromote::x_PromoteCdregion(), CReportTrim::x_RetranslateCDS(), CSequenceUpdater::x_RetranslateImportedCDSProduct(), CSequenceUpdater::x_RetranslateOldCDSProduct(), CFeatureGenerator::SImplementation::x_SetComment(), CSeq_loc_Mapper_Base::x_StripExtraneousFuzz(), CCreateGeneModelTask::x_UpdateGeneOnSequence(), CAdjustForConsensusSpliceSite::x_UpdateLocation(), CValidError_bioseq::x_ValidateAbuttingRNA(), CCdregionValidator::x_ValidateCDSPartial(), CCdregionValidator::x_ValidateParentPartialness(), and CGff3Writer::xAssignFeatureEndpoints().

◆ IsPartialStop()

bool CSeq_loc::IsPartialStop ( ESeqLocExtremes  ext) const

Definition at line 3251 of file Seq_loc.cpp.

References CSeq_loc_Base::e_Int, CSeq_loc_Base::e_Mix, 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::GetInt(), CSeq_loc_Base::GetMix(), CSeq_loc_Base::GetPacked_int(), CSeq_loc_Base::GetPacked_pnt(), CSeq_loc_Base::GetPnt(), CPacked_seqint::IsPartialStop(), CPacked_seqpnt::IsPartialStop(), CSeq_interval::IsPartialStop(), CSeq_loc_mix::IsPartialStop(), CSeq_point::IsPartialStop(), and CSeq_loc_Base::Which().

Referenced by CExonFromCds::AddIntron(), CBulkCDSAddPanel::AddOneCommand(), CPartialStartColumn::AddToFeature(), CPartialStopColumn::AddToFeature(), CAutoDefFeatureClause::AddToLocation(), CAdjustForConsensusSpliceSite::AdjustCDS(), CAdjustForConsensusSpliceSite::AdjustCDSEnds(), AdjustFeatureEnd3(), AdjustFeaturePartialFlagForLocation(), CFeatGapInfo::AdjustForRelevantGapIntervals(), AdjustGene(), AdjustMappedStop(), AdjustProteinFeaturePartialsToMatchCDS(), AdjustProteinMolInfoToMatchCDS(), CFeatTrim::Apply(), CRecomputeIntervals::apply(), CAdjustFeatsForIntrons::apply(), CGroupExplode::apply(), CExplodeRNAFeats::apply(), BOOST_AUTO_TEST_CASE(), CAutoDefParsedClause::CAutoDefParsedClause(), CAutoDefParsedIntergenicSpacerClause::CAutoDefParsedIntergenicSpacerClause(), CNewCleanup_imp::CdRegionEC(), CPartialStartColumn::ClearInFeature(), CPartialStopColumn::ClearInFeature(), CFixForTransSplicing::CombineFeatures(), CFeaturePropagator::ConstructProteinFeatureForPropagatedCodingRegion(), CSeq_loc_Conversion::ConvertMix(), CSeq_loc_Conversion_Set::ConvertMix(), CSeq_loc_Conversion::ConvertPacked_int(), CSeq_loc_Conversion_Set::ConvertPacked_int(), CopyFeaturePartials(), CExtendPartialFeatDlg::ExtendCDS(), ExtendToGapsOrEnds(), CEditingActionFeatGeneLocusPlain::Find(), CEditingActionFeatGeneLocusRna::Find(), CEditingActionFeatGeneLocusCdsGeneProt::Find(), CSeqTranslator::FindBestFrame(), FindNewLocations(), IEditingActionFeat::FindOrCreateProtFeat(), CEditingActionFeatGeneLocus::FindRelated(), IEditingActionFeat::FindRelatedOrCreateProtFeat(), CGBSeqFormatter::FormatFeature(), CScore_StartStopCodon::Get(), CScore_CdsInternalStops::Get(), CInternalStopFinder::GetCDSNucleotideSequence(), CCdsFromGeneMrnaExon::GetCommand(), CExonFromCds::GetCommand(), CExtendCDSToStop::GetCommand(), CFuseFeaturesDlg::GetCommand(), CGeneFeatFromOtherFeatDlg::GetCommand(), CmRNAFromGeneCdsExon::GetCommand(), CResolveIntersectingFeats::GetCommand(), CtRNAFromGene::GetCommand(), CTruncateCDS::GetCommand(), CGeneFeatFromXrefs::GetCommand(), GetEditLocationCommand(), CPartialStopColumn::GetFromFeat(), CFeatureGenePanel::GetLocationForGene(), CFeatureGenePanel::GetNewGene(), CCleanup::GetProteinLocationFromNucleotideLocation(), GetProtRefAnnot(), GetProtRefDescr(), GetTerminalPartialness(), InheritPartialness(), CLocationEditPolicy::Interpret3Policy(), IsExtendable(), IsGeneLocationOk(), IsLocationInFrame(), CConvertBadCdsAndRnaToMiscFeat::IsNonExtendable(), IsNonExtendable(), CAutoDefFeatureClause::IsPartial(), CSeqUtils::IsPartialStop(), CSeq_loc_mix::IsPartialStop(), IsPartialStopConflict(), MakeGeneForFeature(), MakemRNAforCDS(), CCdsToMatPeptide::MergeConvert(), PartialsSame(), CTabularFormatter_StopCodonChanges::Print(), CFeaturePropagator::Propagate(), RemapOtherProtFeats(), CNewCleanup_imp::ResynchPeptidePartials(), CNewCleanup_imp::ResynchProteinPartials(), RetranslateCdregion(), s_CheckLocationResults(), s_CheckQuals_cdregion(), s_FixPartial(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetStartAndStopCodonsLocs(), s_ShouldSetGenePartialStop(), SeqLocExtend(), CCleanup::SeqLocExtend(), SeqLocExtend3(), CCleanup::SetCDSPartialsByFrameAndTranslation(), CCleanup::SetFrameFromLoc(), CFeatureGenerator::SImplementation::SetPartialFlags(), CSeq_loc::SetPartialStop(), SetProteinFeature(), SetTranslExcept(), CMacroFunction_ApplyCDS::TheFunction(), CMacroFunction_LocPartialTest::TheFunction(), TransferPartialness(), CSeqTranslator::Translate(), TranslateCDSCommand(), TrimStopsFromCompleteCDS(), TruncateSeqLoc(), UpdateFeat(), CSpliceProblems::ValidateSpliceExon(), CSpliceProblems::ValidateSpliceMrna(), CFeatureTableReader_Imp::x_AddIntervalToFeature(), CFeatureItem::x_AddQualsProt(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), CFeaturePropagator::x_CdsCleanupPartials(), CConvertFeatureBase::x_ConvertToCDS(), CCorrectGenesDialog::x_CorrectPairInterval(), CFeatureGenerator::SImplementation::x_CreateMrnaBioseq(), CFeatureGenerator::SImplementation::x_CreateProteinBioseq(), CLocation_constraint::x_DoesLocationMatchPartialnessConstraint(), CImportFeatTable::x_DoImportCDS(), CFtableFormatter::x_FormatLocation(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), CEditObjectSeq_feat::x_HandleCdsProduct(), CPromote::x_MakeMolinfoDesc(), CFeatureGenerator::SImplementation::x_MapFeature(), CFeaturePropagator::x_MapLocation(), CSequenceUpdater::x_MappedFeature_ChangeId(), CSequenceUpdater::x_MappedFeature_ThroughAlign(), CValidError_bioseq::x_MatchesOverlappingFeaturePartial(), CValidError_bioseq::x_PartialAdjacentToIntron(), CPromote::x_PromoteCdregion(), CReportTrim::x_RetranslateCDS(), CSequenceUpdater::x_RetranslateImportedCDSProduct(), CSequenceUpdater::x_RetranslateOldCDSProduct(), CSeq_loc_Mapper_Base::x_SetLastTruncated(), CSeq_loc_Mapper_Base::x_StripExtraneousFuzz(), CCreateGeneModelTask::x_UpdateGeneOnSequence(), CAdjustForConsensusSpliceSite::x_UpdateLocation(), CValidError_bioseq::x_ValidateAbuttingRNA(), CCdregionValidator::x_ValidateParentPartialness(), and CGff3Writer::xAssignFeatureEndpoints().

◆ IsPoint()

bool CSeq_loc_CI::IsPoint ( void  ) const
inline

True if the current location is a single point.

Definition at line 1091 of file Seq_loc.hpp.

References COpenRange< Position >::GetLength(), SSeq_loc_CI_RangeInfo::m_Range, CSeq_loc_CI::x_CheckValid(), and CSeq_loc_CI::x_GetRangeInfo().

Referenced by BOOST_AUTO_TEST_CASE().

◆ IsReverseStrand()

bool CSeq_loc::IsReverseStrand ( void  ) const
inline

◆ IsSetStrand() [1/2]

bool CSeq_loc::IsSetStrand ( EIsSetStrand  flag = eIsSetStrand_Any) const

Check if strand is set for any/all part(s) of the seq-loc depending on the flag.

Definition at line 858 of file Seq_loc.cpp.

References CSeq_loc_Base::e_Bond, CSeq_loc_Base::e_Equiv, CSeq_loc_Base::e_Feat, CSeq_loc_Base::e_Int, CSeq_loc_Base::e_Mix, CSeq_loc_Base::e_Packed_int, CSeq_loc_Base::e_Packed_pnt, CSeq_loc_Base::e_Pnt, CSeq_loc_Base::GetBond(), CSeq_loc_Base::GetInt(), CSeq_loc_Base::GetMix(), CSeq_loc_Base::GetPacked_int(), CSeq_loc_Base::GetPacked_pnt(), CSeq_loc_Base::GetPnt(), CPacked_seqint::IsSetStrand(), CSeq_bond::IsSetStrand(), CSeq_loc_mix::IsSetStrand(), CPacked_seqpnt_Base::IsSetStrand(), CSeq_interval_Base::IsSetStrand(), CSeq_point_Base::IsSetStrand(), and CSeq_loc_Base::Which().

Referenced by CDiscrepancyVisitorImpl< _Name >::Autofix(), CSeq_loc::ChangeToPackedInt(), CFeatGapInfo::CollectGaps(), CWriteUtil::CompareFeatures(), CExtendPartialFeatDlg::ExtendCDS(), ExtendCDSToStopCodon(), CCleanup::ExtendStopPosition(), ExtendToStopCodon(), CCleanup::ExtendToStopCodon(), FixMixLoc(), GetCdRegionCB(), CExtendCDSToStop::GetCommand(), GetOverlappingFeatures(), IfOnlyStopCodon(), CGtfLocationMerger::MergeLocationForGene(), CMacroFunction_ConvertLocStrand::s_ConvertLocationStrand(), s_IsLocationEndAtOtherLocationInternalEndpoint(), s_ParseTRnaFromAnticodonString(), SeqLocExtend3(), SeqLocExtend5(), CEditingActionFeatTranslExcept::SetValue(), TruncateSeqLoc(), TruncateTransSplicedCDSForExtension(), CCleanup::WGSCleanup(), CFeatureItem::x_AddQualsCdregionIdx(), CLocation_constraint::x_DoesLocationMatchDistanceConstraint(), CFeaturePropagator::x_ExtendToStopCodon(), CFlatGatherer::x_GatherFeaturesOnRange(), CFlatGatherer::x_GatherFeaturesOnRangeIdx(), CClonePlacementGlyph::x_GetCloneEnds(), CFeaturePropagator::x_MapLocation(), CVariationNormalization_base< T >::x_Shift(), CFeaturePropagator::x_TruncateToStopCodon(), CValidError_bioseq::x_ValidateAbuttingRNA(), CValidError_bioseq::x_ValidateCDSagainstVDJC(), CCdregionValidator::x_ValidateParentPartialness(), CSingleFeatValidator::x_ValidateSeqFeatLoc(), and CGtfWriter::xAssignFeaturesTranscript().

◆ IsSetStrand() [2/2]

bool CSeq_loc_CI::IsSetStrand ( void  ) const
inline

◆ IsTruncatedStart()

bool CSeq_loc::IsTruncatedStart ( ESeqLocExtremes  ext) const

◆ IsTruncatedStop()

bool CSeq_loc::IsTruncatedStop ( ESeqLocExtremes  ext) const

◆ IsWhole()

bool CSeq_loc_CI::IsWhole ( void  ) const
inline

◆ ISynonymMapper()

ISynonymMapper::ISynonymMapper ( void  )
inline

Definition at line 410 of file Seq_loc.hpp.

◆ MakeBondA()

void CSeq_loc_I::MakeBondA ( void  )

Make bond at current position (only A) The current part must be a point If current posision is already a bond A part, it will be updated.

Definition at line 2979 of file Seq_loc.cpp.

References CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, CSeq_loc_CI_Impl::MakeBondA(), and CSeq_loc_CI::x_CheckValid().

◆ MakeBondAB()

void CSeq_loc_I::MakeBondAB ( void  )

Make bond at current position with the next position (A and B) The current and next parts must be points If current posision is already a bond A part, it will be updated.

Definition at line 2986 of file Seq_loc.cpp.

References CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, CSeq_loc_CI_Impl::MakeBondAB(), and CSeq_loc_CI::x_CheckValid().

Referenced by BOOST_AUTO_TEST_CASE().

◆ MakeBondB()

void CSeq_loc_I::MakeBondB ( void  )

Make bond at previous position with the current position (A and B) The current and previous parts must be points If previous posision is already a bond A part, it will be updated.

Definition at line 2993 of file Seq_loc.cpp.

References CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, CSeq_loc_CI_Impl::MakeBondB(), and CSeq_loc_CI::x_CheckValid().

◆ MakeEquiv()

void CSeq_loc_I::MakeEquiv ( const CSeq_loc_I end_it)

Create equiv set with one part from current position to the position pointed by end_it argument exclusive.

The end_it position must be after current position. If there are any conflicts with existing equiv sets or bond pairs no new equiv set will be made and an exception will be thrown. New set's level will be assigned depending on its size in relation to existing overlapping equiv sets.

◆ MakeEquivPartBreak()

void CSeq_loc_I::MakeEquivPartBreak ( size_t  level = 0)

Create equiv set with one part from current position to the position pointed by end_it argument exclusive.

The end_it position must be after current position. If there are any conflicts with existing equiv sets or bond pairs no new equiv set will be made and an exception will be thrown.

◆ MakeSeq_loc()

CRef< CSeq_loc > CSeq_loc_I::MakeSeq_loc ( EMakeType  make_type = eMake_CompactType) const

◆ Merge()

CRef< CSeq_loc > CSeq_loc::Merge ( TOpFlags  flags,
ISynonymMapper syn_mapper 
) const

◆ NCBI_EXCEPTION_DEFAULT()

CSeqLocException::NCBI_EXCEPTION_DEFAULT ( CSeqLocException  ,
CException   
)

◆ operator!=()

bool CSeq_loc_CI::operator!= ( const CSeq_loc_CI iter) const

Definition at line 2490 of file Seq_loc.cpp.

◆ operator()()

virtual bool CSeq_loc::ISubLocFilter::operator() ( const CSeq_id id) const
pure virtual

◆ operator*()

const CSeq_loc_CI& CSeq_loc_CI::operator* ( void  ) const
inline

Definition at line 572 of file Seq_loc.hpp.

◆ operator++()

CSeq_loc_CI & CSeq_loc_CI::operator++ ( void  )
inline

Definition at line 1020 of file Seq_loc.hpp.

References CSeq_loc_CI::m_Index, and CSeq_loc_CI::x_CheckValid().

◆ operator=() [1/2]

CSeq_loc& CSeq_loc::operator= ( const CSeq_loc )
private

◆ operator=() [2/2]

CSeq_loc_CI & CSeq_loc_CI::operator= ( const CSeq_loc_CI iter)

Definition at line 2469 of file Seq_loc.cpp.

References CSeq_loc_CI::m_Impl, and CSeq_loc_CI::m_Index.

◆ operator==()

bool CSeq_loc_CI::operator== ( const CSeq_loc_CI iter) const

◆ PostRead()

void CSeq_loc::PostRead ( void  ) const

Invalidate id/range cache after deserialization.

Definition at line 676 of file Seq_loc.cpp.

References CSeq_loc::InvalidateCache().

◆ RemoveBond()

void CSeq_loc_I::RemoveBond ( void  )

Remove bond at current position - it may be either A or B part.

Definition at line 2972 of file Seq_loc.cpp.

References CSeq_loc_CI::m_Impl, CSeq_loc_CI::m_Index, CSeq_loc_CI_Impl::RemoveBond(), and CSeq_loc_CI::x_CheckValid().

Referenced by BOOST_AUTO_TEST_CASE().

◆ RemoveEquiv()

void CSeq_loc_I::RemoveEquiv ( size_t  level = 0)

Remove equiv set, all pieces that are part of the set will be preserved as independent pieces.

◆ ResetFuzz()

void CSeq_loc_I::ResetFuzz ( void  )

◆ ResetFuzzFrom()

void CSeq_loc_I::ResetFuzzFrom ( void  )

◆ ResetFuzzTo()

void CSeq_loc_I::ResetFuzzTo ( void  )

◆ ResetStrand() [1/2]

void CSeq_loc::ResetStrand ( void  )

◆ ResetStrand() [2/2]

void CSeq_loc_I::ResetStrand ( void  )

◆ Rewind()

void CSeq_loc_CI::Rewind ( void  )
inline

Reset the iterator to the initial state.

Definition at line 1104 of file Seq_loc.hpp.

References CSeq_loc_CI::m_Index.

Referenced by CEditSeqEndsWithAlign::AdjustLoc(), CAlignmentAssistant::AdjustLoc(), CAnnotCompare::CompareFeats(), and CFlatSeqLoc::x_Add().

◆ SetBond() [1/2]

void CSeq_loc::SetBond ( TBond v)
inline

◆ SetBond() [2/2]

CSeq_loc::TBond & CSeq_loc::SetBond ( void  )
inline

Definition at line 989 of file Seq_loc.hpp.

Referenced by CSeq_loc::Assign(), CSeq_loc::CSeq_loc(), and CSeq_loc::SetId().

◆ SetEmpty() [1/2]

void CSeq_loc::SetEmpty ( TEmpty v)
inline

◆ SetEmpty() [2/2]

CSeq_loc::TEmpty & CSeq_loc::SetEmpty ( void  )
inline

Definition at line 981 of file Seq_loc.hpp.

Referenced by CSeq_loc::Assign(), CSeq_loc::CSeq_loc(), and CSeq_loc::SetId().

◆ SetEquiv() [1/2]

void CSeq_loc::SetEquiv ( TEquiv v)
inline

◆ SetEquiv() [2/2]

CSeq_loc::TEquiv & CSeq_loc::SetEquiv ( void  )
inline

Definition at line 988 of file Seq_loc.hpp.

Referenced by CSeq_loc::Add(), CSeq_loc::Assign(), CSeq_loc::CSeq_loc(), and CSeq_loc::SetId().

◆ SetEquivMode()

void CSeq_loc_I::SetEquivMode ( EEquivMode  mode)

◆ SetFeat() [1/2]

void CSeq_loc::SetFeat ( TFeat v)
inline

Definition at line 990 of file Seq_loc.hpp.

◆ SetFeat() [2/2]

CSeq_loc::TFeat & CSeq_loc::SetFeat ( void  )
inline

Definition at line 990 of file Seq_loc.hpp.

Referenced by CSeq_loc::Assign(), and CSeq_loc::CSeq_loc().

◆ SetFrom()

void CSeq_loc_I::SetFrom ( TSeqPos  from)

◆ SetFuzz()

void CSeq_loc_I::SetFuzz ( CInt_fuzz fuzz)

◆ SetFuzzFrom()

void CSeq_loc_I::SetFuzzFrom ( CInt_fuzz fuzz)

◆ SetFuzzTo()

void CSeq_loc_I::SetFuzzTo ( CInt_fuzz fuzz)

◆ SetId() [1/2]

void CSeq_loc::SetId ( const CSeq_id id)
inline

◆ SetId() [2/2]

void CSeq_loc::SetId ( CSeq_id id)

set the 'id' field in all parts of this location

Definition at line 3474 of file Seq_loc.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_Null, CSeq_loc_Base::e_Packed_int, CSeq_loc_Base::e_Packed_pnt, CSeq_loc_Base::e_Pnt, CSeq_loc_Base::e_Whole, ERR_POST_X, Error(), CSeq_loc_Base::GetBond(), CSeq_loc::InvalidateCache(), NON_CONST_ITERATE, CSeq_bond_Base::SetA(), CSeq_bond_Base::SetB(), CSeq_loc::SetBond(), CSeq_loc::SetEmpty(), CSeq_loc::SetEquiv(), CPacked_seqpnt_Base::SetId(), CSeq_interval_Base::SetId(), CSeq_point_Base::SetId(), CSeq_loc::SetInt(), CSeq_loc::SetMix(), CSeq_loc::SetPacked_int(), CSeq_loc::SetPacked_pnt(), CSeq_loc::SetPnt(), CSeq_loc::SetWhole(), and CSeq_loc_Base::Which().

Referenced by CFeatGapInfo::AdjustProteinSeq(), BOOST_AUTO_TEST_CASE(), CFastaSeqBlockItem::CFastaSeqBlockItem(), CFlatFileTextItem::CFlatFileTextItem(), Convert_Seq_feat_Seq_loc_Gen_Loc_TotalRange(), CCreateProteinId::create_protein_ids(), FinalCleanup(), CFlatAnticodonQVal::Format(), GetProductLabel(), GetRetranslateCDSCommand(), CAlignSpanView::GetSelection(), CAlignGlyph::GetSignature(), CSeqTextWidget::GetVisibleRange(), CCrossAlignView::GetVisibleRanges(), CDotMatrixView::GetVisibleRanges(), CViewGraphic::GetVisibleRanges(), CNSeq::Init(), CFastaObjectLoader::LoadFromStream(), CIdMapper::Map(), CCdsToMatPeptide::MergeConvert(), variation_ref::CVariationUtil::PrecursorToProt(), CSeedTop::Run(), s_AddCoalescedLocations(), s_AddSitesToAnnot(), s_CombineRefs(), s_ConvertToBlastQueries(), s_CreateKmerCounts(), s_RemapFeatureSeqIds(), s_Seq_align_Seq_loc(), CPsiBlastTestFixture::s_SetupSubject(), CSeq_loc::SetId(), CGeneFinder::CGeneSearchPlugin::setUpFeatureIterator(), sProductFromString(), CAlignmentAssistant::TranslateLocations(), variation::CVariationUtil::TranslateNAtoAA(), TruncateSeqLoc(), CBlastDB_FastaFormatter::Write(), CFastaExportJob::x_CheckForDuplicates(), CQuerySplitter::x_ComputeQueryIndicesForChunks(), CFeatureGenerator::SImplementation::x_CreateCdsFeature(), CFindITSParser::x_CreateMiscRna(), CSGAlignStatJob::x_CreatePileUpGraphs(), CNGAlignJob::x_CreateProjectItems(), CCreateNeedlemanWunschJob::x_CreateProjectItems(), CFeatureGenerator::SImplementation::x_CreateProteinBioseq(), CFindITSParser::x_CreateRRna(), CComponentSearchJob::x_DoSearch(), COrfSearchJob::x_DoSearch(), CFeatGlyph::x_DrawRuler(), CFastaExportJob::x_GetWholeLoc(), CSGAlignmentJob::x_LoadAlignmentFeats(), CBatchFeatJob::x_LoadFeatProducts(), CFeatureGenerator::SImplementation::x_MapFeature(), CFeaturePropagator::x_MapLocation(), CSequenceUpdater::x_MappedFeature_ChangeId(), CReportEntry::x_MapPos(), CSeqTextView::x_MergeObjects(), CFeatTableView::x_MergeObjects(), CViewGraphic::x_MergeObjects(), CFeatTableView::x_PreAttachToProject(), CDeltaBlastTestFixture::x_ReadSeqEntriesFromFile(), CPsiBl2SeqTestFixture::x_SetupSubject(), CFeaturePropagator::x_TruncateToStopCodon(), CSeqAlignFilter::x_UpdateGiInSeqalign(), CModifySeqId::x_UpdateLoc(), CAlnSpanVertModel::x_UpdateLocs(), and CFeatTableEdit::xGetGeneLocation().

◆ SetInt() [1/2]

void CSeq_loc::SetInt ( TInt v)
inline

Definition at line 983 of file Seq_loc.hpp.

Referenced by AddCdregionToSmallGenomeSet(), CSeq_loc_mix::AddInterval(), CExonFromCds::AddIntron(), variation_ref::CVariationUtil::AdjustDelinsToInterval(), AgpRead(), CConvertRptUnitRangeToLoc::apply(), CGroupExplode::apply(), CExplodeRNAFeats::apply(), variation::ApplyOffsetFuzz(), CDiscrepancyVisitorImpl< _Name >::Autofix(), BOOST_AUTO_TEST_CASE(), BuildGoodSpliceNucProtSet(), Canonicalize(), CAutoDefFakePromoterClause::CAutoDefFakePromoterClause(), CAutoDefPromoterAnd5UTRClause::CAutoDefPromoterAnd5UTRClause(), CCompareSeqRegions::CCompareSeqRegions(), CFastaSeqBlockItem::CFastaSeqBlockItem(), CFlatFileTextItem::CFlatFileTextItem(), CSeq_loc::ChangeToMix(), Check3Policy(), CObjMgr_QueryFactory::CObjMgr_QueryFactory(), CollapseDiscontinuitiesInUTR(), CConvertCDSToMiscFeat::Convert(), Convert_Seq_feat_Seq_loc_Gen_Loc_TotalRange(), CSeq_loc_Conversion_Set::ConvertInterval(), CSeq_loc_Conversion::ConvertPacked_int(), CSeq_loc_Conversion_Set::ConvertPacked_int(), CNewCleanup_imp::ConvertSeqLocWholeToInt(), CAnnotationASN1::CImplementationData::create_cdregion_feature(), CTestObjMgr::CreateBlastSearchQuery(), CreateFeatLocation(), CAlignmentAssistant::CreateFeature(), CEditSequence::CreateFeature(), variation_ref::CVariationUtil::CreateFlankLocs(), variation::CVariationUtil::CreateFlankLocs(), CreateLoc(), CreateOrderedLoc(), CEditSequence::CreateRegulatory(), CSeq_align::CreateRowSeq_loc(), CSeqUtils::CreateSeq_loc(), CreateTwoIntLoc(), CGBObjectLoader::Execute(), ExtendCDSToStopCodon(), ExtendLocationForTranslExcept(), ExtendStop(), CCleanup::ExtendStopPosition(), ExtendToStopCodon(), CCleanup::ExtendToStopCodon(), CdBlaster::FillOutSeqLoc(), CSimpleB2SWrapper::FillOutSeqLoc(), CBestFeatFinder::FindBestFeatForLoc(), variation::FindSSRLoc(), CInternalStopFinder::FindStartStopRanges(), FormatAsAsn(), fta_get_seqloc_int_whole(), SSeqTableContent::GetAnnot(), CVDBGraphSeqIterator::GetAnnot(), CInternalStopFinder::GetCDSNucleotideSequence(), CAddGlobalCodeBreak::GetCommand(), CExonFromCds::GetCommand(), CExtendCDSToStop::GetCommand(), CProteinAlignText::GetGenomicBounds(), GetGoodSeqEntryWithFeatureIds(), CHistogramGlyph::GetHTMLActiveAreas(), GetLastCodonLoc(), CGtfLocationRecord::GetLocation(), CBulkLocationPanel::GetLocForBioseq(), GetRandomSegment(), CBioseq_Handle::GetRangeSeq_loc(), GetRetranslateCDSCommand(), CCodingPropensity::GetScore(), CAlignSpanView::GetSelection(), CSNPDbFeatIterator::GetSeq_feat(), CLocationListCtrl::GetSeq_loc(), CGffBaseColumns::GetSeqLoc(), GetSeqLocIntSP(), GetSPSeqLoc(), CSeqTextWidget::GetVisibleRange(), CCrossAlignView::GetVisibleRanges(), CDotMatrixView::GetVisibleRanges(), CViewGraphic::GetVisibleRanges(), HasExcludedAnnotation(), CGtfImportData::Initialize(), C5ColImportData::Initialize(), CBedImportData::Initialize(), IsGeneLocationOk(), CFastaObjectLoader::LoadFromStream(), MakeCLoc(), MakeDDFromSeqLoc(), CSeq_loc_Conversion::MakeDstMix(), MakeEntryForDeltaConversion(), MakeInterval(), CSeq_loc_CI_Impl::MakeLocInterval(), MakeMixLoc(), MakeMultiSeqCDS(), MakeSeqLocFromDD(), CLocMapper_Default::Map(), CGtfLocationMerger::MergeLocationForGene(), CSeqUtils::MixLocToLoc(), NormalizeLoc(), CStd_seg::OffsetRow(), CAlignmentAssistant::OnAddAlignCDS(), CAlignmentAssistant::OnAddAlignOther(), CAlignmentAssistant::OnAddAlignRNA(), CAgpToSeqEntry::OnGapOrComponent(), CRepeatMaskerReader::ParseRecord(), ProjectAndCollapseCDS(), ProjectExon_newlogic(), ProjectExon_oldlogic(), CStd_seg::RemapToLoc(), SRelLoc::Resolve(), RevComp(), ReverseComplementLocation(), CXcompareAnnotsApplication::Run(), CDemoApp::Run(), CFeatTreeSampleApp::Run(), CSampleObjmgrApplication::Run(), CTestSingleAln_All::RunTest(), s_AddCoalescedLocations(), variation::CVariationUtil::s_AddIntronicOffsets(), variation_ref::CVariationUtil::s_AddIntronicOffsets(), s_AddSitesToAnnot(), s_ConvertToBlastQueries(), CSeq_loc_Conversion::s_ConvertToMix(), s_ConvertWholeToInt(), s_CoverageSeqLoc(), s_CreateStdSegs(), s_FixIntervalProtToCds(), s_FlattenLoc(), s_GetCdregionPlusUpstream(), s_GetMaskLoc(), s_GetPolyA_genomic_priming(), s_GetUngapLoc(), variation::CVariationUtil::CVariantPropertiesIndex::s_GetUTRLocs(), s_HasMobileElementForInterval(), s_MakeMixLoc(), s_MakeSliceMapper(), s_OOFBlastHSP2SeqAlign(), variation::CVariationUtil::s_ResolveIntronicOffsets(), variation_ref::CVariationUtil::s_ResolveIntronicOffsets(), s_Seq_align_Seq_loc(), s_SeqLocDelete(), s_SeqMapForHandle(), s_SetSplitQuerySeqInterval(), sConvertIntToPoint(), SeqLocAdjustForInsert(), SeqLocAdjustForTrim(), CNewCleanup_imp::SeqLocBC(), CSeq_loc_Conversion::SetDstLoc(), CSeqTableSetLocFuzzFromLim::SetInt(), CSeqTableSetLocFuzzToLim::SetInt(), CGffFeatureRecord::SetLocation(), SetNewInterval(), CGeneFinder::CGeneSearchPlugin::setUpFeatureIterator(), SimpleSeqLocFromBioseq(), SplitLocationForGap(), StartAbutsGap(), StopAbutsGap(), CReadBlastApp::StoreBlast(), TestFuseAbuttingIntervals(), TestOneCDS(), TestPartialWhenCutLastInterval(), TestPartialWhenCutLastIntervalDoNotExtend(), TestTwoIntCdsFromLastBioseqOutsideAlign(), CSingleCDSExceptionPanel::TransferDataFromWindow(), variation::CVariationUtil::TranslateNAtoAA(), TruncateSeqLoc(), TruncateToCDS(), TruncateTransSplicedCDSForExtension(), TryOneCaseMixLoc(), CAnnotMapping_Info::UpdateMappedSeq_loc(), CSeqTableLocColumns::UpdateSeq_loc(), UpgradeSeqLocId(), CPhrap_Contig::x_AddBaseSegFeats(), CFeatureTableReader_Imp::x_AddIntervalToFeature(), CMultiAligner::x_AddNewSegment(), CPhrap_Read::x_AddQualityFeat(), CFeatureItem::x_AddQualsProt(), CPhrap_Contig::x_AddReadLocFeats(), CPhrap_Read::x_AddTagFeats(), CPhrap_Contig::x_AddTagFeats(), CEditObjectSeq_feat::x_AdjustCircularGene(), variation::CVariationUtil::x_AdjustDelinsToInterval(), variation::CHgvsParser::x_AdjustPlacementForHgvs(), CAutogeneratedCleanup::x_BasicCleanupSeqFeat_location_ETC(), CAutogeneratedCleanup::x_BasicCleanupSeqLoc(), CSequenceEditingEventHandler::x_CacheSelectedLocations(), variation::CVariationUtil::CCdregionIndex::x_CacheSeqData(), CFeatureGenerator::SImplementation::x_CollectMrnaSequence(), CCorrectGenesDialog::x_CorrectPairInterval(), CFeatureGenerator::SImplementation::x_CreateCdsFeature(), CFindITSParser::x_CreateMiscRna(), CAdjustForConsensusSpliceSite::x_CreateNewLocation(), CSGAlignStatJob::x_CreatePileUpGraphs(), CCreateNeedlemanWunschJob::x_CreateProjectItems(), CProSplignJob::x_CreateProjectItems(), CWindowMaskerJob::x_CreateProjectItems(), CFeatureGenerator::SImplementation::x_CreateProteinBioseq(), CFindITSParser::x_CreateRRna(), CNgAlignApp::x_CreateSequenceSet(), CComponentSearchJob::x_DoSearch(), COrfSearchJob::x_DoSearch(), CSeqMap::x_DoUpdateSeq_inst(), CFeaturePropagator::x_ExtendToStopCodon(), CBlastFastaInputSource::x_FastaToSeqLoc(), CSeq_loc_Mapper_Base::x_FixNonsenseFuzz(), CFlatGatherer::x_GatherFeatures(), CFlatGatherer::x_GatherFeaturesIdx(), CSeq_align_Mapper_Base::x_GetDstStd(), CAutoDef::x_GetFeatureClauses(), CLocationListCtrl::x_GetInterval(), variation::CVariationUtil::x_GetLiteralAtLoc(), CAsn2FlatApp::x_GetLocation(), CFlatFileGenerator::x_GetLocation(), CSraInputSource::x_GetNextSeq_loc(), CEditingBtnsPanel::x_GetSelectedLocations(), CFlatGatherer::x_GiveOneResidueIntervalsBogusFuzz(), variation::CVariationUtil::x_InferNAfromAA(), CBioseqIndex::x_InitFeats(), variation_ref::CHgvsParser::x_InstToString(), CSGAlignmentJob::x_LoadAlignmentFeats(), CBatchFeatJob::x_LoadFeatProducts(), CVDBGraphSeqIterator::x_MakeTable(), CFeatureGenerator::SImplementation::x_MapFeature(), IEditingActionFeat::x_MergeFeatureLocation(), CSeqTextView::x_MergeObjects(), CFeatTableView::x_MergeObjects(), CViewGraphic::x_MergeObjects(), SCigarAlignment::x_NextChunk(), x_NonTranslatedHSPToStdSeg(), CGFFReader::x_ParseAlignRecord(), CCoiledCoil::x_PredictRegions(), CGenBankLoadOptionPanel::x_ProccessText(), CXcompareAnnotsApplication::x_ProcessMappingRange(), CXcompareAnnotsApplication::x_ProcessMappingRanges(), CXcompareAnnotsApplication::x_ProcessSeqAlignSetFromFile(), variation_ref::CVariationUtil::x_ProtToPrecursor(), x_PushRange(), CSeq_loc_Mapper_Base::x_PushSourceRange(), variation_ref::CHgvsParser::x_range(), CSeq_loc_Mapper_Base::x_RangeToSeq_loc(), CSplitQueryTestFixture::x_ReadQueryBoundsPerChunk(), variation::CVariationUtil::x_Remap(), CFlatGatherer::x_RemoveBogusFuzzFromIntervals(), CGFFReader::x_ResolveLoc(), CVectorTrimPanel::x_SeqLocDelete(), CCDSTranslationPanel::x_SetLocationForProtein(), CWig2tableApplication::x_SetTotalLoc(), x_SingleRange(), variation_ref::CHgvsParser::x_ssr(), CFeaturePropagator::x_TruncateToStopCodon(), x_UngappedHSPToStdSeg(), CAdjustForConsensusSpliceSite::x_UpdateLocation(), CAlnSpanVertModel::x_UpdateLocs(), CAdjustForConsensusSpliceSite::x_UpdateMixLocations(), CGvfReader::xFeatureSetLocationInterval(), XGapToSeqLocEx(), CFeatTableEdit::xGetGeneLocation(), CGff3LocationMerger::xGetRecordLocation(), CUCSCRegionReader::xParseFeatureUCSCFormat(), and CWiggleReader::xSetTotalLoc().

◆ SetInt() [2/2]

CSeq_loc::TInt & CSeq_loc::SetInt ( void  )
inline

◆ SetMix() [1/2]

void CSeq_loc::SetMix ( TMix v)
inline

Definition at line 987 of file Seq_loc.hpp.

Referenced by AddInsertWithGaps(), AddLoc(), CSeq_loc_mix::AddSeqLoc(), BOOST_AUTO_TEST_CASE(), Canonicalize(), CCleanup::ClearInternalPartials(), CollapseDiscontinuitiesInUTR(), CSeq_loc::Compare(), CSeq_loc_Conversion_Set::ConvertMix(), CFeatureGenerator::SImplementation::ConvertMixedAlignToAnnot(), CSeq_loc_Conversion_Set::ConvertPacked_pnt(), CLocationEditPolicy::ConvertToJoin(), CLocationEditPolicy::ConvertToOrder(), CorrectIntervalOrder(), CreateOrderedLoc(), CSeq_align::CreateRowSeq_loc(), CreateTwoIntLoc(), CCleanup::ExtendStopPosition(), CBlastDBExtractor::ExtractFasta(), variation::FindSSRLoc(), CGeneFinder::GeneSearchNormalizeLoc(), CFeatureGenePanel::GetLocationForGene(), CValidError_bioseq::GetLocFromSeq(), CAsn2FastaApp::HandleSeqEntry(), MakeCLoc(), CSeq_loc_CI_Impl::MakeLoc(), MakeMixLoc(), CFeaturePropagator::MakeOrdered(), CLocMapper_Default::Map(), CGencollIdMapper::Map(), CGff3LocationMerger::MergeLocation(), CGtfLocationMerger::MergeLocationDefault(), CGtfLocationMerger::MergeLocationForCds(), CGtfLocationMerger::MergeLocationForGene(), CCompareSeqRegions::NextComparisonGroup(), NormalizeLoc(), ProjectExons(), RevComp(), ReverseComplementLocation(), s_AddSeqLocMix(), CSeq_loc_Conversion::s_ConvertToMix(), s_CoverageSeqLoc(), s_FlattenLoc(), s_GetCdregionPlusUpstream(), s_GetMaskSeqLoc(), s_MakeMixLoc(), s_NormalizeNullsBetween(), s_SeqLocDelete(), s_TitleFromSegment(), CInvertProcess::SeqEntryProcess(), SeqLocAdjustForInsert(), SeqLocAdjustForTrim(), CNewCleanup_imp::SeqLocBC(), CSeq_loc_Conversion::SetDstLoc(), SplitLocationForGap(), TruncateToCDS(), CAnnotMapping_Info::UpdateMappedSeq_loc(), UpgradeSeqLocId(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), CAutogeneratedCleanup::x_BasicCleanupSeqFeat_location_ETC(), CAutogeneratedCleanup::x_BasicCleanupSeqLoc(), CAdjustForConsensusSpliceSite::x_CreateNewLocation(), CContigItem::x_GatherInfo(), CSeq_loc_Mapper_Base::x_GetMappedSeq_loc(), x_GetSegSeqInfoViaCDS(), CFlatGatherer::x_GiveOneResidueIntervalsBogusFuzz(), variation::CVariationUtil::CVariantPropertiesIndex::x_Index(), CFeatureGenerator::SImplementation::x_MapFeature(), CSeq_loc_Mapper_Base::x_MapSeq_loc(), CSeq_loc_Mapper_Base::x_OptimizeSeq_loc(), CSeq_loc_Mapper_Base::x_PushLocToDstMix(), x_PushRange(), CSeq_loc_Mapper_Base::x_PushSourceRange(), CFlatGatherer::x_RemoveBogusFuzzFromIntervals(), CGFFReader::x_ResolveLoc(), CVectorTrimPanel::x_SeqLocDelete(), CCDSTranslationPanel::x_SetLocationForProtein(), CAdjustForConsensusSpliceSite::x_UpdateLocation(), and xgbloc_ver().

◆ SetMix() [2/2]

CSeq_loc::TMix & CSeq_loc::SetMix ( void  )
inline

◆ SetNull()

void CSeq_loc::SetNull ( void  )
inline

Override all setters to incorporate cache invalidation.

Definition at line 960 of file Seq_loc.hpp.

References CSeq_loc::InvalidateIdCache(), and CSeq_loc_Base::SetNull().

Referenced by CSeq_loc::Assign(), BOOST_AUTO_TEST_CASE(), Canonicalize(), CBedImportData::CBedImportData(), CFlatGapLoc::CFlatGapLoc(), CGtfImportData::CGtfImportData(), CSeq_loc_Conversion::Convert(), CSeq_loc_Conversion_Set::Convert(), CSeq_loc_Conversion::ConvertEquiv(), CSeq_loc_Conversion_Set::ConvertEquiv(), CSeq_loc_Conversion::ConvertMix(), CSeq_loc_Conversion_Set::ConvertMix(), CSeq_loc_Conversion::ConvertPacked_int(), CSeq_loc_Conversion_Set::ConvertPacked_int(), CSeq_loc_Conversion::ConvertPacked_pnt(), CSeq_loc_Conversion_Set::ConvertPacked_pnt(), CLocationEditPolicy::ConvertToOrder(), variation_ref::CVariationUtil::CreateFlankLocs(), variation::CVariationUtil::CreateFlankLocs(), CreateOrderedLoc(), CSeq_loc::CSeq_loc(), DealWithGenes(), GetBioseq(), CProteinAlignText::GetGenomicBounds(), CCreatedFeat_Ref::GetMappedLocation(), GetRandomSegment(), CLocationListCtrl::GetSeq_loc(), CBedImportData::Initialize(), CSeq_loc_CI_Impl::MakeLocOther(), CGff3LocationMerger::MergeLocation(), CGtfLocationMerger::MergeLocation(), CCompareSeqRegions::NextComparisonGroup(), CFastaReader::ReadOneSeq(), CXcompareAnnotsApplication::Run(), s_AddSeqLocMix(), s_BlastSeqLoc2CSeqloc(), s_FlattenLoc(), s_LocationJoinToOrder(), s_NormalizeNullsBetween(), CNewCleanup_imp::SeqLocBC(), variation::CVariationUtil::x_AdjustDelinsToInterval(), CSeq_loc_Mapper_Base::x_GetMappedSeq_loc(), CSeq_loc_Mapper_Base::x_MapSeq_loc(), x_MergeAndSort(), x_MergeNoSort(), CSeq_loc_Mapper_Base::x_OptimizeSeq_loc(), CXcompareAnnotsApplication::x_ProcessMappingRange(), CSeq_loc_Mapper_Base::x_PushNullLoc(), x_PushRange(), x_SingleRange(), x_SubAndSort(), x_SubNoSort(), XGapToSeqLocEx(), xgbgap(), and xgbloc_ver().

◆ SetPacked_int() [1/2]

void CSeq_loc::SetPacked_int ( TPacked_int v)
inline

Definition at line 984 of file Seq_loc.hpp.

Referenced by BOOST_AUTO_TEST_CASE(), CWriteUtil::ChangeToPackedInt(), CCleanup::ClearInternalPartials(), CObjMgr_QueryFactory::CObjMgr_QueryFactory(), CollapseDiscontinuitiesInUTR(), CSeq_loc_Conversion::ConvertPacked_int(), CSeq_loc_Conversion_Set::ConvertPacked_int(), CorrectIntervalOrder(), CAnnotationASN1::CImplementationData::create_packed_int_seqloc(), CFeaturePropagator::CreateRowSeq_loc(), CSeq_align::CreateRowSeq_loc(), CSeqUtils::CreateSeq_loc(), CFeatureGenerator::SImplementation::FixOrderOfCrossTheOriginSeqloc(), CScore_StartStopCodon::Get(), CSeqUtils::GetCdsMappingInfoFromRna(), CAddGlobalCodeBreak::GetCommand(), CProteinAlignText::GetGenomicBounds(), CRegexp_loc::GetLoc(), CAlnMultiWidget::GetMarks(), GetOverlappingFeatures(), CObjMgr_QueryFactory::GetTSeqLocVector(), CBedImportData::Initialize(), MakeDDFromSeqLoc(), CSeq_loc_CI_Impl::MakeLocPacked_int(), MakeSeqLocFromDD(), CSeqUtils::MixLocToLoc(), CSequenceIStreamBlastDB::next(), PackedSeqLocToMaskedQueryRegions(), ProjectExon_newlogic(), ProjectExon_oldlogic(), ReverseComplementLocation(), s_BlastSeqLoc2CSeqloc(), s_ConvertToBlastQueries(), CSeq_loc_Conversion::s_ConvertToMix(), s_CreateBlastMask(), s_MakePackedInt(), s_MakePackedInt2(), s_SeqLocDelete(), SeqLocAdjustForInsert(), SeqLocAdjustForTrim(), CNewCleanup_imp::SeqLocBC(), CCleanup::SetCodeBreakLocation(), SplitLocationForGap(), CSingleCDSExceptionPanel::TransferDataFromWindow(), NTweakExon::TweakExon(), UpgradeSeqLocId(), CPhrap_Contig::x_AddReadLocFeats(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), CAutogeneratedCleanup::x_BasicCleanupSeqFeat_location_ETC(), CAutogeneratedCleanup::x_BasicCleanupSeqLoc(), CNewCleanup_imp::x_BothStrandBC(), CFastaReader::x_CloseMask(), CAdjustForConsensusSpliceSite::x_CreateNewLocation(), CWindowMaskerJob::x_CreateProjectItems(), CFeatGlyph::x_DrawProjectedRuler(), CFeatGlyph::x_DrawRuler(), CFeatureGenerator::SImplementation::SMapper::x_GetLocFromSplicedExons(), CFlatGatherer::x_GiveOneResidueIntervalsBogusFuzz(), CFeatureGenerator::SImplementation::x_MapFeature(), IEditingActionFeat::x_MergeFeatureLocation(), CSeq_loc_Mapper_Base::x_OptimizeSeq_loc(), CFlatGatherer::x_RemoveBogusFuzzFromIntervals(), CVectorTrimPanel::x_SeqLocDelete(), CAdjustForConsensusSpliceSite::x_UpdateLocation(), CGff3Writer::xAssignFeature(), CFeatTableEdit::xGetGeneLocation(), and CGff3LocationMerger::xGetRecordLocation().

◆ SetPacked_int() [2/2]

CSeq_loc::TPacked_int & CSeq_loc::SetPacked_int ( void  )
inline

◆ SetPacked_pnt() [1/2]

void CSeq_loc::SetPacked_pnt ( TPacked_pnt v)
inline

◆ SetPacked_pnt() [2/2]

CSeq_loc::TPacked_pnt & CSeq_loc::SetPacked_pnt ( void  )
inline

◆ SetPartialStart()

void CSeq_loc::SetPartialStart ( bool  val,
ESeqLocExtremes  ext 
)

set / remove e_Lim fuzz on start or stop (lt/gt - indicating partial interval)

Definition at line 3280 of file Seq_loc.cpp.

References CSeq_loc_Base::e_Int, CSeq_loc_Base::e_Mix, CSeq_loc_Base::e_Packed_int, CSeq_loc_Base::e_Packed_pnt, CSeq_loc_Base::e_Pnt, CSeq_loc::IsPartialStart(), CSeq_loc::SetInt(), CSeq_loc::SetMix(), CSeq_loc::SetPacked_int(), CSeq_loc::SetPacked_pnt(), CPacked_seqint::SetPartialStart(), CPacked_seqpnt::SetPartialStart(), CSeq_interval::SetPartialStart(), CSeq_loc_mix::SetPartialStart(), CSeq_point::SetPartialStart(), CSeq_loc::SetPnt(), val, and CSeq_loc_Base::Which().

Referenced by CExonFromCds::AddIntron(), CAutoDefFeatureClause::AddToLocation(), CGroupExplode::apply(), CExplodeRNAFeats::apply(), AugmentPartialness(), CDiscrepancyVisitorImpl< _Name >::Autofix(), BOOST_AUTO_TEST_CASE(), CAutoDefParsedClause::CAutoDefParsedClause(), CAutoDefParsedIntergenicSpacerClause::CAutoDefParsedIntergenicSpacerClause(), CFixForTransSplicing::CombineFeatures(), CSequenceEditingEventHandler::CombineSelectedGenesIntoPseudogenes(), CFeatureGenerator::ConvertLocToAnnot(), CSeq_loc_Conversion::ConvertMix(), CSeq_loc_Conversion_Set::ConvertMix(), CSeq_loc_Conversion_Set::ConvertPacked_int(), CAnnotationASN1::CImplementationData::create_cdregion_feature(), CreateFeatLocation(), CreateLoc(), CreateOrderedLoc(), CreateTwoIntLoc(), CExtendCDSToStop::ExtendmRNA(), ExtendToStopCodon(), FindNewLocations(), CCdsFromGeneMrnaExon::GetCommand(), CExonFromCds::GetCommand(), CExtendCDSToStop::GetCommand(), CFuseFeaturesDlg::GetCommand(), CmRNAFromGeneCdsExon::GetCommand(), CtRNAFromGene::GetCommand(), CFeatureGenePanel::GetLocationForGene(), CBulkLocationPanel::GetLocForBioseq(), CCleanup::GetProteinLocationFromNucleotideLocation(), InheritPartialness(), ProjectExons(), RemapOtherProtFeats(), s_FinishLoc(), s_GetCdsSequence(), s_MapSingleAA(), SeqLocExtend(), CCleanup::SeqLocExtend(), SeqLocExtend3(), SeqLocExtend5(), SetPartial(), CFeatureGenerator::SImplementation::SetPartialFlags(), CSeq_loc_mix::SetPartialStart(), CFeatGapInfo::Split(), TransferPartialness(), CFeatureGenerator::SImplementation::TransformProteinAlignToTranscript(), TruncateCDSAtStop(), TruncateSeqLoc(), CPromote::x_AddProtFeature(), CDisplaySeqalign::x_AddTranslationForLocalSeq(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), CCorrectGenesDialog::x_CorrectPairInterval(), CFeatureGenerator::SImplementation::x_CreateCdsFeature(), CFindITSParser::x_CreateMiscRna(), CFeatureGenerator::SImplementation::x_CreateProteinBioseq(), CFindITSParser::x_CreateRRna(), CFlatGatherer::x_GatherFeatures(), CFlatGatherer::x_GatherFeaturesIdx(), CFeatureGenerator::SImplementation::SMapper::x_GetLocFromSplicedExons(), CFeatureGenerator::SImplementation::x_MapFeature(), CFeaturePropagator::x_MapLocation(), CReportTrim::x_RetranslateCDS(), CCDSTranslationPanel::x_SetLocationForProtein(), CSeq_loc_Mapper_Base::x_StripExtraneousFuzz(), CFeatTrim::x_TrimLocation(), and CAdjustForConsensusSpliceSite::x_UpdateLocation().

◆ SetPartialStop()

void CSeq_loc::SetPartialStop ( bool  val,
ESeqLocExtremes  ext 
)

Definition at line 3313 of file Seq_loc.cpp.

References CSeq_loc_Base::e_Int, CSeq_loc_Base::e_Mix, CSeq_loc_Base::e_Packed_int, CSeq_loc_Base::e_Packed_pnt, CSeq_loc_Base::e_Pnt, CSeq_loc::IsPartialStop(), CSeq_loc::SetInt(), CSeq_loc::SetMix(), CSeq_loc::SetPacked_int(), CSeq_loc::SetPacked_pnt(), CPacked_seqint::SetPartialStop(), CPacked_seqpnt::SetPartialStop(), CSeq_interval::SetPartialStop(), CSeq_loc_mix::SetPartialStop(), CSeq_point::SetPartialStop(), CSeq_loc::SetPnt(), val, and CSeq_loc_Base::Which().

Referenced by CExonFromCds::AddIntron(), CAutoDefFeatureClause::AddToLocation(), CCDSTranslationPanel::AdjustForStopCodonHyperlinkClicked(), AdjustMappedStop(), CGroupExplode::apply(), CExplodeRNAFeats::apply(), AugmentPartialness(), CDiscrepancyVisitorImpl< _Name >::Autofix(), BOOST_AUTO_TEST_CASE(), CAutoDefParsedClause::CAutoDefParsedClause(), CAutoDefParsedIntergenicSpacerClause::CAutoDefParsedIntergenicSpacerClause(), CFixForTransSplicing::CombineFeatures(), CSequenceEditingEventHandler::CombineSelectedGenesIntoPseudogenes(), CFeatureGenerator::ConvertLocToAnnot(), CSeq_loc_Conversion::ConvertMix(), CSeq_loc_Conversion_Set::ConvertMix(), CSeq_loc_Conversion::ConvertPacked_int(), CSeq_loc_Conversion_Set::ConvertPacked_int(), CAnnotationASN1::CImplementationData::create_cdregion_feature(), CreateFeatLocation(), CreateLoc(), CreateOrderedLoc(), CreateTwoIntLoc(), ExtendCDSToStopCodon(), CExtendCDSToStop::ExtendmRNA(), CCleanup::ExtendStopPosition(), ExtendToStopCodon(), FindNewLocations(), CCdsFromGeneMrnaExon::GetCommand(), CExonFromCds::GetCommand(), CExtendCDSToStop::GetCommand(), CFuseFeaturesDlg::GetCommand(), CmRNAFromGeneCdsExon::GetCommand(), CtRNAFromGene::GetCommand(), CFeatureGenePanel::GetLocationForGene(), CBulkLocationPanel::GetLocForBioseq(), CCleanup::GetProteinLocationFromNucleotideLocation(), InheritPartialness(), CCdsToMatPeptide::MergeConvert(), ProjectExons(), RemapOtherProtFeats(), s_FinishLoc(), s_GetCdsSequence(), s_MapSingleAA(), SeqLocExtend(), CCleanup::SeqLocExtend(), SeqLocExtend3(), SeqLocExtend5(), SetPartial(), CFeatureGenerator::SImplementation::SetPartialFlags(), CSeq_loc_mix::SetPartialStop(), CFeatGapInfo::Split(), TransferPartialness(), CFeatureGenerator::SImplementation::TransformProteinAlignToTranscript(), TruncateCDSAtStop(), CTruncateCDS::TruncateProteinFeat(), TruncateSeqLoc(), CPromote::x_AddProtFeature(), CDisplaySeqalign::x_AddTranslationForLocalSeq(), CAdjustForConsensusSpliceSite::x_AlsoAdjustmRNA(), CCorrectGenesDialog::x_CorrectPairInterval(), CFindITSParser::x_CreateMiscRna(), CFeatureGenerator::SImplementation::x_CreateProteinBioseq(), CFindITSParser::x_CreateRRna(), CFlatGatherer::x_GatherFeatures(), CFlatGatherer::x_GatherFeaturesIdx(), CFeatureGenerator::SImplementation::SMapper::x_GetLocFromSplicedExons(), CFeatureGenerator::SImplementation::x_MapFeature(), CFeaturePropagator::x_MapLocation(), CReportTrim::x_RetranslateCDS(), CSeq_loc_Mapper_Base::x_SetLastTruncated(), CCDSTranslationPanel::x_SetLocationForProtein(), CSeq_loc_Mapper_Base::x_StripExtraneousFuzz(), CFeatTrim::x_TrimLocation(), and CAdjustForConsensusSpliceSite::x_UpdateLocation().

◆ SetPnt() [1/2]

void CSeq_loc::SetPnt ( TPnt v)
inline

Definition at line 985 of file Seq_loc.hpp.

Referenced by CSeq_loc_mix::AddInterval(), BOOST_AUTO_TEST_CASE(), CVariationNormalizationDelIns::ConvertExpandedInsertionToDelIns(), CSeq_loc_Conversion::ConvertPacked_pnt(), CSeq_loc_Conversion_Set::ConvertPacked_pnt(), CSeq_loc_Conversion_Set::ConvertPoint(), CreatePointLoc(), CBulkLocationPanel::GetLocForBioseq(), GetRandomSegment(), CSNPDbFeatIterator::GetSeq_feat(), GetSPSeqLoc(), MakeCLoc(), CSeq_loc_CI_Impl::MakeLocPoint(), MakePoint(), NormalizeLoc(), CStd_seg::OffsetRow(), CStd_seg::RemapToLoc(), SRelLoc::Resolve(), ReverseComplementLocation(), s_AddSitesToAnnot(), CSeq_loc_Conversion::s_ConvertToMix(), s_MakeMixLoc(), s_MakePointForLocationStop(), sConvertIntToPoint(), SeqLocAdjustForInsert(), SeqLocAdjustForTrim(), CNewCleanup_imp::SeqLocBC(), CSeq_loc_Conversion::SetDstLoc(), CSeqTableSetLocFuzzFromLim::SetInt(), CEditingActionFeatTranslExcept::SetValue(), SplitLocationForGap(), TruncateSeqLoc(), CAnnotMapping_Info::UpdateMappedSeq_loc(), CSeqTableLocColumns::UpdateSeq_loc(), UpgradeSeqLocId(), CFeatureTableReader_Imp::x_AddIntervalToFeature(), CAutogeneratedCleanup::x_BasicCleanupSeqFeat_location_ETC(), CAutogeneratedCleanup::x_BasicCleanupSeqLoc(), CNewCleanup_imp::x_BothStrandBC(), CSeq_loc_Mapper_Base::x_FixNonsenseFuzz(), CLocationListCtrl::x_GetInterval(), CMacroFunction_ReplaceStopWithSelenocysteine::x_GetProteinLoc(), variation_ref::CHgvsParser::x_insertion(), variation_ref::CHgvsParser::x_InstToString(), variation_ref::CHgvsParser::x_location(), CReportEntry::x_MapPos(), CSeq_loc_Mapper_Base::x_MapSeq_loc(), variation_ref::CHgvsParser::x_prot_pos(), x_PushRange(), CSeq_loc_Mapper_Base::x_RangeToSeq_loc(), CGFFReader::x_ResolveLoc(), CBioseq::x_SeqLoc_To_DeltaExt(), CFeaturePropagator::x_TruncateToStopCodon(), CAdjustForConsensusSpliceSite::x_UpdateMixLocations(), and CGvfReader::xFeatureSetLocationPoint().

◆ SetPnt() [2/2]

CSeq_loc::TPnt & CSeq_loc::SetPnt ( void  )
inline

◆ SetPoint()

void CSeq_loc_I::SetPoint ( TSeqPos  pos)

◆ SetPos()

void CSeq_loc_CI::SetPos ( size_t  pos)

◆ SetRange()

void CSeq_loc_I::SetRange ( const TRange range)

◆ SetSeq_id()

void CSeq_loc_I::SetSeq_id ( const CSeq_id id)
inline

Set seq_id of the current location.

Definition at line 713 of file Seq_loc.hpp.

References CSeq_id_Handle::GetHandle(), and CSeq_loc_I::SetSeq_id_Handle().

Referenced by CSequenceUpdater::s_OffsetLocation(), and UpdateToBestId().

◆ SetSeq_id_Handle()

void CSeq_loc_I::SetSeq_id_Handle ( const CSeq_id_Handle id)

◆ SetStrand() [1/3]

void CSeq_loc::SetStrand ( ENa_strand  strand)

Set the strand for all of the location's ranges.

Definition at line 5196 of file Seq_loc.cpp.

References CSeq_loc_Base::e_Int, CSeq_loc_Base::e_Mix, CSeq_loc_Base::e_Packed_int, CSeq_loc_Base::e_Packed_pnt, CSeq_loc_Base::e_Pnt, CSeq_loc::SetInt(), CSeq_loc::SetMix(), CSeq_loc::SetPacked_int(), CSeq_loc::SetPacked_pnt(), CSeq_loc::SetPnt(), CPacked_seqint::SetStrand(), CSeq_loc_mix::SetStrand(), CPacked_seqpnt_Base::SetStrand(), CSeq_interval_Base::SetStrand(), CSeq_point_Base::SetStrand(), and CSeq_loc_Base::Which().

Referenced by CExonFromCds::AddIntron(), BOOST_AUTO_TEST_CASE(), CMultiSeqInfo::CMultiSeqInfo(), Convert_Seq_feat_Seq_loc_Gen_Loc_TotalRange(), CQueryFactoryInfo::CQueryFactoryInfo(), ExtendCDSToStopCodon(), ExtendLocationForTranslExcept(), ExtendToStopCodon(), CCleanup::ExtendToStopCodon(), CProSplign::FindGlobalAlignment(), CGeneFinder::GeneSearchNormalizeLoc(), CExonFromCds::GetCommand(), CExtendCDSToStop::GetCommand(), CGeneFinder::GetFeatViaSubsetThenExtremesIfPossible(), CProteinAlignText::GetGenomicBounds(), GetOverlappingFeatures(), IsGeneLocationOk(), CCleanup::ParseCodeBreak(), RemapAlignToLoc(), s_CollectBestOverlaps(), s_ConvertToBlastQueries(), s_ParseTRnaFromAnticodonString(), CGeneFinder::CGeneSearchPlugin::setUpFeatureIterator(), variation_ref::CVariationUtil::SetVariantProperties(), TestMapper_Trimming(), TruncateSeqLoc(), TryOneCaseMixLoc(), CQuerySplitter::x_ComputeQueryIndicesForChunks(), CCorrectGenesDialog::x_CorrectPairInterval(), CCorrectGenesDialog::x_CorrectPairStrand(), CProSplignJob::x_CreateProjectItems(), CFeaturePropagator::x_ExtendToStopCodon(), x_GetBestOverlapForSNP(), CFeatureGenerator::SImplementation::x_MapFeature(), CFeaturePropagator::x_MapLocation(), CSeq_loc_Mapper_Base::x_PushSourceRange(), CSplitQueryTestFixture::x_ReadQueryBoundsPerChunk(), CCDSTranslationPanel::x_SetLocationForProtein(), CFeaturePropagator::x_TruncateToStopCodon(), and CGvfReader::xFeatureSetLocationPoint().

◆ SetStrand() [2/3]

void SSeq_loc_CI_RangeInfo::SetStrand ( ENa_strand  strand)
inline

◆ SetStrand() [3/3]

void CSeq_loc_I::SetStrand ( ENa_strand  strand)

◆ SetTo()

void CSeq_loc_I::SetTo ( TSeqPos  to)

◆ SetTruncatedStart()

void CSeq_loc::SetTruncatedStart ( bool  val,
ESeqLocExtremes  ext 
)

◆ SetTruncatedStop()

void CSeq_loc::SetTruncatedStop ( bool  val,
ESeqLocExtremes  ext 
)

◆ SetWhole() [1/2]

void CSeq_loc::SetWhole ( TWhole v)
inline

Definition at line 982 of file Seq_loc.hpp.

Referenced by AddSpanningSentinelFeat(), CSourceModParser::ApplyAllMods(), BOOST_AUTO_TEST_CASE(), BuildGoodSegSet(), CComponentSearchForm::ConstructQuery(), CCpgSearchForm::ConstructQuery(), CFeatureSearchForm::ConstructQuery(), COrfSearchForm::ConstructQuery(), Convert_Seq_annot_Seq_loc_All(), Convert_Seq_entry_Seq_loc(), Convert_Seq_feat_Seq_loc_dbxref_Loc(), Convert_Seq_id_Seq_loc(), CPSeq::CPSeq(), variation::CreateUnknownProtConsequenceVariation(), CreateWholeSeqLocFromIds(), CTestObjMgr::CreateWholeSSeqLoc(), CReferenceItem::CReferenceItem(), CRemoveFeatChecker::Do(), CFlatFileGenerator::Generate(), CScore_StartStopCodon::Get(), CFindRSites::GetAnnot(), CProjectTreeView::GetMultiple(), CBioseq_Handle::GetRangeSeq_loc(), CProjectTreeView::GetSearchLoc(), CViewGraphic::GetSearchLoc(), GetSeqExt(), CFlatFileLocusItem::GetSeqLoc(), CVDBSeqInfoSrc::GetSeqLoc(), GetSeqLocation(), GetSeqLocFromStream(), CBlastKmerResults::GetTSL(), CwxDemoAlignTableFrame::InitData(), IsInScope(), CwxDemoFeatureTableFrame::LoadAccession(), CwxDemoFeatureTableFrame::LoadFile(), CTblastnNode::Main(), CMakeCdrProds::MakeCdrProds(), CSeq_loc_CI_Impl::MakeLocOther(), CAliToSeq_align::MakeSeq_align(), CIdMapper::Map(), ReadFastaQueries(), CSeqUtils::RemapChildToParent(), CAnnotationASN1::CImplementationData::ResetASN1(), CPsiBlastApp::Run(), CSeedTop::Run(), CVectorScreen::Run(), CLocalFinderApp::Run(), CXcompareAnnotsApplication::Run(), CVDBTblastnApp::Run(), CDemoApp::Run(), CTestBMApp::Run(), VSRunSampleApplication::Run(), CSampleLds2Application::Run(), CFeatTreeSampleApp::Run(), CSampleObjmgrApplication::Run(), CTestTranscript_CountCdregions::RunTest(), s_AddPartToSegmentedBioseq(), s_ConvertToBlastQueries(), s_CreateSeqLocMapper(), s_GCSeqsToSeqLocs(), s_GetProteinName(), s_GetUngapLoc(), s_RemapChildToParent(), s_Seq_align_Seq_loc(), CPsiBlastTestFixture::s_SetupSubject(), s_SetupWithMultipleQueriesAndSubjects(), BlastEngineTestFixture::setupQueryAndSubject(), setupQueryInfoForOffsetTranslation(), CSeqTableLocColumns::UpdateSeq_loc(), UpgradeSeqLocId(), CFastaOstream::Write(), CFastaOstreamComp::Write(), CPromote::x_AddProtFeature(), CAutogeneratedCleanup::x_BasicCleanupSeqFeat_location_ETC(), CAutogeneratedCleanup::x_BasicCleanupSeqLoc(), CNgAlignApp::x_CreateSequenceSet(), CBlastSampleApplication::x_CreateSSeqLoc(), CFeatGlyph::x_DrawRuler(), CFlatGatherer::x_GatherFeatures(), CFlatGatherer::x_GatherFeaturesIdx(), CSplignApp::x_GetBl2SeqHits(), CReportEntry::x_GetCCoordinate(), CAsn2FlatApp::x_GetLocation(), CFlatFileGenerator::x_GetLocation(), CDeflineGenerator::x_GetLongestProtein(), x_GetSeqLocFromStream(), CFastaExportJob::x_GetWholeLoc(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), CSplitQueryTestFixture::x_PrepareBlastQueryStructures(), x_PushRange(), CSeq_loc_Mapper_Base::x_PushSourceRange(), CBlastFormatterApp::x_QueryBioseqToSSeqLoc(), CBlastFormatterVdbApp::x_QueryBioseqToSSeqLoc(), CSeq_loc_Mapper_Base::x_RangeToSeq_loc(), CTblastnApp::x_RunMTBySplitDB(), CBLASTToolManager::x_SelectCompatibleInputObjects(), CBioseqContext::x_SetLocation(), CReportEntry::x_SetMrnaMapper(), CPsiBl2SeqTestFixture::x_SetupSubject(), CSeqTest::x_TestAllCdregions(), CVectorTrimPanel::x_TrimSelected(), CGff3Writer::x_WriteSeqAnnotHandle(), and xgbloc_ver().

◆ SetWhole() [2/2]

CSeq_loc::TWhole & CSeq_loc::SetWhole ( void  )
inline

Definition at line 982 of file Seq_loc.hpp.

Referenced by CSeq_loc::Assign(), CSeq_loc::CSeq_loc(), and CSeq_loc::SetId().

◆ SSeq_loc_CI_RangeInfo()

SSeq_loc_CI_RangeInfo::SSeq_loc_CI_RangeInfo ( void  )

Definition at line 1042 of file Seq_loc.cpp.

◆ StartNewEquiv()

void CSeq_loc_I::StartNewEquiv ( void  )
inline

Change equiv modification mode to add new equiv set for the next insert operation.

See also
SetEquivMode()

Definition at line 812 of file Seq_loc.hpp.

References CSeq_loc_I::eEquiv_new_equiv, and CSeq_loc_I::SetEquivMode().

◆ StartNewEquivPart()

void CSeq_loc_I::StartNewEquivPart ( void  )
inline

Change equiv modification mode to add new equiv part for the next insert operation.

See also
SetEquivMode()

Definition at line 819 of file Seq_loc.hpp.

References CSeq_loc_I::eEquiv_new_part, and CSeq_loc_I::SetEquivMode().

◆ StopEquiv()

void CSeq_loc_I::StopEquiv ( void  )
inline

Change equiv modification mode to normal behavior that will only update existing equiv sets.

See also
SetEquivMode()

Definition at line 826 of file Seq_loc.hpp.

References CSeq_loc_I::eEquiv_none, and CSeq_loc_I::SetEquivMode().

◆ Subtract()

CRef< CSeq_loc > CSeq_loc::Subtract ( const CSeq_loc other,
TOpFlags  flags,
ISynonymMapper syn_mapper,
ILengthGetter len_getter 
) const

◆ x_CalculateTotalRangeCheckId()

CSeq_loc::TRange CSeq_loc::x_CalculateTotalRangeCheckId ( const CSeq_id *&  id) const
private

◆ x_ChangeToMix()

void CSeq_loc::x_ChangeToMix ( const CSeq_loc other)
private

Definition at line 3741 of file Seq_loc.cpp.

References CSeq_loc_mix::AddSeqLoc(), CSeq_loc::ChangeToMix(), and CSeq_loc::SetMix().

Referenced by CSeq_loc::Add().

◆ x_ChangeToPackedInt() [1/2]

void CSeq_loc::x_ChangeToPackedInt ( const CSeq_interval other)
private

◆ x_ChangeToPackedInt() [2/2]

void CSeq_loc::x_ChangeToPackedInt ( const CSeq_loc other)
private

◆ x_ChangeToPackedPnt()

void CSeq_loc::x_ChangeToPackedPnt ( const CSeq_loc other)
private

◆ x_CheckId()

bool CSeq_loc::x_CheckId ( const CSeq_id *&  id,
bool  may_throw = true 
) const
private

◆ x_CheckValid()

void CSeq_loc_CI::x_CheckValid ( const char *  where) const
inlineprotected

◆ x_CheckValidForInsert()

void CSeq_loc_I::x_CheckValidForInsert ( const char *  where) const
inlineprotected

◆ x_CompareSingleId()

int CSeq_loc::x_CompareSingleId ( const CSeq_loc loc,
const CSeq_id id1,
const CSeq_id id2,
TCompareFlags  flags 
) const
private

Compare single-id locations, or throw an exception if any location is multi-id.

Definition at line 540 of file Seq_loc.cpp.

References CSeq_id::CompareOrdered(), eExtreme_Positional, CSeq_loc::GetStart(), CSeq_loc::GetStop(), INT_ID_TO, and NCBI_THROW.

Referenced by CSeq_loc::Compare().

◆ x_GetIteratorType() [1/2]

const char * CSeq_loc_CI::x_GetIteratorType ( void  ) const
protectedvirtual

Reimplemented in CSeq_loc_I.

Definition at line 2623 of file Seq_loc.cpp.

Referenced by CSeq_loc_CI::SetPos(), and CSeq_loc_CI::x_ThrowNotValid().

◆ x_GetIteratorType() [2/2]

const char * CSeq_loc_I::x_GetIteratorType ( void  ) const
protectedvirtual

Reimplemented from CSeq_loc_CI.

Definition at line 2685 of file Seq_loc.cpp.

◆ x_GetRangeInfo() [1/2]

SSeq_loc_CI_RangeInfo & CSeq_loc_I::x_GetRangeInfo ( void  )
protected

◆ x_GetRangeInfo() [2/2]

const SSeq_loc_CI_RangeInfo & CSeq_loc_CI::x_GetRangeInfo ( void  ) const
protected

◆ x_IsValid()

bool CSeq_loc_CI::x_IsValid ( void  ) const
protected

◆ x_IsValidForInsert()

bool CSeq_loc_I::x_IsValidForInsert ( void  ) const
protected

◆ x_SetSeq_id_Handle()

void CSeq_loc_I::x_SetSeq_id_Handle ( SSeq_loc_CI_RangeInfo info,
const CSeq_id_Handle id 
)
protected

◆ x_ThrowNotValid()

void CSeq_loc_CI::x_ThrowNotValid ( const char *  where) const
protected

◆ x_UpdateId()

bool CSeq_loc::x_UpdateId ( const CSeq_id *&  total_id,
const CSeq_id id,
bool  may_throw = true 
) const
private

◆ x_UpdateTotalRange()

CSeq_loc::TRange CSeq_loc::x_UpdateTotalRange ( void  ) const
private

◆ ~CSeq_loc()

CSeq_loc::~CSeq_loc ( void  )
virtual

Definition at line 186 of file Seq_loc.cpp.

◆ ~CSeq_loc_CI()

CSeq_loc_CI::~CSeq_loc_CI ( void  )
virtual

destructor

Definition at line 2457 of file Seq_loc.cpp.

◆ ~CSeq_loc_I()

CSeq_loc_I::~CSeq_loc_I ( void  )
virtual

destructor

Definition at line 2674 of file Seq_loc.cpp.

◆ ~ILengthGetter()

virtual ILengthGetter::~ILengthGetter ( void  )
inlinevirtual

Definition at line 423 of file Seq_loc.hpp.

◆ ~ISubLocFilter()

virtual CSeq_loc::ISubLocFilter::~ISubLocFilter ( )
inlinevirtual

Definition at line 263 of file Seq_loc.hpp.

◆ ~ISynonymMapper()

virtual ISynonymMapper::~ISynonymMapper ( void  )
inlinevirtual

Definition at line 411 of file Seq_loc.hpp.

◆ ~SSeq_loc_CI_RangeInfo()

SSeq_loc_CI_RangeInfo::~SSeq_loc_CI_RangeInfo ( void  )

Definition at line 1049 of file Seq_loc.cpp.

Variable Documentation

◆ m_Fuzz

pair<CConstRef<CInt_fuzz>, CConstRef<CInt_fuzz> > SSeq_loc_CI_RangeInfo::m_Fuzz

◆ m_Id

CConstRef<CSeq_id> SSeq_loc_CI_RangeInfo::m_Id

Definition at line 439 of file Seq_loc.hpp.

Referenced by CSeq_loc_CI::GetSeq_id().

◆ m_IdCache

atomic<const CSeq_id*> CSeq_loc::m_IdCache
mutableprivate

◆ m_IdHandle

CSeq_id_Handle SSeq_loc_CI_RangeInfo::m_IdHandle

◆ m_Impl

CRef<CSeq_loc_CI_Impl> CSeq_loc_CI::m_Impl
protected

◆ m_Index

size_t CSeq_loc_CI::m_Index
protected

◆ m_IsSetStrand

bool SSeq_loc_CI_RangeInfo::m_IsSetStrand

◆ m_Loc

CConstRef<CSeq_loc> SSeq_loc_CI_RangeInfo::m_Loc

Definition at line 443 of file Seq_loc.hpp.

Referenced by CSeq_loc_CI::GetEmbeddingSeq_loc(), and CSeq_loc_CI_Impl::MakeLoc().

◆ m_Range

TRange SSeq_loc_CI_RangeInfo::m_Range

◆ m_Strand

ENa_strand SSeq_loc_CI_RangeInfo::m_Strand

◆ m_TotalRangeCacheFrom

atomic<TSeqPos> CSeq_loc::m_TotalRangeCacheFrom
mutableprivate

◆ m_TotalRangeCacheToOpen

atomic<TSeqPos> CSeq_loc::m_TotalRangeCacheToOpen
mutableprivate

Definition at line 398 of file Seq_loc.hpp.

Referenced by CSeq_loc::GetTotalRange(), and CSeq_loc::x_UpdateTotalRange().

Modified on Sun Apr 21 03:41:29 2024 by modify_doxy.py rev. 669887