NCBI C++ ToolKit
Classes | Typedefs | Enumerations | Enumerator | Functions | Variables | Friends
Sequence Representations
+ Collaboration diagram for Sequence Representations:

Classes

class  CSeqMap
 CSeqMap –. More...
 
class  CSeqMap::CSegment
 
class  CSeqMap::SPosLessSegment
 
class  CSeqMapSwitchPoint
 
class  CSeqVector
 CSeqVector –. More...
 
class  CNcbi2naRandomizer
 CNcbi2naRandomizer –. More...
 

Typedefs

typedef TSeqPos TSeqPosition
 
typedef TSeqPos TSeqLength
 
typedef CSeq_inst::TMol CSeqMap::TMol
 
typedef CSeqMap_CI CSeqMap::const_iterator
 
typedef int CSeqMap::TFlags
 
typedef vector< CSegmentCSeqMap::TSegments
 
typedef Uint1 CSeqMap::THasSegments
 
typedef bool CSeqMap::TChanged
 
typedef pair< TSeqPos, TSeqPosCSeqMapSwitchPoint::TInsertDelete
 
typedef map< TSeqPos, TInsertDeleteCSeqMapSwitchPoint::TDifferences
 
typedef vector< CRef< CSeqMapSwitchPoint > > TSeqMapSwitchPoints
 
typedef list< CRef< CSeq_align > > TSeqMapSwitchAligns
 
typedef CBioseq_Handle::EVectorCoding CSeqVector::EVectorCoding
 
typedef CSeqVector_CI CSeqVector::const_iterator
 
typedef CMutex CSeqVector::TMutex
 
typedef TMutex::TWriteLockGuard CSeqVector::TMutexGuard
 
typedef CSeq_inst::TMol CSeqVector::TMol
 

Enumerations

enum  CSeqMap::ESegmentType {
  CSeqMap::eSeqGap , CSeqMap::eSeqData , CSeqMap::eSeqSubMap , CSeqMap::eSeqRef ,
  CSeqMap::eSeqEnd , CSeqMap::eSeqChunk , CSeqMap::eSeqLiteral
}
 
enum  CSeqMap::EFlags {
  CSeqMap::fFindData = (1<<0) , CSeqMap::fFindGap = (1<<1) , CSeqMap::fFindLeafRef = (1<<2) , CSeqMap::fFindInnerRef = (1<<3) ,
  CSeqMap::fFindExactLevel = (1<<4) , CSeqMap::fIgnoreUnresolved = (1<<5) , CSeqMap::fByFeaturePolicy = (1<<6) , CSeqMap::fBySequenceClass = (1<<7) ,
  CSeqMap::fFindRef = (fFindLeafRef | fFindInnerRef) , CSeqMap::fFindAny = fFindData | fFindGap | fFindRef , CSeqMap::fFindAnyLeaf = fFindData | fFindGap | fFindLeafRef , CSeqMap::fDefaultFlags = fFindAnyLeaf
}
 Segment type flags. More...
 
enum  { CNcbi2naRandomizer::kRandomizerPosMask = 0x3f , CNcbi2naRandomizer::kRandomDataSize = kRandomizerPosMask + 1 , CNcbi2naRandomizer::kRandomValue = 16 }
 

Functions

 CSeqMap::~CSeqMap (void)
 
size_t CSeqMap::GetSegmentsCount (void) const
 
TSeqPos CSeqMap::GetLength (CScope *scope) const
 
TMol CSeqMap::GetMol (void) const
 
const_iterator CSeqMap::begin (CScope *scope) const
 STL style methods. More...
 
const_iterator CSeqMap::end (CScope *scope) const
 
CSeqMap_CI CSeqMap::Begin (CScope *scope) const
 NCBI style methods. More...
 
CSeqMap_CI CSeqMap::End (CScope *scope) const
 
CSeqMap_CI CSeqMap::FindSegment (TSeqPos pos, CScope *scope) const
 Find segment containing the position. More...
 
CSeqMap_CI CSeqMap::BeginResolved (CScope *scope) const
 
CSeqMap_CI CSeqMap::BeginResolved (CScope *scope, const SSeqMapSelector &selector) const
 
CSeqMap_CI CSeqMap::EndResolved (CScope *scope) const
 
CSeqMap_CI CSeqMap::EndResolved (CScope *scope, const SSeqMapSelector &selector) const
 
CSeqMap_CI CSeqMap::FindResolved (CScope *scope, TSeqPos pos, const SSeqMapSelector &selector) const
 
CSeqMap_CI CSeqMap::ResolvedRangeIterator (CScope *scope, TSeqPos from, TSeqPos length, ENa_strand strand=eNa_strand_plus, size_t maxResolve=size_t(-1), TFlags flags=fDefaultFlags) const
 Iterate segments in the range with specified strand coordinates. More...
 
bool CSeqMap::HasSegmentOfType (ESegmentType type) const
 
size_t CSeqMap::CountSegmentsOfType (ESegmentType type) const
 
bool CSeqMap::CanResolveRange (CScope *scope, const SSeqMapSelector &sel) const
 
bool CSeqMap::CanResolveRange (CScope *scope, TSeqPos from, TSeqPos length, ENa_strand strand=eNa_strand_plus, size_t maxResolve=size_t(-1), TFlags flags=fDefaultFlags) const
 
static CRef< CSeqMapCSeqMap::CreateSeqMapForBioseq (const CBioseq &seq)
 
static CRef< CSeqMapCSeqMap::CreateSeqMapForSeq_loc (const CSeq_loc &loc, CScope *scope)
 
static CConstRef< CSeqMapCSeqMap::GetSeqMapForSeq_loc (const CSeq_loc &loc, CScope *scope)
 
CRef< CSeqMapCSeqMap::CloneFor (const CBioseq &seq) const
 
 CSeqMap::CSeqMap (const CSeqMap &sm)
 
void CSeqMap::SetRegionInChunk (CTSE_Chunk_Info &chunk, TSeqPos pos, TSeqPos length)
 
void CSeqMap::LoadSeq_data (TSeqPos pos, TSeqPos len, const CSeq_data &data)
 
void CSeqMap::SetSegmentGap (const CSeqMap_CI &seg, TSeqPos length)
 
void CSeqMap::SetSegmentGap (const CSeqMap_CI &seg, TSeqPos length, CSeq_data &gap_data)
 
void CSeqMap::SetSegmentData (const CSeqMap_CI &seg, TSeqPos length, CSeq_data &data)
 
void CSeqMap::SetSegmentRef (const CSeqMap_CI &seg, TSeqPos length, const CSeq_id_Handle &ref_id, TSeqPos ref_pos, bool ref_minus_strand)
 
CSeqMap_CI CSeqMap::InsertSegmentGap (const CSeqMap_CI &seg, TSeqPos length)
 Insert new gap into sequence map. More...
 
CSeqMap_CI CSeqMap::RemoveSegment (const CSeqMap_CI &seg)
 Delete segment from sequence map. More...
 
void CSeqMap::SetRepr (CSeq_inst::TRepr repr)
 
void CSeqMap::ResetRepr (void)
 
void CSeqMap::SetMol (CSeq_inst::TMol mol)
 
void CSeqMap::ResetMol (void)
 
bool CSeqMap::HasZeroGapAt (TSeqPos pos, CScope *scope=0) const
 Returns true if there is zero-length gap at position. More...
 
 CSeqMap::CSegment::CSegment (ESegmentType seg_type=eSeqEnd, TSeqPos length=kInvalidSeqPos, bool unknown_len=false)
 
 CSeqMap::CSegment::CSegment (const CSegment &seg)
 
CSegmentCSeqMap::CSegment::operator= (const CSegment &seg)
 
bool CSeqMap::CSegment::IsSetData (void) const
 
bool CSeqMap::SPosLessSegment::operator() (TSeqPos pos, const CSegment &seg)
 
bool CSeqMap::SPosLessSegment::operator() (const CSegment &seg, TSeqPos pos)
 
bool CSeqMap::SPosLessSegment::operator() (const CSegment &seg1, const CSegment &seg2)
 
 CSeqMap::CSeqMap (CSeqMap *parent, size_t index)
 
 CSeqMap::CSeqMap (void)
 
 CSeqMap::CSeqMap (const CSeq_loc &ref)
 
 CSeqMap::CSeqMap (TSeqPos len)
 
 CSeqMap::CSeqMap (const CSeq_inst &inst)
 
void CSeqMap::x_AddEnd (void)
 
void CSeqMap::x_AddSegment (ESegmentType type, TSeqPos len, bool unknown_len=false)
 
void CSeqMap::x_AddSegment (ESegmentType type, TSeqPos len, const CObject *object)
 
void CSeqMap::x_AddSegment (ESegmentType type, const CObject *object, TSeqPos refPos, TSeqPos len, ENa_strand strand=eNa_strand_plus)
 
void CSeqMap::x_AddGap (TSeqPos len, bool unknown_len)
 
void CSeqMap::x_AddGap (TSeqPos len, bool unknown_len, const CSeq_data &gap_data)
 
void CSeqMap::x_AddGap (TSeqPos len, bool unknown_len, const CSeq_literal &gap_data)
 
void CSeqMap::x_Add (CSeqMap *submap)
 
void CSeqMap::x_Add (const CSeq_data &data, TSeqPos len)
 
void CSeqMap::x_Add (const CPacked_seqint &seq)
 
void CSeqMap::x_Add (const CPacked_seqpnt &seq)
 
void CSeqMap::x_Add (const CSeq_loc_mix &seq)
 
void CSeqMap::x_Add (const CSeq_loc_equiv &seq)
 
void CSeqMap::x_Add (const CSeq_literal &seq)
 
void CSeqMap::x_Add (const CDelta_seq &seq)
 
void CSeqMap::x_Add (const CSeq_loc &seq)
 
void CSeqMap::x_Add (const CSeq_id &seq)
 
void CSeqMap::x_Add (const CSeq_point &seq)
 
void CSeqMap::x_Add (const CSeq_interval &seq)
 
void CSeqMap::x_AddUnloadedSeq_data (TSeqPos len)
 
void CSeqMap::ResolveAll (void) const
 
CSeqMapCSeqMap::operator= (const CSeqMap &)
 
size_t CSeqMap::x_GetLastEndSegmentIndex (void) const
 
size_t CSeqMap::x_GetFirstEndSegmentIndex (void) const
 
const CSegmentCSeqMap::x_GetSegment (size_t index) const
 
void CSeqMap::x_GetSegmentException (size_t index) const
 
CSegmentCSeqMap::x_SetSegment (size_t index)
 
size_t CSeqMap::x_FindSegment (TSeqPos position, CScope *scope) const
 
TSeqPos CSeqMap::x_GetSegmentLength (size_t index, CScope *scope) const
 
TSeqPos CSeqMap::x_GetSegmentPosition (size_t index, CScope *scope) const
 
TSeqPos CSeqMap::x_GetSegmentEndPosition (size_t index, CScope *scope) const
 
TSeqPos CSeqMap::x_ResolveSegmentLength (size_t index, CScope *scope) const
 
TSeqPos CSeqMap::x_ResolveSegmentPosition (size_t index, CScope *scope) const
 
void CSeqMap::x_StartEditing (void)
 
bool CSeqMap::x_IsChanged (void) const
 
void CSeqMap::x_SetChanged (size_t index)
 
bool CSeqMap::x_UpdateSeq_inst (CSeq_inst &inst)
 
bool CSeqMap::x_DoUpdateSeq_inst (CSeq_inst &inst)
 
const CBioseq_InfoCSeqMap::x_GetBioseqInfo (const CSegment &seg, CScope *scope) const
 
CConstRef< CSeqMapCSeqMap::x_GetSubSeqMap (const CSegment &seg, CScope *scope, bool resolveExternal=false) const
 
const CSeq_dataCSeqMap::x_GetSeq_data (const CSegment &seg) const
 
CConstRef< CSeq_literalCSeqMap::x_GetSeq_literal (const CSegment &seg) const
 
const CSeq_idCSeqMap::x_GetRefSeqid (const CSegment &seg) const
 
TSeqPos CSeqMap::x_GetRefPosition (const CSegment &seg) const
 
bool CSeqMap::x_GetRefMinusStrand (const CSegment &seg) const
 
void CSeqMap::x_LoadObject (const CSegment &seg) const
 
CRef< CTSE_Chunk_InfoCSeqMap::x_GetChunkToLoad (const CSegment &seg) const
 
const CObjectCSeqMap::x_GetObject (const CSegment &seg) const
 
void CSeqMap::x_SetObject (CSegment &seg, const CObject &obj)
 
void CSeqMap::x_SetChunk (CSegment &seg, CTSE_Chunk_Info &chunk)
 
void CSeqMap::x_SetSeq_data (size_t index, CSeq_data &data)
 
void CSeqMap::x_SetSubSeqMap (size_t index, CSeqMap_Delta_seqs *subMap)
 
void CSeqMap::x_SetSegmentGap (size_t index, TSeqPos length, CSeq_data *gap_data=0)
 
void CSeqMap::x_SetSegmentData (size_t index, TSeqPos length, CSeq_data &data)
 
void CSeqMap::x_SetSegmentRef (size_t index, TSeqPos length, const CSeq_id &ref_id, TSeqPos ref_pos, bool ref_minus_strand)
 
int CSeqMap::x_GetSequenceClass (void) const
 
TInsertDelete CSeqMapSwitchPoint::GetDifferences (TSeqPos new_pos, TSeqPos add=0) const
 
int CSeqMapSwitchPoint::GetLengthDifference (TSeqPos new_pos, TSeqPos add=0) const
 
int CSeqMapSwitchPoint::GetSequenceDifference (TSeqPos new_pos, TSeqPos add=0) const
 
TSeqPos CSeqMapSwitchPoint::GetInsert (TSeqPos pos) const
 
TSeqPos CSeqMapSwitchPoint::GetLeftInPlaceInsert (void) const
 
TSeqPos CSeqMapSwitchPoint::GetRightInPlaceInsert (void) const
 
void CSeqMapSwitchPoint::ChangeSwitchPoint (TSeqPos pos, TSeqPos add)
 
void CSeqMapSwitchPoint::InsertInPlace (TSeqPos add_left, TSeqPos add_right)
 
bool CSeqMapSwitchPoint::operator< (const CSeqMapSwitchPoint &p) const
 
CRef< CSeqMapSwitchPointGetSwitchPoint (const CBioseq_Handle &seq, const CSeq_align &align)
 
TSeqMapSwitchPoints GetAllSwitchPoints (const CBioseq_Handle &seq, const TSeqMapSwitchAligns &aligns)
 
TSeqMapSwitchPoints GetAllSwitchPoints (const CBioseq_Handle &seq)
 
 CSeqVector::CSeqVector (void)
 
 CSeqVector::CSeqVector (const CBioseq_Handle &bioseq, EVectorCoding coding=CBioseq_Handle::eCoding_Ncbi, ENa_strand strand=eNa_strand_unknown)
 
 CSeqVector::CSeqVector (const CSeqMap &seqMap, CScope &scope, EVectorCoding coding=CBioseq_Handle::eCoding_Ncbi, ENa_strand strand=eNa_strand_unknown)
 
 CSeqVector::CSeqVector (const CSeqMap &seqMap, const CTSE_Handle &top_tse, EVectorCoding coding=CBioseq_Handle::eCoding_Ncbi, ENa_strand strand=eNa_strand_unknown)
 
 CSeqVector::CSeqVector (const CSeq_loc &loc, CScope &scope, EVectorCoding coding=CBioseq_Handle::eCoding_Ncbi, ENa_strand strand=eNa_strand_unknown)
 
 CSeqVector::CSeqVector (const CSeq_loc &loc, const CTSE_Handle &top_tse, EVectorCoding coding=CBioseq_Handle::eCoding_Ncbi, ENa_strand strand=eNa_strand_unknown)
 
 CSeqVector::CSeqVector (const CBioseq &bioseq, CScope *scope=0, EVectorCoding coding=CBioseq_Handle::eCoding_Ncbi, ENa_strand strand=eNa_strand_unknown)
 
 CSeqVector::CSeqVector (const CSeqVector &vec)
 
virtual CSeqVector::~CSeqVector (void)
 
CSeqVectorCSeqVector::operator= (const CSeqVector &vec)
 
bool CSeqVector::empty (void) const
 
TSeqPos CSeqVector::size (void) const
 
TMutexCSeqVector::GetMutex (void) const
 Get mutex for a few non-MT-safe methods to make them MT-safe at a cost of performance. More...
 
TResidue CSeqVector::operator[] (TSeqPos pos) const
 0-based array of residues Note: this method is not MT-safe, do not call it in parallel with other, even MT-safe method. More...
 
bool CSeqVector::IsInGap (TSeqPos pos) const
 true if sequence at 0-based position 'pos' has gap Note: this method is not MT-safe, do not call it in parallel with other, even MT-safe method. More...
 
TSeqPos CSeqVector::GetGapSizeForward (TSeqPos pos) const
 returns number of gap symbols ahead including base at position 'pos' returns 0 if the position is not in gap More...
 
CConstRef< CSeq_literalCSeqVector::GetGapSeq_literal (TSeqPos pos) const
 returns gap Seq-literal object ref returns null if it's not a gap or an unspecified gap More...
 
bool CSeqVector::CanGetRange (TSeqPos start, TSeqPos stop) const
 Check if the sequence data is available for the interval [start, stop). More...
 
bool CSeqVector::CanGetRange (const const_iterator &start, const const_iterator &stop) const
 
void CSeqVector::GetSeqData (TSeqPos start, TSeqPos stop, string &buffer) const
 Fill the buffer string with the sequence data for the interval [start, stop). More...
 
void CSeqVector::GetSeqData (const const_iterator &start, const const_iterator &stop, string &buffer) const
 
void CSeqVector::GetPackedSeqData (string &buffer, TSeqPos start=0, TSeqPos stop=kInvalidSeqPos)
 
TMol CSeqVector::GetSequenceType (void) const
 
bool CSeqVector::IsProtein (void) const
 
bool CSeqVector::IsNucleotide (void) const
 
CScopeCSeqVector::GetScope (void) const
 
const CSeqMapCSeqVector::GetSeqMap (void) const
 
ENa_strand CSeqVector::GetStrand (void) const
 
void CSeqVector::SetStrand (ENa_strand strand)
 
TCoding CSeqVector::GetCoding (void) const
 Target sequence coding. More...
 
void CSeqVector::SetCoding (TCoding coding)
 
void CSeqVector::SetIupacCoding (void)
 Set coding to either Iupacaa or Iupacna depending on molecule type. More...
 
void CSeqVector::SetNcbiCoding (void)
 Set coding to either Ncbi8aa or Ncbi8na depending on molecule type. More...
 
void CSeqVector::SetCoding (EVectorCoding coding)
 Set coding to either Iupac or Ncbi8xx. More...
 
TResidue CSeqVector::GetGapChar (ECaseConversion case_cvt=eCaseConversion_none) const
 Return gap symbol corresponding to the selected coding. More...
 
const_iterator CSeqVector::begin (void) const
 
const_iterator CSeqVector::end (void) const
 
void CSeqVector::SetRandomizeAmbiguities (void)
 Randomization of ambiguities and gaps in ncbi2na coding. More...
 
void CSeqVector::SetRandomizeAmbiguities (Uint4 seed)
 
void CSeqVector::SetRandomizeAmbiguities (CRandom &random_gen)
 
void CSeqVector::SetRandomizeAmbiguities (CRef< INcbi2naRandomizer > randomizer)
 
void CSeqVector::SetNoAmbiguities (void)
 
void CSeqVector::x_InitSequenceType (void)
 
CSeqVector_CICSeqVector::x_GetIterator (TSeqPos pos) const
 
CSeqVector_CICSeqVector::x_CreateIterator (TSeqPos pos) const
 
void CSeqVector::x_ResetIterator (void) const
 
void CSeqVector::x_InitRandomizer (CRandom &random_gen)
 
void CSeqVector::x_GetPacked8SeqData (string &dst_str, TSeqPos src_pos, TSeqPos src_end)
 
void CSeqVector::x_GetPacked4naSeqData (string &dst_str, TSeqPos src_pos, TSeqPos src_end)
 
void CSeqVector::x_GetPacked2naSeqData (string &dst_str, TSeqPos src_pos, TSeqPos src_end)
 
 CNcbi2naRandomizer::CNcbi2naRandomizer (CRandom &gen)
 
 CNcbi2naRandomizer::~CNcbi2naRandomizer (void)
 
void CNcbi2naRandomizer::RandomizeData (char *buffer, size_t count, TSeqPos pos)
 Convert count unpacked bases in buffer 4na -> 2na with randomization. More...
 

Variables

atomic< TSeqPosCSeqMap::CSegment::m_Position
 
atomic< TSeqPosCSeqMap::CSegment::m_Length
 
bool CSeqMap::CSegment::m_UnknownLength
 
char CSeqMap::CSegment::m_SegType
 
char CSeqMap::CSegment::m_ObjType
 
bool CSeqMap::CSegment::m_RefMinusStrand
 
TSeqPos CSeqMap::CSegment::m_RefPosition
 
CConstRef< CObjectCSeqMap::CSegment::m_RefObject
 
CBioseq_InfoCSeqMap::m_Bioseq
 
vector< CSegmentCSeqMap::m_Segments
 
atomic< size_t > CSeqMap::m_Resolved
 
CRef< CObjectCSeqMap::m_Delta
 
TMol CSeqMap::m_Mol
 
atomic< THasSegmentsCSeqMap::m_HasSegments
 
TChanged CSeqMap::m_Changed
 
atomic< TSeqPosCSeqMap::m_SeqLength
 
CMutex CSeqMap::m_SeqMap_Mtx
 
CBioseq_Handle CSeqMapSwitchPoint::m_Master
 
TSeqPos CSeqMapSwitchPoint::m_MasterPos
 
CConstRef< CSeq_alignCSeqMapSwitchPoint::m_FirstAlign
 
CSeq_id_Handle CSeqMapSwitchPoint::m_LeftId
 
TSeqPos CSeqMapSwitchPoint::m_LeftPos
 
bool CSeqMapSwitchPoint::m_LeftMinusStrand
 
CSeq_id_Handle CSeqMapSwitchPoint::m_RightId
 
TSeqPos CSeqMapSwitchPoint::m_RightPos
 
bool CSeqMapSwitchPoint::m_RightMinusStrand
 
CRange< TSeqPosCSeqMapSwitchPoint::m_MasterRange
 
CRange< TSeqPosCSeqMapSwitchPoint::m_ExactMasterRange
 
TDifferences CSeqMapSwitchPoint::m_LeftDifferences
 
TDifferences CSeqMapSwitchPoint::m_RightDifferences
 
CHeapScope CSeqVector::m_Scope
 
CConstRef< CSeqMapCSeqVector::m_SeqMap
 
CTSE_Handle CSeqVector::m_TSE
 
TSeqPos CSeqVector::m_Size
 
TMol CSeqVector::m_Mol
 
ENa_strand CSeqVector::m_Strand
 
TCoding CSeqVector::m_Coding
 
CRef< INcbi2naRandomizerCSeqVector::m_Randomizer
 
TMutex CSeqVector::m_IteratorMutex
 
AutoPtr< CSeqVector_CICSeqVector::m_Iterator
 
char CNcbi2naRandomizer::m_FixedTable [16]
 
char CNcbi2naRandomizer::m_RandomTable [16][kRandomDataSize]
 

Friends

class CSeqMap::CSegment
 
class CSeqMap::SPosLessSegment
 
class CSeqMap::CSeqMap_SeqPoss
 
class CSeqMap::CBioseq_Info
 
class CSeqMap::CSeqMap_CI
 
class CSeqMap::CSeqMap_CI_SegmentInfo
 
class CSeqVector::CBioseq_Handle
 
class CSeqVector::CSeqVector_CI
 

Detailed Description

Typedef Documentation

◆ const_iterator [1/2]

Definition at line 107 of file seq_map.hpp.

◆ const_iterator [2/2]

Definition at line 68 of file seq_vector.hpp.

◆ EVectorCoding

Definition at line 67 of file seq_vector.hpp.

◆ TChanged

typedef bool CSeqMap::TChanged
protected

Definition at line 400 of file seq_map.hpp.

◆ TDifferences

Definition at line 89 of file seq_map_switch.hpp.

◆ TFlags

Definition at line 142 of file seq_map.hpp.

◆ THasSegments

typedef Uint1 CSeqMap::THasSegments
protected

Definition at line 397 of file seq_map.hpp.

◆ TInsertDelete

Definition at line 87 of file seq_map_switch.hpp.

◆ TMol [1/2]

Definition at line 106 of file seq_map.hpp.

◆ TMol [2/2]

Definition at line 141 of file seq_vector.hpp.

◆ TMutex

Definition at line 69 of file seq_vector.hpp.

◆ TMutexGuard

Definition at line 70 of file seq_vector.hpp.

◆ TSegments

typedef vector<CSegment> CSeqMap::TSegments
protected

Definition at line 382 of file seq_map.hpp.

◆ TSeqLength

Definition at line 74 of file seq_map.hpp.

◆ TSeqMapSwitchAligns

Definition at line 129 of file seq_map_switch.hpp.

◆ TSeqMapSwitchPoints

Definition at line 128 of file seq_map_switch.hpp.

◆ TSeqPosition

Definition at line 73 of file seq_map.hpp.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
private
Enumerator
kRandomizerPosMask 
kRandomDataSize 
kRandomValue 

Definition at line 230 of file seq_vector.hpp.

◆ EFlags

Segment type flags.

Enumerator
fFindData 
fFindGap 
fFindLeafRef 
fFindInnerRef 
fFindExactLevel 
fIgnoreUnresolved 
fByFeaturePolicy 
fBySequenceClass 
fFindRef 
fFindAny 
fFindAnyLeaf 
fDefaultFlags 

Definition at line 128 of file seq_map.hpp.

◆ ESegmentType

Enumerator
eSeqGap 

gap

eSeqData 

real sequence data

eSeqSubMap 

sub seqmap

eSeqRef 

reference to Bioseq

eSeqEnd 
eSeqChunk 
eSeqLiteral 

used only in m_ObjType for gap segments

Definition at line 96 of file seq_map.hpp.

Function Documentation

◆ begin() [1/2]

CSeqMap::const_iterator CSeqMap::begin ( CScope scope) const

STL style methods.

Definition at line 818 of file seq_map.cpp.

References CSeqMap::Begin().

Referenced by GetAllSwitchPoints(), GetSwitchPoint(), and CDemoApp::Run().

◆ Begin()

CSeqMap_CI CSeqMap::Begin ( CScope scope) const

NCBI style methods.

Definition at line 799 of file seq_map.cpp.

References CSeqMap::CSeqMap_CI.

Referenced by CSeqMap::begin(), CTestSingleAln_All::RunTest(), and s_AgpWrite().

◆ begin() [2/2]

CSeqVector_CI CSeqVector::begin ( void  ) const
inline

◆ BeginResolved() [1/2]

CSeqMap_CI CSeqMap::BeginResolved ( CScope scope) const

◆ BeginResolved() [2/2]

CSeqMap_CI CSeqMap::BeginResolved ( CScope scope,
const SSeqMapSelector selector 
) const

Definition at line 830 of file seq_map.cpp.

References CSeqMap::CSeqMap_CI.

◆ CanGetRange() [1/2]

bool CSeqVector::CanGetRange ( const const_iterator start,
const const_iterator stop 
) const
inline

Definition at line 364 of file seq_vector.hpp.

References CSeqVector::CanGetRange(), and CSeqVector_CI::GetPos().

◆ CanGetRange() [2/2]

bool CSeqVector::CanGetRange ( TSeqPos  start,
TSeqPos  stop 
) const

◆ CanResolveRange() [1/2]

bool CSeqMap::CanResolveRange ( CScope scope,
const SSeqMapSelector sel 
) const

◆ CanResolveRange() [2/2]

bool CSeqMap::CanResolveRange ( CScope scope,
TSeqPos  from,
TSeqPos  length,
ENa_strand  strand = eNa_strand_plus,
size_t  maxResolve = size_t(-1),
TFlags  flags = fDefaultFlags 
) const

◆ ChangeSwitchPoint()

void CSeqMapSwitchPoint::ChangeSwitchPoint ( TSeqPos  pos,
TSeqPos  add 
)

◆ CloneFor()

CRef< CSeqMap > CSeqMap::CloneFor ( const CBioseq seq) const

Definition at line 1128 of file seq_map.cpp.

References CSeqMap::CreateSeqMapForBioseq().

◆ CNcbi2naRandomizer()

CNcbi2naRandomizer::CNcbi2naRandomizer ( CRandom gen)

◆ CountSegmentsOfType()

size_t CSeqMap::CountSegmentsOfType ( ESegmentType  type) const

Definition at line 895 of file seq_map.cpp.

References ITERATE, and CSeqMap::m_Segments.

◆ CreateSeqMapForBioseq()

CRef< CSeqMap > CSeqMap::CreateSeqMapForBioseq ( const CBioseq seq)
static

◆ CreateSeqMapForSeq_loc()

CRef< CSeqMap > CSeqMap::CreateSeqMapForSeq_loc ( const CSeq_loc loc,
CScope scope 
)
static

◆ CSegment() [1/2]

CSeqMap::CSegment::CSegment ( const CSegment seg)
inline

Definition at line 87 of file seq_map.cpp.

◆ CSegment() [2/2]

CSeqMap::CSegment::CSegment ( ESegmentType  seg_type = eSeqEnd,
TSeqPos  length = kInvalidSeqPos,
bool  unknown_len = false 
)
inline

Definition at line 72 of file seq_map.cpp.

◆ CSeqMap() [1/6]

CSeqMap::CSeqMap ( const CSeq_inst inst)
protected

◆ CSeqMap() [2/6]

CSeqMap::CSeqMap ( const CSeq_loc ref)
protected

Definition at line 141 of file seq_map.cpp.

References CSeqMap::x_Add(), and CSeqMap::x_AddEnd().

◆ CSeqMap() [3/6]

CSeqMap::CSeqMap ( const CSeqMap sm)

◆ CSeqMap() [4/6]

CSeqMap::CSeqMap ( CSeqMap parent,
size_t  index 
)
protected

Definition at line 130 of file seq_map.cpp.

◆ CSeqMap() [5/6]

CSeqMap::CSeqMap ( TSeqPos  len)
protected

Definition at line 168 of file seq_map.cpp.

References CSeqMap::x_AddEnd(), and CSeqMap::x_AddGap().

◆ CSeqMap() [6/6]

CSeqMap::CSeqMap ( void  )
protected

◆ CSeqVector() [1/8]

CSeqVector::CSeqVector ( const CBioseq bioseq,
CScope scope = 0,
EVectorCoding  coding = CBioseq_Handle::eCoding_Ncbi,
ENa_strand  strand = eNa_strand_unknown 
)

◆ CSeqVector() [2/8]

CSeqVector::CSeqVector ( const CBioseq_Handle bioseq,
EVectorCoding  coding = CBioseq_Handle::eCoding_Ncbi,
ENa_strand  strand = eNa_strand_unknown 
)
explicit

◆ CSeqVector() [3/8]

CSeqVector::CSeqVector ( const CSeq_loc loc,
const CTSE_Handle top_tse,
EVectorCoding  coding = CBioseq_Handle::eCoding_Ncbi,
ENa_strand  strand = eNa_strand_unknown 
)

◆ CSeqVector() [4/8]

CSeqVector::CSeqVector ( const CSeq_loc loc,
CScope scope,
EVectorCoding  coding = CBioseq_Handle::eCoding_Ncbi,
ENa_strand  strand = eNa_strand_unknown 
)

◆ CSeqVector() [5/8]

CSeqVector::CSeqVector ( const CSeqMap seqMap,
const CTSE_Handle top_tse,
EVectorCoding  coding = CBioseq_Handle::eCoding_Ncbi,
ENa_strand  strand = eNa_strand_unknown 
)

◆ CSeqVector() [6/8]

CSeqVector::CSeqVector ( const CSeqMap seqMap,
CScope scope,
EVectorCoding  coding = CBioseq_Handle::eCoding_Ncbi,
ENa_strand  strand = eNa_strand_unknown 
)

◆ CSeqVector() [7/8]

CSeqVector::CSeqVector ( const CSeqVector vec)

Definition at line 140 of file seq_vector.cpp.

◆ CSeqVector() [8/8]

CSeqVector::CSeqVector ( void  )

Definition at line 134 of file seq_vector.cpp.

◆ empty()

bool CSeqVector::empty ( void  ) const
inline

◆ end() [1/2]

CSeqMap::const_iterator CSeqMap::end ( CScope scope) const

Definition at line 824 of file seq_map.cpp.

References CSeqMap::End().

Referenced by CDemoApp::Run().

◆ End()

CSeqMap_CI CSeqMap::End ( CScope scope) const

Definition at line 805 of file seq_map.cpp.

References CSeqMap::CSeqMap_CI, and kMax_UInt.

Referenced by CSeqMap::end().

◆ end() [2/2]

CSeqVector_CI CSeqVector::end ( void  ) const
inline

◆ EndResolved() [1/2]

CSeqMap_CI CSeqMap::EndResolved ( CScope scope) const

Definition at line 845 of file seq_map.cpp.

References CSeqMap::CSeqMap_CI, kMax_UInt, and SSeqMapSelector::SetResolveCount().

◆ EndResolved() [2/2]

CSeqMap_CI CSeqMap::EndResolved ( CScope scope,
const SSeqMapSelector selector 
) const

Definition at line 853 of file seq_map.cpp.

References CSeqMap::CSeqMap_CI, and kMax_UInt.

◆ FindResolved()

CSeqMap_CI CSeqMap::FindResolved ( CScope scope,
TSeqPos  pos,
const SSeqMapSelector selector 
) const

Definition at line 860 of file seq_map.cpp.

References CSeqMap::CSeqMap_CI.

◆ FindSegment()

CSeqMap_CI CSeqMap::FindSegment ( TSeqPos  pos,
CScope scope 
) const

◆ GetAllSwitchPoints() [1/2]

TSeqMapSwitchPoints GetAllSwitchPoints ( const CBioseq_Handle seq)

◆ GetAllSwitchPoints() [2/2]

TSeqMapSwitchPoints GetAllSwitchPoints ( const CBioseq_Handle seq,
const TSeqMapSwitchAligns aligns 
)

◆ GetCoding()

CSeqVector::TCoding CSeqVector::GetCoding ( void  ) const
inline

◆ GetDifferences()

CSeqMapSwitchPoint::TInsertDelete CSeqMapSwitchPoint::GetDifferences ( TSeqPos  new_pos,
TSeqPos  add = 0 
) const

◆ GetGapChar()

CSeqVector::TResidue CSeqVector::GetGapChar ( ECaseConversion  case_cvt = eCaseConversion_none) const
inline

◆ GetGapSeq_literal()

CConstRef< CSeq_literal > CSeqVector::GetGapSeq_literal ( TSeqPos  pos) const

returns gap Seq-literal object ref returns null if it's not a gap or an unspecified gap

Definition at line 285 of file seq_vector.cpp.

References CSeqVector_CI::GetGapSeq_literal(), CSeqVector::GetMutex(), and CSeqVector::x_GetIterator().

Referenced by CDemoApp::Run().

◆ GetGapSizeForward()

TSeqPos CSeqVector::GetGapSizeForward ( TSeqPos  pos) const

returns number of gap symbols ahead including base at position 'pos' returns 0 if the position is not in gap

Definition at line 278 of file seq_vector.cpp.

References CSeqVector_CI::GetGapSizeForward(), CSeqVector::GetMutex(), and CSeqVector::x_GetIterator().

Referenced by CDemoApp::Run().

◆ GetInsert()

TSeqPos CSeqMapSwitchPoint::GetInsert ( TSeqPos  pos) const

◆ GetLeftInPlaceInsert()

TSeqPos CSeqMapSwitchPoint::GetLeftInPlaceInsert ( void  ) const

◆ GetLength()

TSeqPos CSeqMap::GetLength ( CScope scope) const
inline

◆ GetLengthDifference()

int CSeqMapSwitchPoint::GetLengthDifference ( TSeqPos  new_pos,
TSeqPos  add = 0 
) const
inline

◆ GetMol()

CSeqMap::TMol CSeqMap::GetMol ( void  ) const
inline

Definition at line 492 of file seq_map.hpp.

References CSeqMap::m_Mol.

Referenced by CSeqVector::CSeqVector(), and CDemoApp::Run().

◆ GetMutex()

CSeqVector::TMutex & CSeqVector::GetMutex ( void  ) const
inline

Get mutex for a few non-MT-safe methods to make them MT-safe at a cost of performance.

Definition at line 263 of file seq_vector.hpp.

References CSeqVector::m_IteratorMutex.

Referenced by CSeqVector::CanGetRange(), CSeqVector::GetGapSeq_literal(), CSeqVector::GetGapSizeForward(), CSeqVector::GetSeqData(), CSeqVector::operator=(), CDemoApp::Run(), and CSeqVector::x_ResetIterator().

◆ GetPackedSeqData()

void CSeqVector::GetPackedSeqData ( string buffer,
TSeqPos  start = 0,
TSeqPos  stop = kInvalidSeqPos 
)

◆ GetRightInPlaceInsert()

TSeqPos CSeqMapSwitchPoint::GetRightInPlaceInsert ( void  ) const

◆ GetScope()

CScope & CSeqVector::GetScope ( void  ) const
inline

◆ GetSegmentsCount()

size_t CSeqMap::GetSegmentsCount ( void  ) const
inline

Definition at line 426 of file seq_map.hpp.

References CSeqMap::m_Segments.

Referenced by s_AgpWrite(), and CSeqMap::x_DoUpdateSeq_inst().

◆ GetSeqData() [1/2]

void CSeqVector::GetSeqData ( const const_iterator start,
const const_iterator stop,
string buffer 
) const
inline

Definition at line 372 of file seq_vector.hpp.

References buffer, CSeqVector_CI::GetPos(), and CSeqVector::GetSeqData().

◆ GetSeqData() [2/2]

void CSeqVector::GetSeqData ( TSeqPos  start,
TSeqPos  stop,
string buffer 
) const

Fill the buffer string with the sequence data for the interval [start, stop).

Definition at line 304 of file seq_vector.cpp.

References buffer, CSeqVector::GetMutex(), CSeqVector_CI::GetSeqData(), and CSeqVector::x_GetIterator().

Referenced by CSAM_CIGAR_Formatter::AddRow(), CAdjustForConsensusSpliceSite::AdjustCDS(), CAdjustForConsensusSpliceSite::AdjustCDSEnds(), CExpandGaps::apply(), CSplignFormatter::AsAlignmentText(), CContigAssembly::BandedGlobalAlignment(), BOOST_AUTO_TEST_CASE(), CEquivRangeBuilder::CalcMatches(), CAlnVec::CalculateScore(), CPrefetchSeqData::Execute(), ExtendLocationForTranslExcept(), CFindRSites::Find(), variation::FindSSRLoc(), CInternalStopFinder::FindStartStopRanges(), COrf::FindStrongKozakUOrfs(), CFlatAnticodonQVal::Format(), g_ConvertDeltaToRawSeq(), CScore_SegPct::Get(), CScore_Entropy::Get(), NSnp::GetAlleles(), CAlnVec::GetAlnSeqString(), CSparseAlignment::GetAlnSeqString(), CDensegGraphicDataSource::GetAlnSeqString(), CSparseAln::GetAlnSeqString(), CProjectedMappingInfo::GetAnchorSequence(), CInternalStopFinder::GetCDSNucleotideSequence(), CAlnVec::GetColumnVector(), CAddGlobalCodeBreak::GetCommand(), CEditSequenceEnds::GetCommand(), CBlastSeqVectorOM::GetCompressedPlusStrand(), GetDNASequence(), CEditSequence::GetFeatures(), CSimpleOM::GetIupac(), CPostProcessUtils::GetLiteralAtLoc(), GetLoc(), GetProteinString(), CAlnVec::GetResidue(), CPaintAlignment::GetSegments(), CSeqVectorCache::GetSeq(), CSeqVector::GetSeqData(), GetSeqsStatus(), CAlnWriter::GetSeqString(), CGuiObjectInfoSeq_align::GetSeqString(), CDensegGraphicDataSource::GetSeqString(), CAlnVec::GetSeqString(), CAlnMixSeq::GetSeqString(), CSparseAln::GetSeqString(), CSparseAlignment::GetSeqString(), CBioseqIndex::GetSequence(), CFeatureIndex::GetSequence(), CEditingActionFeatTranslation::GetValue(), sequpd::HaveIdenticalResidues(), CAlignCollapser::CPartialString::Init(), IsExtendableLeft(), IsExtendableRight(), CGuiObjectInfoSeq_align::IsPolyA(), CSeqTextDataSourceInterval::LookForSpliceJunctions(), CRestoreRNAediting::OnApply(), CFlatFileSeqBlockIterator::operator*(), CTabularFormatter_MismatchPositions::Print(), RemoteFetchLongNucleotideBioseq(), CHitMatrixSeqGraph::Render(), RetrievePartsOfLargeChromosome(), CAlnVec::RetrieveSegmentSequences(), CDemoApp::Run(), CSampleObjmgrApplication::Run(), CTestSingleAln_All::RunTest(), CTestTranscript_PolyA::RunTest(), s_CdsStartCodon(), s_CdsStopCodon(), s_CodonVariation(), CUpdateSeq_Input::s_ConvertDeltaToRawBioseq(), s_CountAmbiguities(), s_DumpSequences_wRange(), CSequenceUpdater::s_ExtendOneEndOfSequence(), ApplyCDSFrame::s_FindMatchingFrame(), CMacroFunction_ApplyCDSFrame::s_FindMatchingFrame(), s_GetPolyA_genomic_priming(), s_GetQuerySequence(), s_GetSplicedSegIdentityMismatch(), s_OrfExtension(), s_RunBlast2NWSeq(), ScanForCpGs(), SeqLocToBioseq(), CSeqUtils::SeqLocToBioseq(), CIgBlastTabularInfo::SetAirrFormatData(), CMultAlign::SetGenomic(), CIgBlastTabularInfo::SetIgAnnotation(), CMacroFunction_ReplaceStopWithSelenocysteine::TheFunction(), CCDSTranslationPanel::TransferDataToWindow(), TrimStopsFromCompleteCDS(), UpdateSeqLength(), CAssemblyGapValidator::Validate(), CGapFeatValidator::Validate(), variation_ref::CHgvsParser::CContext::Validate(), CProductStringBuilder::x_AddExon(), CFeatureItem::x_AddFTableAnticodon(), CFeatureItem::x_AddQualsProt(), CFeatureItem::x_AddQualsRna(), CFeatureItem::x_AddQualTranslation(), CAdjustForConsensusSpliceSite::x_AdjustCDS3End(), CAdjustForConsensusSpliceSite::x_AdjustCDS5End(), variation::CVariationUtil::CCdregionIndex::x_CacheSeqData(), CSingleFeatValidator::x_CalculateLocationGaps(), CSGAlignStatJob::x_CollectAlignStats(), CFeatureGenerator::SImplementation::x_CollectMrnaSequence(), CWriteDB_Impl::x_CookSequence(), CFeatureGenerator::SImplementation::x_CreateCdsFeature(), CSGAlignStatJob::x_CreatePileUpGraphs(), CCreateNeedlemanWunschJob::x_CreateProjectItems(), CFeatureGenerator::SImplementation::x_CreateProteinBioseq(), CURLTooltipHandler::x_DisplayForwardStrandRegion(), CURLTooltipHandler::x_DisplayReverseStrandRegion(), CCpgSearchJob::x_DoSearch(), COrfSearchJob::x_DoSearch(), CCdsGlyph::x_Draw(), CAlignGlyph::x_DrawAlignRowSequence(), CCdsGlyph::x_DrawProjectedProtSeq(), CCdsGlyph::x_DrawProtSeqWithMapping(), CFeatGlyph::x_DrawRNAProductSequence(), CAlignGlyph::x_DrawUnalignedRowSequence(), CSFTranslationJob::x_Execute(), CSequenceUpdater::x_ExtendOneEnd(), CVariationUtilities::x_GetAlleleFromLoc(), CDensegGraphicDataSource::x_GetAlnStringFromCigar(), variation_ref::CVariationUtil::x_GetLiteralAtLoc(), variation::CVariationUtil::x_GetLiteralAtLoc(), CGuiObjectInfoSeq_feat::x_GetProductSequence(), CCrossPanelIR::x_GetSequence(), x_GetSequence(), CSequenceSearchJob::x_GetSequence(), CGuiObjectInfoSeq_feat::x_GetSplicedSeqTitle(), CPrimaryItem::x_GetStrForPrimary(), CPsiBlastInputData::x_GetSubjectSequence(), CCDSTranslationProblems::x_GetTranslExceptProblems(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), variation::CVariationUtil::x_InferNAfromAA(), CSingleFeatValidator::x_IsMostlyNs(), CSplign::x_LoadSequence(), variation_ref::CHgvsParser::x_LocToSeqStr(), variation::CHgvsParser::x_LocToSeqStr(), CSequenceUpdater::x_PatchSequence(), CAgpFastaComparator::x_Process(), CSplignApp::x_ProcessPair(), CPromote::x_PromoteRna(), variation_ref::CVariationUtil::x_ProtToPrecursor(), CUpdateSeq_Input::x_ReadAccession(), CSequenceTrack::x_RenderSequence(), CFastaSeqBlockItem::x_RenderText(), CSequenceUpdater::x_ReplaceSequence(), CInstancedAligner::x_RunMMGlobal(), CSequenceSearchJob::x_SearchSequence(), CVectorTrimPanel::x_SetSeqData(), CUnorderedSplitter::x_SplitSeqData(), CCdregionValidator::x_ValidateConflict(), CCdregionValidator::x_ValidateFeatComment(), CSingleFeatValidator::x_ValidateReplaceQual(), CSingleFeatValidator::x_ValidateRptUnitVal(), and CVcfWriter::x_WriteFeature().

◆ GetSeqMap()

const CSeqMap & CSeqVector::GetSeqMap ( void  ) const
inline

◆ GetSeqMapForSeq_loc()

CConstRef< CSeqMap > CSeqMap::GetSeqMapForSeq_loc ( const CSeq_loc loc,
CScope scope 
)
static

◆ GetSequenceDifference()

int CSeqMapSwitchPoint::GetSequenceDifference ( TSeqPos  new_pos,
TSeqPos  add = 0 
) const
inline

Definition at line 101 of file seq_map_switch.hpp.

References CSeqMapSwitchPoint::GetDifferences().

◆ GetSequenceType()

CSeqVector::TMol CSeqVector::GetSequenceType ( void  ) const
inline

◆ GetStrand()

ENa_strand CSeqVector::GetStrand ( void  ) const
inline

Definition at line 336 of file seq_vector.hpp.

References CSeqVector::m_Strand.

Referenced by CIntronValidator::Validate(), and CBlastSeqVectorOM::x_SetStrand().

◆ GetSwitchPoint()

CRef<CSeqMapSwitchPoint> GetSwitchPoint ( const CBioseq_Handle seq,
const CSeq_align align 
)

◆ HasSegmentOfType()

bool CSeqMap::HasSegmentOfType ( ESegmentType  type) const

◆ HasZeroGapAt()

bool CSeqMap::HasZeroGapAt ( TSeqPos  pos,
CScope scope = 0 
) const

◆ InsertInPlace()

void CSeqMapSwitchPoint::InsertInPlace ( TSeqPos  add_left,
TSeqPos  add_right 
)

◆ InsertSegmentGap()

CSeqMap_CI CSeqMap::InsertSegmentGap ( const CSeqMap_CI seg,
TSeqPos  length 
)

Insert new gap into sequence map.

Parameters
segIterator pointing to the place where new gap will be inserted. Becomes invalid after the call.
Returns
New iterator pointing to the new segment.

Definition at line 723 of file seq_map.cpp.

References _ASSERT, CSeqMap::CSeqMap_CI, CSeqMap::eSeqGap, CSeqMap::CSegment::m_Position, CSeqMap::m_Resolved, CSeqMap::m_Segments, CSeqMap::m_SeqMap_Mtx, CSeqMap_CI_SegmentInfo::x_GetIndex(), CSeqMap_CI::x_GetSegmentInfo(), CSeqMap::x_GetSegmentPosition(), CSeqMap_CI_SegmentInfo::x_GetSeqMap(), CSeqMap::x_SetChanged(), CSeqMap::x_SetSegment(), and CSeqMap::x_StartEditing().

Referenced by CSeqMap_I::InsertGap().

◆ IsInGap()

bool CSeqVector::IsInGap ( TSeqPos  pos) const
inline

◆ IsNucleotide()

bool CSeqVector::IsNucleotide ( void  ) const
inline

◆ IsProtein()

bool CSeqVector::IsProtein ( void  ) const
inline

◆ IsSetData()

bool CSeqMap::CSegment::IsSetData ( void  ) const
inline

◆ LoadSeq_data()

void CSeqMap::LoadSeq_data ( TSeqPos  pos,
TSeqPos  len,
const CSeq_data data 
)

◆ operator()() [1/3]

bool CSeqMap::SPosLessSegment::operator() ( const CSegment seg,
TSeqPos  pos 
)
inline

Definition at line 275 of file seq_map.hpp.

References CSeqMap::CSegment::m_Length, and CSeqMap::CSegment::m_Position.

◆ operator()() [2/3]

bool CSeqMap::SPosLessSegment::operator() ( const CSegment seg1,
const CSegment seg2 
)
inline

Definition at line 279 of file seq_map.hpp.

References CSeqMap::CSegment::m_Length, and CSeqMap::CSegment::m_Position.

◆ operator()() [3/3]

bool CSeqMap::SPosLessSegment::operator() ( TSeqPos  pos,
const CSegment seg 
)
inline

Definition at line 271 of file seq_map.hpp.

References CSeqMap::CSegment::m_Length, and CSeqMap::CSegment::m_Position.

◆ operator<()

bool CSeqMapSwitchPoint::operator< ( const CSeqMapSwitchPoint p) const
inline

◆ operator=() [1/3]

CSeqMap::CSegment & CSeqMap::CSegment::operator= ( const CSegment seg)
inline

◆ operator=() [2/3]

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

◆ operator=() [3/3]

CSeqVector & CSeqVector::operator= ( const CSeqVector vec)

◆ operator[]()

CSeqVector::TResidue CSeqVector::operator[] ( TSeqPos  pos) const
inline

0-based array of residues Note: this method is not MT-safe, do not call it in parallel with other, even MT-safe method.

It will be MT-safe to call this method after locking GetMutex().

Definition at line 270 of file seq_vector.hpp.

References CSeqVector::x_GetIterator().

◆ RandomizeData()

void CNcbi2naRandomizer::RandomizeData ( char *  buffer,
size_t  count,
TSeqPos  pos 
)
virtual

Convert count unpacked bases in buffer 4na -> 2na with randomization.

The argument pos will contain position of the buffer in the sequence, and can be used to give the same random base at the same ambiguous position.

Implements INcbi2naRandomizer.

Definition at line 112 of file seq_vector.cpp.

References data, CNcbi2naRandomizer::kRandomizerPosMask, CNcbi2naRandomizer::kRandomValue, CNcbi2naRandomizer::m_FixedTable, and CNcbi2naRandomizer::m_RandomTable.

◆ RemoveSegment()

CSeqMap_CI CSeqMap::RemoveSegment ( const CSeqMap_CI seg)

Delete segment from sequence map.

Parameters
segIterator pointing to the segment to be deleted. Becomes invalid after the call.
Returns
New iterator pointing to the next segment.

Definition at line 740 of file seq_map.cpp.

References _ASSERT, CSeqMap::CSeqMap_CI, CSeqMap::eSeqEnd, CSeqMap::CSegment::m_Position, CSeqMap::m_Resolved, CSeqMap::m_Segments, CSeqMap::CSegment::m_SegType, CSeqMap::m_SeqMap_Mtx, NCBI_THROW, CSeqMap_CI_SegmentInfo::x_GetIndex(), CSeqMap_CI::x_GetSegmentInfo(), CSeqMap::x_GetSegmentPosition(), CSeqMap_CI_SegmentInfo::x_GetSeqMap(), CSeqMap::x_SetChanged(), CSeqMap::x_SetSegment(), and CSeqMap::x_StartEditing().

Referenced by CSeqMap_I::Remove().

◆ ResetMol()

void CSeqMap::ResetMol ( void  )

Definition at line 1625 of file seq_map.cpp.

References CSeq_inst_Base::eMol_not_set, and CSeqMap::m_Mol.

Referenced by CBioseq_Info::ResetInst_Mol().

◆ ResetRepr()

void CSeqMap::ResetRepr ( void  )

Definition at line 1614 of file seq_map.cpp.

Referenced by CBioseq_Info::ResetInst_Repr().

◆ ResolveAll()

void CSeqMap::ResolveAll ( void  ) const
private

◆ ResolvedRangeIterator()

CSeqMap_CI CSeqMap::ResolvedRangeIterator ( CScope scope,
TSeqPos  from,
TSeqPos  length,
ENa_strand  strand = eNa_strand_plus,
size_t  maxResolve = size_t(-1),
TFlags  flags = fDefaultFlags 
) const

◆ SetCoding() [1/2]

void CSeqVector::SetCoding ( EVectorCoding  coding)

◆ SetCoding() [2/2]

void CSeqVector::SetCoding ( TCoding  coding)

Definition at line 1272 of file seq_vector.cpp.

References CSeqVector::m_Coding, and CSeqVector::x_ResetIterator().

Referenced by CAdjustForConsensusSpliceSite::AdjustCDS(), CAdjustForConsensusSpliceSite::AdjustCDSEnds(), CCDSTranslationProblems::CalculateTranslationProblems(), CSeqVector::CSeqVector(), CPrefetchSeqData::Execute(), CScore_SegPct::Get(), GetMismatches(), GetProteinString(), GetProteinWeight(), GetProteinWeights(), CBlastSequenceSource::GetSeq(), CBioseqIndex::GetSequence(), CFeatureIndex::GetSequence(), CEditingActionFeatTranslation::GetValue(), MakeSeqVectorForResidueCounting(), CRestoreRNAediting::OnApply(), CUpdateSeq_Input::s_ConvertDeltaToRawBioseq(), ApplyCDSFrame::s_FindMatchingFrame(), CMacroFunction_ApplyCDSFrame::s_FindMatchingFrame(), s_GetQuerySequence(), CBlastSeqVectorOM::SetCoding(), CSeqVector::SetCoding(), CSeqVector::SetIupacCoding(), CSeqVector::SetNcbiCoding(), CMacroFunction_ReplaceStopWithSelenocysteine::TheFunction(), CCDSTranslationPanel::TransferDataToWindow(), TrimStopsFromCompleteCDS(), CFastaOstream::Write(), CFastaOstream::WriteSequence(), CFeatureItem::x_AddQualsProt(), CFeatureItem::x_AddQualsRna(), CFeatureItem::x_AddQualTranslation(), CFeaturePropagator::x_CdsStopAtStopCodon(), CSequenceDataTester::x_CompareSequenceData(), COrfSearchJob::x_DoSearch(), CSequenceItem::x_GatherInfo(), CAlnVec::x_GetSeqVector(), CSparseAln::x_GetSeqVector(), CPsiBlastInputData::x_GetSubjectSequence(), CSequenceUpdater::x_ReplaceSequence(), CSequenceDataTester::x_TestSingleNucleotide_Remote(), CSequenceDataTester::x_TestSingleProtein_Remote(), CCdregionValidator::x_ValidateConflict(), and CValidError_graph::x_ValidateGraphValues().

◆ SetIupacCoding()

void CSeqVector::SetIupacCoding ( void  )

◆ SetMol()

void CSeqMap::SetMol ( CSeq_inst::TMol  mol)

Definition at line 1619 of file seq_map.cpp.

References CSeqMap::m_Mol.

Referenced by CBioseq_Info::SetInst_Mol().

◆ SetNcbiCoding()

void CSeqVector::SetNcbiCoding ( void  )

Set coding to either Ncbi8aa or Ncbi8na depending on molecule type.

Definition at line 1287 of file seq_vector.cpp.

References CSeq_data_Base::e_Ncbi4na, CSeq_data_Base::e_Ncbistdaa, CSeqVector::IsProtein(), and CSeqVector::SetCoding().

Referenced by CFindRSites::Find(), and CSeqVector::SetCoding().

◆ SetNoAmbiguities()

void CSeqVector::SetNoAmbiguities ( void  )

Definition at line 1345 of file seq_vector.cpp.

References CSeqVector::SetRandomizeAmbiguities().

◆ SetRandomizeAmbiguities() [1/4]

void CSeqVector::SetRandomizeAmbiguities ( CRandom random_gen)

Definition at line 1323 of file seq_vector.cpp.

References CSeqVector::x_InitRandomizer().

◆ SetRandomizeAmbiguities() [2/4]

void CSeqVector::SetRandomizeAmbiguities ( CRef< INcbi2naRandomizer randomizer)

Definition at line 1336 of file seq_vector.cpp.

References CSeqVector::m_Randomizer, and CSeqVector::x_ResetIterator().

◆ SetRandomizeAmbiguities() [3/4]

void CSeqVector::SetRandomizeAmbiguities ( Uint4  seed)

Definition at line 1316 of file seq_vector.cpp.

References seed, and CSeqVector::x_InitRandomizer().

◆ SetRandomizeAmbiguities() [4/4]

void CSeqVector::SetRandomizeAmbiguities ( void  )

Randomization of ambiguities and gaps in ncbi2na coding.

Definition at line 1309 of file seq_vector.cpp.

References CSeqVector::x_InitRandomizer().

Referenced by CBlastSequenceSource::GetSeq(), CSeqVector::SetNoAmbiguities(), and CSeqVector::x_InitRandomizer().

◆ SetRegionInChunk()

void CSeqMap::SetRegionInChunk ( CTSE_Chunk_Info chunk,
TSeqPos  pos,
TSeqPos  length 
)

◆ SetRepr()

void CSeqMap::SetRepr ( CSeq_inst::TRepr  repr)

Definition at line 1609 of file seq_map.cpp.

Referenced by CBioseq_Info::SetInst_Repr().

◆ SetSegmentData()

void CSeqMap::SetSegmentData ( const CSeqMap_CI seg,
TSeqPos  length,
CSeq_data data 
)

◆ SetSegmentGap() [1/2]

void CSeqMap::SetSegmentGap ( const CSeqMap_CI seg,
TSeqPos  length 
)

◆ SetSegmentGap() [2/2]

void CSeqMap::SetSegmentGap ( const CSeqMap_CI seg,
TSeqPos  length,
CSeq_data gap_data 
)

◆ SetSegmentRef()

void CSeqMap::SetSegmentRef ( const CSeqMap_CI seg,
TSeqPos  length,
const CSeq_id_Handle ref_id,
TSeqPos  ref_pos,
bool  ref_minus_strand 
)

◆ SetStrand()

void CSeqVector::SetStrand ( ENa_strand  strand)

Definition at line 1263 of file seq_vector.cpp.

References CSeqVector::m_Strand, and CSeqVector::x_ResetIterator().

◆ size()

TSeqPos CSeqVector::size ( void  ) const
inline

Definition at line 291 of file seq_vector.hpp.

References CSeqVector::m_Size.

Referenced by CAdjustForConsensusSpliceSite::AdjustCDS(), CAdjustForConsensusSpliceSite::AdjustCDSEnds(), CContigAssembly::BandedGlobalAlignment(), BOOST_AUTO_TEST_CASE(), CEquivRangeBuilder::CalcMatches(), CalculateEffectiveTranslationLengths(), CAlnVec::CalculateScore(), CCDSTranslationProblems::CalculateTranslationProblems(), CdsTrnaOverlapStr(), CheckBioseqEndsForNAndGap(), Does3primerAbutGap(), CSeqVector::end(), ExtendCDSToStopCodon(), ExtendToStopCodon(), CCleanup::ExtendToStopCodon(), CFindRSites::Find(), CInternalStopFinder::FindStartStopRanges(), COrf::FindStrongKozakUOrfs(), CFlatAnticodonQVal::Format(), CAlnVec::GetAlnSeqString(), CSparseAlignment::GetAlnSeqString(), CSparseAln::GetAlnSeqString(), CAlnVec::GetColumnVector(), CAddGlobalCodeBreak::GetCommand(), CExtendCDSToStop::GetCommand(), GetDNASequence(), CSimpleOM::GetIupac(), GetLoc(), GetMRNATranslationProblems(), CSRSearch::getNMer(), CSeqVector::GetPackedSeqData(), CNucProp::GetPercentGC(), CProtProp::GetProteinPI(), GetProteinWeights(), CAlnVec::GetResidue(), CCodingPropensity::GetScore(), CBlastSequenceSource::GetSeq(), CBlastSequenceSource::GetSeqLength(), CSeqVectorCache::GetSeqSize(), GetSeqsStatus(), CAlnVec::GetSeqString(), CAlnMixSeq::GetSeqString(), CSparseAln::GetSeqString(), CSparseAlignment::GetSeqString(), CBioseqIndex::GetSequence(), CFeatureIndex::GetSequence(), CEditingActionFeatTranslation::GetValue(), HasBadProteinStart(), CBlastBioseqMaker::HasSequence(), CAlignCollapser::InitContig(), CRestoreRNAediting::OnApply(), CTabularFormatter_MismatchPositions::Print(), RetrievePartsOfLargeChromosome(), CAlnVec::RetrieveSegmentSequences(), CDemoApp::Run(), CSampleObjmgrApplication::Run(), CTestSingleAln_All::RunTest(), CTestTranscript_PolyA::RunTest(), s_CdsStopCodon(), s_CodonVariation(), s_CompareProtProdToTrans(), s_CountAmbiguities(), s_DumpSequences_wRange(), ApplyCDSFrame::s_FindMatchingFrame(), CMacroFunction_ApplyCDSFrame::s_FindMatchingFrame(), s_GetKozakStrength(), s_GetQuerySequence(), s_PartialAtGapOrNs(), s_PosIsNNotGap(), s_PrematureStopCodon(), s_ReadAndTestQueryFromString(), s_RunBlast2NWSeq(), ScanForCpGs(), CSeqSearch::Search(), CSRSearch_Impl< index_t >::search(), CSRSearch_Impl< index_t >::searchOneMismatch(), SeqLocToBioseq(), CSeqUtils::SeqLocToBioseq(), CMultAlign::SetGenomic(), SSeqDB_SVCISource::SSeqDB_SVCISource(), StopAbutsGap(), CMacroFunction_ReplaceStopWithSelenocysteine::TheFunction(), CCDSTranslationPanel::TransferDataToWindow(), CSeqTranslator::TranslateToProtein(), TrimStopsFromCompleteCDS(), CGapFeatValidator::Validate(), CFeatureItem::x_AddQualsRna(), CFeatureItem::x_AddQualTranslation(), CSingleFeatValidator::x_CalculateLocationGaps(), CValidError_bioseq::x_CalculateNsStretchAndTotal(), CFeatureGenerator::SImplementation::x_CollectMrnaSequence(), CSequenceDataTester::x_CompareSequenceData(), CWriteDB_Impl::x_ComputeSeqLength(), CWriteDB_Impl::x_CookSequence(), CCDSTranslationProblems::x_CountTerminalXs(), CCreateNeedlemanWunschJob::x_CreateProjectItems(), CFeatureGenerator::SImplementation::x_CreateProteinBioseq(), CURLTooltipHandler::x_DisplayForwardStrandRegion(), CURLTooltipHandler::x_DisplayReverseStrandRegion(), CCpgSearchJob::x_DoSearch(), COrfSearchJob::x_DoSearch(), CCdsGlyph::x_Draw(), CCdsGlyph::x_DrawProjectedProtSeq(), CCdsGlyph::x_DrawProtSeqWithMapping(), CFeatGlyph::x_DrawRNAProductSequence(), CFeaturePropagator::x_ExtendToStopCodon(), CBioseqGaps_CI::x_FindNextGapOnBioseq(), CBaseCountItem::x_GatherInfo(), CGuiObjectInfoSeq_feat::x_GetProductSequence(), x_GetSequence(), CGuiObjectInfoSeq_feat::x_GetSplicedSeqTitle(), CFeatureGenerator::SImplementation::x_HandleCdsExceptions(), CSingleFeatValidator::x_IsMostlyNs(), CSplign::x_LoadSequence(), CFeatureGenerator::SImplementation::x_MapFeature(), CSplignApp::x_ProcessPair(), CPromote::x_PromoteRna(), CInstancedAligner::x_RunMMGlobal(), CSequenceSearchJob::x_SearchSequence(), CFeatureGenerator::SImplementation::x_SetComment(), CReportEntry::x_SetSequence(), CSeqVector_CI::x_SetVector(), CBlastSeqVectorOM::x_Size(), CUnorderedSplitter::x_SplitSeqData(), CSequenceDataTester::x_TestSingleNucleotide_Remote(), CSequenceDataTester::x_TestSingleProtein_Remote(), CCdregionValidator::x_ValidateConflict(), CSingleFeatValidator::x_ValidateReplaceQual(), and CSingleFeatValidator::x_ValidateRptUnitVal().

◆ x_Add() [1/12]

void CSeqMap::x_Add ( const CDelta_seq seq)
protected

◆ x_Add() [2/12]

void CSeqMap::x_Add ( const CPacked_seqint seq)
protected

Definition at line 1321 of file seq_map.cpp.

References CPacked_seqint_Base::Get(), ITERATE, and CSeqMap::x_Add().

◆ x_Add() [3/12]

void CSeqMap::x_Add ( const CPacked_seqpnt seq)
protected

◆ x_Add() [4/12]

void CSeqMap::x_Add ( const CSeq_data data,
TSeqPos  len 
)
protected

Definition at line 1287 of file seq_map.cpp.

References data, CSeqMap::eSeqData, len, and CSeqMap::x_AddSegment().

◆ x_Add() [5/12]

void CSeqMap::x_Add ( const CSeq_id seq)
protected

Definition at line 1309 of file seq_map.cpp.

References CSeqMap::eSeqRef, kInvalidSeqPos, and CSeqMap::x_AddSegment().

◆ x_Add() [6/12]

void CSeqMap::x_Add ( const CSeq_interval seq)
protected

◆ x_Add() [7/12]

void CSeqMap::x_Add ( const CSeq_literal seq)
protected

◆ x_Add() [8/12]

void CSeqMap::x_Add ( const CSeq_loc seq)
protected

◆ x_Add() [9/12]

void CSeqMap::x_Add ( const CSeq_loc_equiv seq)
protected

Definition at line 1350 of file seq_map.cpp.

References CSeq_loc_equiv_Base::Get(), ITERATE, and CSeqMap::x_Add().

◆ x_Add() [10/12]

void CSeqMap::x_Add ( const CSeq_loc_mix seq)
protected

Definition at line 1341 of file seq_map.cpp.

References CSeq_loc_mix_Base::Get(), ITERATE, and CSeqMap::x_Add().

◆ x_Add() [11/12]

void CSeqMap::x_Add ( const CSeq_point seq)
protected

◆ x_Add() [12/12]

void CSeqMap::x_Add ( CSeqMap submap)
protected

Referenced by CSeqMap::CSeqMap(), and CSeqMap::x_Add().

◆ x_AddEnd()

void CSeqMap::x_AddEnd ( void  )
protected

◆ x_AddGap() [1/3]

void CSeqMap::x_AddGap ( TSeqPos  len,
bool  unknown_len 
)
protected

Definition at line 1255 of file seq_map.cpp.

References CSeqMap::eSeqGap, len, and CSeqMap::x_AddSegment().

Referenced by CSeqMap::CSeqMap(), and CSeqMap::x_Add().

◆ x_AddGap() [2/3]

void CSeqMap::x_AddGap ( TSeqPos  len,
bool  unknown_len,
const CSeq_data gap_data 
)
protected

◆ x_AddGap() [3/3]

void CSeqMap::x_AddGap ( TSeqPos  len,
bool  unknown_len,
const CSeq_literal gap_data 
)
protected

◆ x_AddSegment() [1/3]

void CSeqMap::x_AddSegment ( ESegmentType  type,
const CObject object,
TSeqPos  refPos,
TSeqPos  len,
ENa_strand  strand = eNa_strand_plus 
)
protected

◆ x_AddSegment() [2/3]

void CSeqMap::x_AddSegment ( ESegmentType  type,
TSeqPos  len,
bool  unknown_len = false 
)
inlineprotected

◆ x_AddSegment() [3/3]

void CSeqMap::x_AddSegment ( ESegmentType  type,
TSeqPos  len,
const CObject object 
)
protected

◆ x_AddUnloadedSeq_data()

void CSeqMap::x_AddUnloadedSeq_data ( TSeqPos  len)
protected

Definition at line 1281 of file seq_map.cpp.

References CSeqMap::eSeqData, len, and CSeqMap::x_AddSegment().

◆ x_CreateIterator()

CSeqVector_CI * CSeqVector::x_CreateIterator ( TSeqPos  pos) const
private

◆ x_DoUpdateSeq_inst()

bool CSeqMap::x_DoUpdateSeq_inst ( CSeq_inst inst)
protected

◆ x_FindSegment()

size_t CSeqMap::x_FindSegment ( TSeqPos  position,
CScope scope 
) const
protected

◆ x_GetBioseqInfo()

const CBioseq_Info & CSeqMap::x_GetBioseqInfo ( const CSegment seg,
CScope scope 
) const
protected

◆ x_GetChunkToLoad()

CRef< CTSE_Chunk_Info > CSeqMap::x_GetChunkToLoad ( const CSegment seg) const
protected

◆ x_GetFirstEndSegmentIndex()

size_t CSeqMap::x_GetFirstEndSegmentIndex ( void  ) const
inlineprotected

◆ x_GetIterator()

CSeqVector_CI & CSeqVector::x_GetIterator ( TSeqPos  pos) const
inlineprivate

◆ x_GetLastEndSegmentIndex()

size_t CSeqMap::x_GetLastEndSegmentIndex ( void  ) const
inlineprotected

◆ x_GetObject()

const CObject * CSeqMap::x_GetObject ( const CSegment seg) const
protected

◆ x_GetPacked2naSeqData()

void CSeqVector::x_GetPacked2naSeqData ( string dst_str,
TSeqPos  src_pos,
TSeqPos  src_end 
)
private

◆ x_GetPacked4naSeqData()

void CSeqVector::x_GetPacked4naSeqData ( string dst_str,
TSeqPos  src_pos,
TSeqPos  src_end 
)
private

◆ x_GetPacked8SeqData()

void CSeqVector::x_GetPacked8SeqData ( string dst_str,
TSeqPos  src_pos,
TSeqPos  src_end 
)
private

◆ x_GetRefMinusStrand()

bool CSeqMap::x_GetRefMinusStrand ( const CSegment seg) const
protected

Definition at line 793 of file seq_map.cpp.

References CSeqMap::CSegment::m_RefMinusStrand.

◆ x_GetRefPosition()

TSeqPos CSeqMap::x_GetRefPosition ( const CSegment seg) const
protected

Definition at line 787 of file seq_map.cpp.

References CSeqMap::CSegment::m_RefPosition.

◆ x_GetRefSeqid()

const CSeq_id & CSeqMap::x_GetRefSeqid ( const CSegment seg) const
protected

◆ x_GetSegment()

const CSeqMap::CSegment & CSeqMap::x_GetSegment ( size_t  index) const
inlineprotected

◆ x_GetSegmentEndPosition()

TSeqPos CSeqMap::x_GetSegmentEndPosition ( size_t  index,
CScope scope 
) const
inlineprotected

Definition at line 475 of file seq_map.hpp.

References CSeqMap::x_GetSegmentLength(), and CSeqMap::x_GetSegmentPosition().

Referenced by CSeqMap_CI::x_Push().

◆ x_GetSegmentException()

void CSeqMap::x_GetSegmentException ( size_t  index) const
protected

Definition at line 305 of file seq_map.cpp.

References NCBI_THROW.

Referenced by CSeqMap::SetRegionInChunk(), and CSeqMap::x_ResolveSegmentPosition().

◆ x_GetSegmentLength()

TSeqPos CSeqMap::x_GetSegmentLength ( size_t  index,
CScope scope 
) const
inlineprotected

◆ x_GetSegmentPosition()

TSeqPos CSeqMap::x_GetSegmentPosition ( size_t  index,
CScope scope 
) const
inlineprotected

◆ x_GetSeq_data()

const CSeq_data & CSeqMap::x_GetSeq_data ( const CSegment seg) const
protected

◆ x_GetSeq_literal()

CConstRef< CSeq_literal > CSeqMap::x_GetSeq_literal ( const CSegment seg) const
protected

◆ x_GetSequenceClass()

int CSeqMap::x_GetSequenceClass ( void  ) const
protected

◆ x_GetSubSeqMap()

CConstRef< CSeqMap > CSeqMap::x_GetSubSeqMap ( const CSegment seg,
CScope scope,
bool  resolveExternal = false 
) const
protected

◆ x_InitRandomizer()

void CSeqVector::x_InitRandomizer ( CRandom random_gen)
private

◆ x_InitSequenceType()

void CSeqVector::x_InitSequenceType ( void  )
private

◆ x_IsChanged()

bool CSeqMap::x_IsChanged ( void  ) const
inlineprotected

Definition at line 499 of file seq_map.hpp.

References CSeqMap::m_Changed.

Referenced by CSeqMap::x_UpdateSeq_inst().

◆ x_LoadObject()

void CSeqMap::x_LoadObject ( const CSegment seg) const
protected

◆ x_ResetIterator()

void CSeqVector::x_ResetIterator ( void  ) const
private

◆ x_ResolveSegmentLength()

TSeqPos CSeqMap::x_ResolveSegmentLength ( size_t  index,
CScope scope 
) const
protected

◆ x_ResolveSegmentPosition()

TSeqPos CSeqMap::x_ResolveSegmentPosition ( size_t  index,
CScope scope 
) const
protected

◆ x_SetChanged()

void CSeqMap::x_SetChanged ( size_t  index)
protected

◆ x_SetChunk()

void CSeqMap::x_SetChunk ( CSegment seg,
CTSE_Chunk_Info chunk 
)
protected

◆ x_SetObject()

void CSeqMap::x_SetObject ( CSegment seg,
const CObject obj 
)
protected

◆ x_SetSegment()

CSeqMap::CSegment & CSeqMap::x_SetSegment ( size_t  index)
protected

◆ x_SetSegmentData()

void CSeqMap::x_SetSegmentData ( size_t  index,
TSeqPos  length,
CSeq_data data 
)
protected

◆ x_SetSegmentGap()

void CSeqMap::x_SetSegmentGap ( size_t  index,
TSeqPos  length,
CSeq_data gap_data = 0 
)
protected

◆ x_SetSegmentRef()

void CSeqMap::x_SetSegmentRef ( size_t  index,
TSeqPos  length,
const CSeq_id ref_id,
TSeqPos  ref_pos,
bool  ref_minus_strand 
)
protected

◆ x_SetSeq_data()

void CSeqMap::x_SetSeq_data ( size_t  index,
CSeq_data data 
)
protected

◆ x_SetSubSeqMap()

void CSeqMap::x_SetSubSeqMap ( size_t  index,
CSeqMap_Delta_seqs *  subMap 
)
protected

Definition at line 537 of file seq_map.cpp.

References NCBI_THROW.

◆ x_StartEditing()

void CSeqMap::x_StartEditing ( void  )
protected

◆ x_UpdateSeq_inst()

bool CSeqMap::x_UpdateSeq_inst ( CSeq_inst inst)
inlineprotected

◆ ~CNcbi2naRandomizer()

CNcbi2naRandomizer::~CNcbi2naRandomizer ( void  )

Definition at line 107 of file seq_vector.cpp.

◆ ~CSeqMap()

CSeqMap::~CSeqMap ( void  )

Definition at line 297 of file seq_map.cpp.

References _ASSERT, CSeqMap::m_Bioseq, CSeqMap::m_Resolved, and CSeqMap::m_Segments.

◆ ~CSeqVector()

CSeqVector::~CSeqVector ( void  )
virtual

Definition at line 239 of file seq_vector.cpp.

Variable Documentation

◆ m_Bioseq

CBioseq_Info* CSeqMap::m_Bioseq
protected

◆ m_Changed

TChanged CSeqMap::m_Changed
protected

◆ m_Coding

TCoding CSeqVector::m_Coding
private

◆ m_Delta

CRef<CObject> CSeqMap::m_Delta
protected

Definition at line 391 of file seq_map.hpp.

◆ m_ExactMasterRange

CRange<TSeqPos> CSeqMapSwitchPoint::m_ExactMasterRange

Definition at line 82 of file seq_map_switch.hpp.

◆ m_FirstAlign

CConstRef<CSeq_align> CSeqMapSwitchPoint::m_FirstAlign

Definition at line 67 of file seq_map_switch.hpp.

◆ m_FixedTable

char CNcbi2naRandomizer::m_FixedTable[16]
private

◆ m_HasSegments

atomic<THasSegments> CSeqMap::m_HasSegments
mutableprotected

Definition at line 398 of file seq_map.hpp.

Referenced by CSeqMap::HasSegmentOfType(), and CSeqMap::x_SetChanged().

◆ m_Iterator

AutoPtr<CSeqVector_CI> CSeqVector::m_Iterator
mutableprivate

◆ m_IteratorMutex

TMutex CSeqVector::m_IteratorMutex
mutableprivate

Definition at line 208 of file seq_vector.hpp.

Referenced by CSeqVector::GetMutex().

◆ m_LeftDifferences

TDifferences CSeqMapSwitchPoint::m_LeftDifferences

◆ m_LeftId

CSeq_id_Handle CSeqMapSwitchPoint::m_LeftId

Definition at line 70 of file seq_map_switch.hpp.

Referenced by CSeqMapSwitchPoint::ChangeSwitchPoint().

◆ m_LeftMinusStrand

bool CSeqMapSwitchPoint::m_LeftMinusStrand

Definition at line 72 of file seq_map_switch.hpp.

Referenced by CSeqMapSwitchPoint::ChangeSwitchPoint().

◆ m_LeftPos

TSeqPos CSeqMapSwitchPoint::m_LeftPos

Definition at line 71 of file seq_map_switch.hpp.

Referenced by CSeqMapSwitchPoint::ChangeSwitchPoint().

◆ m_Length

atomic<TSeqPos> CSeqMap::CSegment::m_Length
mutable

◆ m_Master

CBioseq_Handle CSeqMapSwitchPoint::m_Master

◆ m_MasterPos

TSeqPos CSeqMapSwitchPoint::m_MasterPos

◆ m_MasterRange

CRange<TSeqPos> CSeqMapSwitchPoint::m_MasterRange

◆ m_Mol [1/2]

TMol CSeqMap::m_Mol
protected

◆ m_Mol [2/2]

TMol CSeqVector::m_Mol
private

◆ m_ObjType

char CSeqMap::CSegment::m_ObjType

◆ m_Position

atomic<TSeqPos> CSeqMap::CSegment::m_Position
mutable

◆ m_Randomizer

CRef<INcbi2naRandomizer> CSeqVector::m_Randomizer
private

◆ m_RandomTable

char CNcbi2naRandomizer::m_RandomTable[16][kRandomDataSize]
private

◆ m_RefMinusStrand

bool CSeqMap::CSegment::m_RefMinusStrand

◆ m_RefObject

CConstRef<CObject> CSeqMap::CSegment::m_RefObject

◆ m_RefPosition

TSeqPos CSeqMap::CSegment::m_RefPosition

◆ m_Resolved

atomic<size_t> CSeqMap::m_Resolved
mutableprotected

◆ m_RightDifferences

TDifferences CSeqMapSwitchPoint::m_RightDifferences

◆ m_RightId

CSeq_id_Handle CSeqMapSwitchPoint::m_RightId

Definition at line 75 of file seq_map_switch.hpp.

Referenced by CSeqMapSwitchPoint::ChangeSwitchPoint().

◆ m_RightMinusStrand

bool CSeqMapSwitchPoint::m_RightMinusStrand

Definition at line 77 of file seq_map_switch.hpp.

Referenced by CSeqMapSwitchPoint::ChangeSwitchPoint().

◆ m_RightPos

TSeqPos CSeqMapSwitchPoint::m_RightPos

Definition at line 76 of file seq_map_switch.hpp.

Referenced by CSeqMapSwitchPoint::ChangeSwitchPoint().

◆ m_Scope

CHeapScope CSeqVector::m_Scope
private

◆ m_Segments

vector<CSegment> CSeqMap::m_Segments
protected

◆ m_SegType

char CSeqMap::CSegment::m_SegType

◆ m_SeqLength

atomic<TSeqPos> CSeqMap::m_SeqLength
mutableprotected

◆ m_SeqMap

CConstRef<CSeqMap> CSeqVector::m_SeqMap
private

◆ m_SeqMap_Mtx

CMutex CSeqMap::m_SeqMap_Mtx
mutableprotected

◆ m_Size

TSeqPos CSeqVector::m_Size
private

◆ m_Strand

ENa_strand CSeqVector::m_Strand
private

◆ m_TSE

CTSE_Handle CSeqVector::m_TSE
private

◆ m_UnknownLength

bool CSeqMap::CSegment::m_UnknownLength

Friends

◆ CBioseq_Handle

friend class CBioseq_Handle
friend

Definition at line 178 of file seq_vector.hpp.

◆ CBioseq_Info

friend class CBioseq_Info
friend

Definition at line 238 of file seq_map.hpp.

◆ CSegment

friend class CSegment
friend

Definition at line 235 of file seq_map.hpp.

Referenced by CSeqMap::x_AddSegment().

◆ CSeqMap_CI

friend class CSeqMap_CI
friend

◆ CSeqMap_CI_SegmentInfo

friend class CSeqMap_CI_SegmentInfo
friend

Definition at line 410 of file seq_map.hpp.

◆ CSeqMap_SeqPoss

friend class CSeqMap_SeqPoss
friend

Definition at line 237 of file seq_map.hpp.

◆ CSeqVector_CI

friend class CSeqVector_CI
friend

◆ SPosLessSegment

friend class SPosLessSegment
friend

Definition at line 236 of file seq_map.hpp.

Modified on Fri Apr 12 17:23:47 2024 by modify_doxy.py rev. 669887