37 #ifndef OBJECTS_SEQLOC_PACKED_SEQINT_HPP
38 #define OBJECTS_SEQLOC_PACKED_SEQINT_HPP
62 typedef vector< CRange<TSeqPos> >
TRanges;
97 void AddIntervals(
const Tdata& ivals);
101 bool IsReverseStrand(
void)
const;
113 void ResetStrand(
void);
116 void FlipStrand(
void);
bool IsReverse(ENa_strand s)
ESeqLocExtremes
Used to determine the meaning of a location's Start/Stop positions.
EIsSetStrand
Flag used by IsSetStrand() to switch between any/all modes.
@ eIsSetStrand_Any
Check if any part has strand.
CPacked_seqint(const CPacked_seqint &)
CPacked_seqint_Base Tparent
bool IsReverseStrand(void) const
vector< CRange< TSeqPos > > TRanges
ENa_strand GetStrand(void) const
unsigned int TSeqPos
Type for sequence locations and lengths.
TSeqPos GetStop(const CSeq_loc &loc, CScope *scope, ESeqLocExtremes ext=eExtreme_Positional)
If only one CBioseq is represented by CSeq_loc, returns the position at the stop of the location.
TSeqPos GetLength(const CSeq_id &id, CScope *scope)
Get sequence length if scope not null, else return max possible TSeqPos.
ENa_strand GetStrand(const CSeq_loc &loc, CScope *scope=0)
Returns eNa_strand_unknown if multiple Bioseqs in loc Returns eNa_strand_other if multiple strands in...
TSeqPos GetStart(const CSeq_loc &loc, CScope *scope, ESeqLocExtremes ext=eExtreme_Positional)
If only one CBioseq is represented by CSeq_loc, returns the position at the start of the location.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define NCBI_SEQLOC_EXPORT
CPacked_seqint_Base & operator=(const CPacked_seqint_Base &)
list< CRef< CSeq_interval > > Tdata
ENa_strand
strand of nucleic acid
void AddInterval(TRangeVec &intervals, TSeqPos from, TSeqPos to, bool from_fuzz=false, bool to_fuzz=false)