37 #ifndef OBJECTS_SEQLOC_SEQ_LOC_MIX_HPP
38 #define OBJECTS_SEQLOC_SEQ_LOC_MIX_HPP
90 void AddSeqLoc(
const CSeq_loc& other);
98 bool IsReverseStrand(
void)
const;
108 const CSeq_loc* GetFirstLoc(ENullSegType null_seg = eNullSegAllow)
const;
109 const CSeq_loc* GetLastLoc (ENullSegType null_seg = eNullSegAllow)
const;
110 CSeq_loc* SetFirstLoc(ENullSegType null_seg = eNullSegAllow);
111 CSeq_loc* SetLastLoc (ENullSegType null_seg = eNullSegAllow);
113 ENullSegType null_seg = eNullSegAllow)
const;
115 ENullSegType null_seg = eNullSegAllow)
const;
117 ENullSegType null_seg = eNullSegAllow);
119 ENullSegType null_seg = eNullSegAllow);
125 void ResetStrand(
void);
128 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.
bool IsReverseStrand(void) const
ENa_strand GetStrand(void) const
CSeq_loc_mix(const CSeq_loc_mix &)
CSeq_loc_mix_Base Tparent
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.
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
ENa_strand
strand of nucleic acid
CSeq_loc_mix_Base & operator=(const CSeq_loc_mix_Base &)
void AddInterval(TRangeVec &intervals, TSeqPos from, TSeqPos to, bool from_fuzz=false, bool to_fuzz=false)