NCBI C++ ToolKit
Public Member Functions | Static Private Member Functions | Private Attributes | List of all members
CSeqMap_I Class Reference

Search Toolkit Book for CSeqMap_I

Non-const iterator over CSeqMap (allows to edit the sequence). More...

#include <objmgr/seq_map_ci.hpp>

+ Inheritance diagram for CSeqMap_I:
+ Collaboration diagram for CSeqMap_I:

Public Member Functions

 CSeqMap_I (void)
 
 CSeqMap_I (const CBioseq_EditHandle &bioseq, const SSeqMapSelector &selector, TSeqPos pos=0)
 
 CSeqMap_I (const CBioseq_EditHandle &bioseq, const SSeqMapSelector &selector, const CRange< TSeqPos > &range)
 
 CSeqMap_I (CRef< CSeqMap > &seqmap, CScope *scope, const SSeqMapSelector &selector, TSeqPos pos=0)
 
 CSeqMap_I (CRef< CSeqMap > &seqmap, CScope *scope, const SSeqMapSelector &selector, const CRange< TSeqPos > &range)
 
 ~CSeqMap_I (void)
 
void SetGap (TSeqPos length, CSeq_data *gap_data=0)
 Change current segment to gap. More...
 
void SetRef (const CSeq_id_Handle &ref_id, TSeqPos ref_pos, TSeqPos ref_length, bool ref_minus_strand=false)
 Change current segment to reference. More...
 
void SetSeq_data (TSeqPos length, CSeq_data &data)
 Change current segment to data. More...
 
CSeqMap_IInsertGap (TSeqPos length, CSeq_data *gap_data=0)
 Insert gap. On return the iterator points to the new segment. More...
 
CSeqMap_IInsertRef (const CSeq_id_Handle &ref_id, TSeqPos ref_pos, TSeqPos ref_length, bool ref_minus_strand=false)
 Insert reference. On return the iterator points to the new segment. More...
 
CSeqMap_IInsertData (TSeqPos length, CSeq_data &data)
 Insert data. On return the iterator points to the new segment. More...
 
CSeqMap_IInsertData (const string &buffer, CSeqUtil::ECoding buffer_coding, CSeq_data::E_Choice seq_data_coding)
 Insert data segment using the sequence string and the selected coding. More...
 
CSeqMap_IRemove (void)
 Remove current segment. More...
 
void GetSequence (string &buffer, CSeqUtil::ECoding buffer_coding) const
 Get current sequence as a string with the selected encoding. More...
 
void SetSequence (const string &buffer, CSeqUtil::ECoding buffer_coding, CSeq_data::E_Choice seq_data_coding)
 Set sequence data. More...
 
- Public Member Functions inherited from CSeqMap_CI
 CSeqMap_CI (void)
 
 CSeqMap_CI (const CBioseq_Handle &bioseq, const SSeqMapSelector &selector, TSeqPos pos=0)
 
 CSeqMap_CI (const CBioseq_Handle &bioseq, const SSeqMapSelector &selector, const CRange< TSeqPos > &range)
 
 CSeqMap_CI (const CConstRef< CSeqMap > &seqmap, CScope *scope, const SSeqMapSelector &selector, TSeqPos pos=0)
 
 CSeqMap_CI (const CConstRef< CSeqMap > &seqmap, CScope *scope, const SSeqMapSelector &selector, const CRange< TSeqPos > &range)
 
 ~CSeqMap_CI (void)
 
bool IsInvalid (void) const
 
bool IsValid (void) const
 
 DECLARE_OPERATOR_BOOL (IsValid())
 
bool operator== (const CSeqMap_CI &seg) const
 
bool operator!= (const CSeqMap_CI &seg) const
 
bool operator< (const CSeqMap_CI &seg) const
 
bool operator> (const CSeqMap_CI &seg) const
 
bool operator<= (const CSeqMap_CI &seg) const
 
bool operator>= (const CSeqMap_CI &seg) const
 
bool Next (bool resolveExternal=true)
 go to next/next segment, return false if no more segments if no_resolve_current == true, do not resolve current segment More...
 
bool Prev (void)
 
TFlags GetFlags (void) const
 
void SetFlags (TFlags flags)
 
CSeqMap_CIoperator++ (void)
 
CSeqMap_CIoperator-- (void)
 
size_t GetDepth (void) const
 return the depth of current segment More...
 
TSeqPos GetPosition (void) const
 return position of current segment in sequence More...
 
TSeqPos GetLength (void) const
 return length of current segment More...
 
bool IsUnknownLength (void) const
 return true if current segment is a gap of unknown length More...
 
TSeqPos GetEndPosition (void) const
 return end position of current segment in sequence (exclusive) More...
 
CSeqMap::ESegmentType GetType (void) const
 
bool IsSetData (void) const
 
const CSeq_dataGetData (void) const
 will allow only regular data segments (whole, plus strand) More...
 
const CSeq_dataGetRefData (void) const
 will allow any data segments, user should check for position and strand More...
 
CConstRef< CSeq_literalGetRefGapLiteral (void) const
 return CSeq_literal with gap data, or null if either the segment is not a gap, or an unspecified gap More...
 
CSeq_id_Handle GetRefSeqid (void) const
 The following function makes sense only when the segment is a reference to another seq. More...
 
TSeqPos GetRefPosition (void) const
 
TSeqPos GetRefEndPosition (void) const
 
bool GetRefMinusStrand (void) const
 
CScopeGetScope (void) const
 
const CTSE_HandleGetUsingTSE (void) const
 
bool FeaturePolicyWasApplied (void) const
 

Static Private Member Functions

static SSeqMapSelector sx_AdjustSelector (const SSeqMapSelector &selector)
 

Private Attributes

CRef< CSeqMapm_SeqMap
 

Additional Inherited Members

- Public Types inherited from CSeqMap_CI
typedef SSeqMapSelector::TFlags TFlags
 
- Protected Member Functions inherited from CSeqMap_CI
void x_UpdateLength (void)
 

Detailed Description

Non-const iterator over CSeqMap (allows to edit the sequence).

Definition at line 406 of file seq_map_ci.hpp.


The documentation for this class was generated from the following files:
Modified on Wed Jun 12 11:12:36 2024 by modify_doxy.py rev. 669887