87 #define IS_INSERTION(sf, tf) \
88 ( ((sf) & CAlnMap::fSeq) && !((tf) & CAlnMap::fSeq) )
89 #define IS_DELETION(sf, tf) \
90 ( !((sf) & CAlnMap::fSeq) && ((tf) & CAlnMap::fSeq) )
91 #define IS_MATCH(sf, tf) \
92 ( ((sf) & CAlnMap::fSeq) && ((tf) & CAlnMap::fSeq) )
99 unsigned int& wrapSize,
100 unsigned int& wrapPoint)
103 wrapSize = wrapPoint = 0;
104 if (subInts.empty()) {
110 if (bioH.CanGetInst_Topology()) {
119 const auto&
front = *subInts.front();
120 if (!
front.CanGetStrand()) {
123 auto frontStrand =
front.GetStrand();
124 auto pCompare = subInts.begin()++;
125 while (pCompare != subInts.end()) {
126 const auto& interval = **pCompare;
127 if (!interval.CanGetStrand() || interval.GetStrand() != frontStrand) {
134 if (!bioH.CanGetInst_Length()) {
137 wrapSize = bioH.GetInst_Length();
139 subInts.back()->GetFrom() :
140 subInts.front()->GetFrom();
152 typedef vector<CRef<CScore> > SCORES;
157 const SCORES& scoresFrom = alignFrom.
GetScore();
158 for (SCORES::const_iterator itFrom = scoresFrom.begin();
159 itFrom != scoresFrom.end(); ++itFrom) {
161 const CScore& scoreFrom = **itFrom;
164 const string& keyFrom = scoreFrom.
GetId().
GetStr();
165 const SCORES& scoresTo = alignTo.
GetScore();
166 SCORES::const_iterator itTo;
167 for (itTo = scoresTo.begin(); itTo != scoresTo.end(); ++itTo) {
168 const CScore& scoreTo = **itTo;
171 if (keyTo == keyFrom) {
176 if (itTo == scoresTo.end()) {
177 alignTo.
SetScore().push_back(*itFrom);
183 const SCORES& scoresTo = alignFrom.
GetScore();
184 SCORES::const_iterator itTo;
185 for (itTo = scoresTo.begin(); itTo != scoresTo.end(); ++itTo) {
186 const CScore& scoreTo = **itTo;
189 if (idTo.
Match(idFrom)) {
194 if (itTo == scoresTo.end()) {
195 alignTo.
SetScore().push_back(*itFrom);
207 const char* strProtMatch =
"protein_match";
208 const char* strEstMatch =
"EST_match";
209 const char* strCdnaMatch =
"cDNA_match";
230 bool sortAlignments) :
233 m_sDefaultMethod(
""),
234 m_SortAlignments(sortAlignments),
250 bool sortAlignments) :
253 m_SortAlignments(
false),
295 const string& strAssName,
296 const string& strAssAcc )
303 string msg(
"Inconsistent alignment data ");
304 msg += (
"\"\"\"" + e.
GetMsg() +
"\"\"\"");
349 const string& alignId)
353 cerr <<
"Object type not supported." << endl;
361 for (CSeq_align::TId::const_iterator it = ids.begin();
362 it != ids.end(); ++it) {
363 if ((*it)->IsStr()) {
364 id = (*it)->GetStr();
390 const string& alignId)
393 typedef list<CRef<CSeq_align> > ALIGNS;
396 for (ALIGNS::const_iterator cit =
data.begin(); cit !=
data.end(); ++cit) {
413 const string& alignId)
418 typedef list<CRef<CSpliced_exon> > EXONS;
422 for (EXONS::const_iterator cit = exons.begin(); cit != exons.end(); ++cit) {
427 "Processing terminated by user");
572 record.
SetType(
"protein_match");
580 if (!genomicH || !productH) {
616 typedef list<CRef<CScore> > SCORES;
619 for (SCORES::const_iterator cit = scores.begin(); cit != scores.end();
635 const unsigned int tgtWidth = isProteinProd ? 3 : 1;
637 typedef list<CRef<CSpliced_exon_chunk> > CHUNKS;
639 const CHUNKS& chunks = exon.
GetParts();
640 for (CHUNKS::const_iterator cit = chunks.begin(); cit != chunks.end(); ++cit) {
642 switch (chunk.
Which()) {
659 if (del_length > 0) {
664 const unsigned int forward_shift = chunk.
GetGenomic_ins()%tgtWidth;
665 if (forward_shift > 0) {
672 const unsigned int reverse_shift = chunk.
GetProduct_ins()%tgtWidth;
673 if (reverse_shift > 0) {
678 const unsigned int insert_length = chunk.
GetProduct_ins()/tgtWidth;
679 if (insert_length > 0) {
709 const unsigned int tgtWidth = isProteinProd ? 3 : 1;
714 string seqStrand =
"+";
719 target +=
" " + seqStart;
720 target +=
" " + seqStop;
721 target +=
" " + seqStrand;
750 typedef vector<CRef<CScore> > SCORES;
754 const SCORES& scores = align.
GetScore();
755 for (SCORES::const_iterator cit = scores.begin(); cit != scores.end();
765 const string& alignId)
780 "Processing terminated by user");
813 catch(std::exception&) {};
828 typedef vector<CRef<CScore> > SCORES;
833 const SCORES& scores = denseSeg.
GetScores();
834 for (SCORES::const_iterator cit = scores.begin(); cit != scores.end();
858 catch(std::exception&) {};
871 catch(std::exception&) {};
893 catch(std::exception&) {};
923 catch(std::exception&) {};
935 while (start2 < 0 && start_seg < numSegs) {
936 start2 = alnMap.
GetStart(0, start_seg++);
940 int stop_seg = numSegs-1;
941 while (stop2 < 0 && stop_seg >= 0) {
942 stop2 = alnMap.
GetStart(0, stop_seg--);
947 stop2 += alnMap.
GetLen(start_seg-1)-1;
950 stop2 += alnMap.
GetLen(stop_seg+1)-1;
973 unsigned int tgtWidth;
987 catch(std::exception&) {};
994 for (
int seg = 0; seg < numSegs; ++seg) {
1002 const unsigned int reverse_shift = tgtPiece.
GetLength()%tgtWidth;
1003 if (reverse_shift > 0) {
1008 const unsigned int insert_length = tgtPiece.
GetLength()/tgtWidth;
1009 if (insert_length > 0) {
1017 const unsigned int del_length = srcPiece.
GetLength()/tgtWidth;
1018 if (del_length > 0) {
1023 const unsigned int forward_shift = srcPiece.
GetLength()%tgtWidth;
1024 if (forward_shift > 0) {
1030 if (
IS_MATCH(tgtFlags, srcFlags)) {
1043 unsigned int srcRow)
1046 unsigned int seqStart = alnMap.
GetSeqStart(srcRow);
1047 unsigned int seqStop = alnMap.
GetSeqStop(srcRow);
1059 unsigned int srcRow)
1076 m_Os <<
"##gff-version 3" <<
'\n';
1077 m_Os <<
"#!gff-spec-version 1.21" <<
'\n';
1078 m_Os <<
"#!processor NCBI annotwriter" <<
'\n';
1122 m_Os <<
"##sequence-region " <<
id <<
" " << start <<
" " << stop <<
'\n';
1125 const string base_url =
1126 "https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?";
1132 m_Os <<
"##species " << base_url <<
"id=" << tax_id <<
'\n';
1136 m_Os <<
"##species " << base_url <<
"name=" << orgname <<
'\n';
1167 if (!align1 && align2) {
1171 if ((align1 && !align2) ||
1172 (!align1 && !align2) ) {
1177 auto make_key = [](
const pair<CConstRef<CSeq_align>,
string>& p,
CScope& scope) {
1179 const string alignId = p.second;
1181 string subject_accession;
1187 string target_accession;
1222 for (CSeq_align::TId::const_iterator it = ids.begin();
1223 it != ids.end(); ++it) {
1224 if ((*it)->IsStr()) {
1225 return (*it)->GetStr();
1237 if ((
range.GetFrom() <= pos) &&
1238 (
range.GetTo() >= pos)) {
1291 if (!cc->IsSetAnnot()) {
1294 const auto& annots = cc->
GetAnnot();
1295 if (annots.empty()) {
1298 const auto&
data = cc->GetAnnot().front();
1305 const auto& display_range =
GetRange();
1309 for (
CAlign_CI align_it(bsh, display_range, sel); align_it; ++align_it) {
1312 alignCache.push_back(make_pair(pAlign,alignId));
1319 for (
auto alignPair : alignCache) {
1320 xWriteAlign(*(alignPair.first), alignPair.second);
1325 CAlign_CI align_it(bsh, display_range, sel);
1336 feature::CFeatTree& featTree = fc.
FeatTree();
1337 vector<CMappedFeat> vChildren;
1338 featTree.GetChildrenTo(mf, vChildren);
1339 for (
auto cit = vChildren.begin(); cit != vChildren.end(); ++cit) {
1400 const auto& display_range =
GetRange();
1401 CFeat_CI feat_iter(bsh, display_range, sel);
1417 vector<CMappedFeat> vRoots = fc.
FeatTree().GetRootFeatures();
1419 for (
auto pit = vRoots.begin(); pit != vRoots.end(); ++pit) {
1437 const auto& display_range =
GetRange();
1438 CFeat_CI feat_iter(bsh, display_range, sel);
1454 "Processing terminated by user");
1488 "Processing terminated by user");
1533 cerr <<
"CGff3Writer: Unsupported feature type encountered: Removed." << endl;
1535 cerr <<
" exc: " << e.
ReportAll() << endl;
1555 if (isTransSpliced) {
1556 unsigned int inPoint, outPoint;
1568 const list< CRef< CSeq_interval > >& sublocs = PackedInt.
GetPacked_int().
Get();
1569 auto parentId = pRna->
Id();
1570 list< CRef< CSeq_interval > >::const_iterator it;
1574 unsigned int wrapSize(0), wrapPoint(0);
1575 if (!isTransSpliced) {
1579 for (it = sublocs.begin(); it != sublocs.end(); ++it) {
1630 const auto rnaId = pRna->
Id();
1634 const list< CRef< CSeq_interval > >& sublocs = PackedInt.
GetPacked_int().
Get();
1636 unsigned int wrapSize(0), wrapPoint(0);
1637 if (!isTransSpliced) {
1643 for (
auto it = sublocs.begin(); it != sublocs.end(); ++it ) {
1688 if (!me || !me->
HasField(
"Method")) {
1743 if (method ==
"Local") {
1759 unsigned int seqStart(0);
1760 unsigned int seqStop(0);
1764 seqStart, seqStop)) {
1805 if (seqStart < bstop) {
1808 if (seqStop < bstop) {
1815 if (seqStart < bstart) {
1818 if (seqStop < bstart) {
1899 vector<string> acceptedClasses = {
1901 "autocatalytically_spliced_intron",
1903 "hammerhead_ribozyme",
1924 if (ncrna_class.empty()) {
1931 if (ncrna_class ==
"classRNA") {
1936 if (ncrna_class.empty()) {
1944 const auto cit = std::find(
1945 acceptedClasses.begin(), acceptedClasses.end(), ncrna_class);
1946 if (cit == acceptedClasses.end()) {
1951 string recomb_class = mf.
GetNamedQual(
"recombination_class");
1952 if (!recomb_class.empty() && recomb_class !=
"other") {
1954 auto cit = std::find(validClasses.begin(), validClasses.end(), recomb_class);
1955 if (cit == validClasses.end()) {
1956 note = recomb_class;
1961 string regulatory_class = mf.
GetNamedQual(
"regulatory_class");
1962 if (!regulatory_class.empty() && regulatory_class !=
"other") {
1964 auto cit = std::find(validClasses.begin(), validClasses.end(), regulatory_class);
1965 if (cit == validClasses.end()) {
1966 note = regulatory_class;
1975 if (!note.empty()) {
1976 if (!comment.empty()) {
1977 note +=
"; " + comment;
1983 if (!note.empty()) {
1999 for (CSeq_feat::TQual::const_iterator cit = quals.begin();
2000 cit != quals.end(); ++cit) {
2001 if ((*cit)->GetQual() ==
"transcript_id") {
2002 record.
SetAttribute(
"transcript_id", (*cit)->GetVal());
2008 string transcript_id;
2026 vector<string>
value;
2072 if (!
rna.IsSetExt()) {
2184 {
"ID",
"Name",
"Alias",
"Parent",
"Target",
"Gap",
"Derives_from",
2185 "Note",
"Dbxref",
"Ontology_term",
"Is_circular"};
2188 for (
const auto& qual: quals) {
2189 if (!qual->IsSetQual() || !qual->IsSetVal()) {
2192 string key = qual->GetQual();
2193 const string&
value = qual->GetVal();
2194 if (
key ==
"SO_type") {
2201 if (
key ==
"Parent") {
2206 gff3_attributes.
find(
key) == gff3_attributes.
end()) {
2232 whole.SetInt().SetFrom(0);
2242 "CGff3Writer: Unable to assign record location.\n");
2246 if (!display_range.IsWhole()) {
2247 pLoc->
Assign(*sequence::CFeatTrim::Apply(*pLoc, display_range));
2261 list< CRef< CSeq_interval > >& sublocs = pLoc->
SetPacked_int().Set();
2262 list< CRef<CSeq_interval> >::iterator it;
2263 list< CRef<CSeq_interval> >::iterator it_ceil=sublocs.end();
2264 list< CRef<CSeq_interval> >::iterator it_floor=sublocs.end();
2265 if (sublocs.size() > 1) {
2266 for ( it = sublocs.begin(); it != sublocs.end(); ++it ) {
2276 if (it_floor != sublocs.end() && it_ceil != sublocs.end()) {
2280 if ( it_ceil != sublocs.end() && it_floor != sublocs.end() ) {
2281 (*it_ceil)->
SetTo( (*it_ceil)->GetTo() + (*it_floor)->GetTo() + 1 );
2282 sublocs.erase(it_floor);
2317 const string defaultId(
".");
2322 auto ids = bsh.
GetId();
2324 auto id = ids.front();
2367 unsigned int seqStart = 0;
2481 typedef vector<CRef<CDbtag> > DBTAGS;
2490 const DBTAGS& tags = orgRef.
GetDb();
2491 for (DBTAGS::const_iterator cit = tags.begin(); cit != tags.end(); ++cit) {
2506 const vector<string> ignoredKeys = {
2510 typedef list<CRef<COrgMod> > MODS;
2523 const MODS& mods = orgName.
GetMod();
2524 for (MODS::const_iterator cit = mods.begin(); cit != mods.end(); ++cit) {
2527 auto ignoredIt = std::find(ignoredKeys.begin(), ignoredKeys.end(),
key);
2528 if (ignoredIt != ignoredKeys.end()) {
2543 typedef list<CRef<CSubSource> >
SUBS;
2549 for (SUBS::const_iterator cit = subs.begin(); cit != subs.end(); ++cit) {
2595 if (display_range.
IsWhole()) {
2601 iPhase =
max(sequence::CFeatTrim::GetCdsFrame(feature, display_range)-1, 0);
2604 int iTotSize = -iPhase;
2607 list< CRef< CSeq_interval > >::const_iterator it;
2608 string cdsId = pCds->
Id();
2612 unsigned int wrapSize(0), wrapPoint(0);
2617 for ( it = sublocs.begin(); it != sublocs.end(); ++it ) {
2632 iTotSize = (iTotSize + subint.
GetLength());
2633 const int posInCodon = (3+iTotSize)%3;
2634 iPhase = posInCodon ? 3-posInCodon : 0;
2691 const list< CRef< CSeq_interval > >& sublocs = PackedInt.
GetPacked_int().
Get();
2692 auto parentId = pRna->
Id();
2693 list< CRef< CSeq_interval > >::const_iterator it;
2697 unsigned int wrapSize(0), wrapPoint(0);
2702 for ( it = sublocs.begin(); it != sublocs.end(); ++it ) {
2755 const auto parentId = pSegment->
Id();
2757 const list< CRef< CSeq_interval > >& sublocs = PackedInt.
GetPacked_int().
Get();
2759 unsigned int wrapSize(0), wrapPoint(0);
2764 for (
auto it = sublocs.begin(); it != sublocs.end(); ++it ) {
2823 {
"mature_protein_region",
"mature_protein_region_of_CDS"},
2824 {
"immature_peptide_region",
"propeptide_region_of_CDS"},
2825 {
"signal_peptide",
"signal_peptide_region_of_CDS"},
2826 {
"transit_peptide",
"transit_peptide_region_of_CDS"},
2828 auto fixupIt = proteinOnCdsFixups.
find(pRecord->
StrType());
2829 if (fixupIt != proteinOnCdsFixups.
end()) {
2830 pRecord->
SetType(fixupIt->second);
2835 string parentId = parentIt->second->Id();
2844 if (
prot.IsSetName()) {
2853 auto& packedInt = *pMappedLoc;
2855 _ASSERT(packedInt.IsPacked_int() && packedInt.GetPacked_int().CanGet());
2857 list< CRef< CSeq_interval > > sublocs( packedInt.GetPacked_int().Get() );
2859 unsigned int wrapSize(0), wrapPoint(0);
2864 for (
auto it = sublocs.begin(); it != sublocs.end(); ++it ) {
2880 unsigned int seqLength )
2892 if (sublocs.size() == 1) {
2896 unsigned int curInterval = 1;
2898 for (
auto it = sublocs.begin(); it != sublocs.end(); ++it) {
2901 pChild->SetLocation(subint, 0);
2904 pChild->SetAttribute(
"part", part);
3050 for (
const auto& parent_type : parent_types) {
3083 "CGff3Writer::xWriteRecord: GFF3 reord is missing mandatory SeqID assignment.\n"
3084 "Identifying information:\n"
3087 " Gff3Type: " + record.
StrType() +
"\n\n");
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
@ eExtreme_Positional
numerical value
@ eExtreme_Biological
5' and 3'
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
bool WriteAlignments(CAlign_CI first)
TSegTypeFlags GetSegType(TNumrow row, TNumseg seg, int offset=0) const
TSignedSeqPos GetStart(TNumrow row, TNumseg seg, int offset=0) const
const CSeq_id & GetSeqId(TNumrow row) const
TDim GetNumRows(void) const
unsigned int TSegTypeFlags
TSeqPos GetLen(TNumseg seg, int offset=0) const
const CDense_seg & GetDenseg(void) const
TSeqPos GetSeqStop(TNumrow row) const
TSignedRange GetRange(TNumrow row, TNumseg seg, int offset=0) const
int StrandSign(TNumrow row) const
TNumseg GetNumSegs(void) const
TSeqPos GetSeqStart(TNumrow row) const
CSeq_annot_Handle GetAnnot(void) const
const string & GetTaxname(void) const
string GetRepliconName(void) const
bool IsSetOrgname(void) const
CRef< CDense_seg > FillUnaligned() const
Create a new dense-seg with added all unaligned pieces (implicit inserts), if any,...
const TWidths & GetWidths(void) const
static CGenbankIdResolve & Get()
bool GetBestId(CSeq_id_Handle, CScope &, string &)
CWriterBase implementation that formats Genbank objects as plain GFF files.
virtual bool xAssignFeatureAttributeDbxref(CGffFeatureRecord &, CGffFeatureContext &, const string &label, const CMappedFeat &)
virtual bool x_WriteAssemblyInfo(const string &, const string &)
virtual bool xAssignFeatureAttributesFormatIndependent(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &)
virtual bool xAssignFeatureSeqId(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &)
virtual bool xAssignFeatureBasic(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &)
static bool xIntervalsNeedPartNumbers(const list< CRef< CSeq_interval >> &)
CMappedFeat xGenerateMissingTranscript(CGffFeatureContext &, const CMappedFeat &)
void SetRecordId(const string &recordId)
void SetParent(const string &parent)
void SetRecordId(const string &recordId)
virtual bool xAssignAlignmentSplicedLocation(CGffAlignRecord &, const CSpliced_seg &, const CSpliced_exon &)
bool WriteAlign(const CSeq_align &, const string &asmblyName="", const string &asmblyAccession="") override
Write a raw Seq-align to the internal output stream.
virtual bool xWriteSource(CBioseq_Handle)
bool xAssignAlignmentSplicedType(CGffAlignRecord &, const CSpliced_seg &, const CSpliced_exon &)
virtual bool xWriteFeatureRecords(const CGffFeatureRecord &, const CSeq_loc &, unsigned int)
CBioseq_Handle m_BioseqHandle
bool xAssignAlignmentSpliced(CGffAlignRecord &, const CSpliced_seg &, const CSpliced_exon &)
bool xWriteFeature(CFeat_CI feat_it) override
bool xAssignAlignmentSplicedMethod(CGffAlignRecord &, const CSpliced_seg &, const CSpliced_exon &)
virtual bool xAssignFeatureAttributeParentGene(CGff3FeatureRecord &, CGffFeatureContext &, const CMappedFeat &)
bool xWriteAlign(const CSeq_align &, const string &="") override
virtual bool xWriteRecord(const CGffBaseRecord &)
bool xAssignFeatureMethod(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &) override
virtual bool xWriteFeatureGeneric(CGffFeatureContext &, const CMappedFeat &)
virtual bool xAssignAlignmentSplicedTarget(CGffAlignRecord &, const CSpliced_seg &, const CSpliced_exon &)
virtual bool xWriteFeatureCDJVSegment(CGffFeatureContext &, const CMappedFeat &)
virtual bool xWriteFeatureGene(CGffFeatureContext &, const CMappedFeat &)
bool xAssignFeatureAttributeParent(CGff3FeatureRecord &, CGffFeatureContext &, const CMappedFeat &)
bool xAssignSourceType(CGff3SourceRecord &)
unsigned int m_uPendingCdsId
unsigned int m_uPendingMrnaId
list< pair< CConstRef< CSeq_align >, string > > TAlignCache
virtual bool xAssignAlignmentDensegScores(CGffAlignRecord &, const CAlnMap &, unsigned int)
TRegionMapNew m_RegionMapNew
virtual bool xWriteAlignDenseg(const CSeq_align &, const string &="")
virtual bool xWriteSequenceHeader(CBioseq_Handle)
virtual bool xWriteFeatureCds(CGffFeatureContext &, const CMappedFeat &)
virtual bool xWriteAlignDisc(const CSeq_align &, const string &="")
virtual bool xWriteSequence(CBioseq_Handle)
virtual void x_SortAlignments(TAlignCache &alignCache, CScope &scope)
bool xAssignFeatureAttributeTranscriptId(CGffFeatureRecord &, const CMappedFeat &)
virtual bool xAssignFeatureAttributeParentCds(CGff3FeatureRecord &, CGffFeatureContext &, const CMappedFeat &)
virtual bool xAssignFeatureAttributeParentVDJsegmentCregion(CGff3FeatureRecord &, CGffFeatureContext &, const CMappedFeat &)
TFeatureMap m_PrernaMapNew
bool xAssignAlignmentDensegType(CGffAlignRecord &, const CAlnMap &, unsigned int)
bool xAssignAlignmentDensegMethod(CGffAlignRecord &, const CAlnMap &, unsigned int)
virtual bool xAssignAlignmentSplicedGap(CGffAlignRecord &, const CSpliced_seg &, const CSpliced_exon &)
bool xAssignFeatureAttributeName(CGffFeatureRecord &, const CMappedFeat &)
bool xAssignFeatureType(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &) override
bool WriteHeader() override
Write a file header.
virtual bool xWriteFeatureRna(CGffFeatureContext &, const CMappedFeat &)
virtual bool xAssignAlignmentDensegTarget(CGffAlignRecord &, const CAlnMap &, unsigned int)
virtual bool xWriteProteinFeature(CGffFeatureContext &, const CMappedFeat &)
bool xAssignAlignmentDenseg(CGffAlignRecord &, const CAlnMap &, unsigned int)
virtual bool xWriteAlignSpliced(const CSeq_align &, const string &="")
bool xAssignSourceAttributesOrgMod(CGff3SourceRecord &, const CBioSource &)
bool xAssignFeature(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &) override
bool xAssignFeatureStrand(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &) override
virtual bool xAssignAlignmentDensegSeqId(CGffAlignRecord &, const CAlnMap &, unsigned int)
bool xSplicedSegHasProteinProd(const CSpliced_seg &spliced)
virtual bool xAssignFeatureAttributeParentMrna(CGff3FeatureRecord &, CGffFeatureContext &, const CMappedFeat &)
bool xAssignSourceAttributeDbxref(CGff3SourceRecord &, const CBioSource &)
bool xAssignSourceAttributeGbKey(CGff3SourceRecord &)
bool xAssignSourceAttributes(CGff3SourceRecord &, CBioseq_Handle)
bool xAssignAlignmentSplicedAttributes(CGffAlignRecord &, const CSpliced_seg &, const CSpliced_exon &)
virtual SAnnotSelector & xSetJunkFilteringAnnotSelector()
bool xAssignSourceAttributeIsCircular(CGff3SourceRecord &, CBioseq_Handle)
bool xAssignAlignmentDensegGap(CGffAlignRecord &, const CAlnMap &, unsigned int)
bool xAssignFeaturePhase(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &) override
bool xAssignAlignmentSplicedPhase(CGffAlignRecord &, const CSpliced_seg &, const CSpliced_exon &)
virtual bool xWriteProteinSequence(CBioseq_Handle)
bool xAssignSourceMethod(CGff3SourceRecord &, CBioseq_Handle)
bool xAssignFeatureAttributesFormatIndependent(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &) override
bool x_WriteBioseqHandle(CBioseq_Handle) override
virtual bool xAssignAlignmentSplicedSeqId(CGffAlignRecord &, const CSpliced_seg &, const CSpliced_exon &)
bool xWriteAllChildren(CGffFeatureContext &, const CMappedFeat &) override
void SetBioseqHandle(CBioseq_Handle bsh)
virtual bool x_WriteFeatureContext(CGffFeatureContext &)
bool xAssignSourceAttributesBioSource(CGff3SourceRecord &, CBioseq_Handle)
bool xAssignSourceAttributeName(CGff3SourceRecord &, const CBioSource &)
bool xAssignFeatureAttributeID(CGff3FeatureRecord &, CGffFeatureContext &, const CMappedFeat &)
virtual bool xWriteNucleotideFeature(CGffFeatureContext &, const CMappedFeat &)
bool xAssignSource(CGff3SourceRecord &, CBioseq_Handle)
virtual bool xPassesFilterByViewMode(CBioseq_Handle)
TFeatureMap m_VDJsegmentCregionMapNew
virtual bool xAssignAlignmentScores(CGffAlignRecord &, const CSeq_align &)
unsigned int m_uPendingAlignId
virtual bool xAssignFeatureAttributeParentpreRNA(CGff3FeatureRecord &, CGffFeatureContext &, const CMappedFeat &)
bool xAssignSourceAttributeMolType(CGff3SourceRecord &, CBioseq_Handle)
bool x_WriteSeqAnnotHandle(CSeq_annot_Handle) override
bool xAssignSourceSeqId(CGff3SourceRecord &, CBioseq_Handle)
bool xAssignFeatureAttributeNote(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &) override
bool xAssignSourceEndpoints(CGff3SourceRecord &, CBioseq_Handle)
bool xAssignFeatureEndpoints(CGffFeatureRecord &record, CGffFeatureContext &, const CMappedFeat &mapped_feat) override
bool xAssignFeatureAttributeNcrnaClass(CGffFeatureRecord &, const CMappedFeat &)
bool xAssignFeatureAttributeDbxref(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &) override
virtual bool xAssignAlignmentDensegLocation(CGffAlignRecord &, const CAlnMap &, unsigned int)
void xWriteAlignment(const CGffAlignRecord &record)
unsigned int m_uPendingTrnaId
unsigned int m_uPendingGenericId
virtual bool xWriteNucleotideSequence(CBioseq_Handle)
virtual bool xAssignAlignmentSplicedScores(CGffAlignRecord &, const CSpliced_seg &, const CSpliced_exon &)
virtual bool xWriteFeatureProtein(CGffFeatureContext &, const CMappedFeat &, const CMappedFeat &)
virtual bool xWriteNucleotideFeatureTransSpliced(CGffFeatureContext &, const CMappedFeat &)
bool xAssignSourceAttributeGenome(CGff3SourceRecord &, const CBioSource &)
bool xAssignFeatureAttributesQualifiers(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &) override
bool xAssignSourceAttributesSubSource(CGff3SourceRecord &, const CBioSource &)
bool xAssignFeatureAttributesFormatSpecific(CGffFeatureRecord &, CGffFeatureContext &, const CMappedFeat &) override
virtual bool xAssignFeatureAttributeParentRegion(CGff3FeatureRecord &, CGffFeatureContext &, const CMappedFeat &)
unsigned int m_uPendingGeneId
virtual bool xWriteFeatureTrna(CGffFeatureContext &, const CMappedFeat &)
CGffIdGenerator m_idGenerator
CGff3Writer(CScope &, CNcbiOstream &, unsigned int=fNormal, bool sortAlignments=false)
void AddInsertion(unsigned int)
void AddMatch(unsigned int)
void AddReverseShift(unsigned int)
void AddDeletion(unsigned int)
string StrAttributes() const
void AddForwardShift(unsigned int)
void SetPhase(unsigned int)
virtual string StrType() const
virtual string StrSeqStop() const
virtual string StrAttributes() const
const CSeq_loc & GetLocation() const
bool DropAttributes(const string &)
virtual string StrScore() const
void SetSeqId(const string &)
void SetLocation(unsigned int, unsigned int, ENa_strand=objects::eNa_strand_unknown)
bool GetAttributes(const string &, vector< string > &) const
void SetType(const string &)
virtual string StrPhase() const
void SetMethod(const string &)
void SetStrand(ENa_strand)
bool SetAttribute(const string &, const string &)
virtual string StrSeqStart() const
void SetScore(const CScore &)
virtual string StrSeqId() const
bool AddAttribute(const string &, const string &)
virtual string StrStrand() const
bool CanGetLocation() const
virtual string StrMethod() const
void AssignShouldInheritPseudo(bool shouldInheritPseudo)
feature::CFeatTree & FeatTree()
CBioseq_Handle BioseqHandle() const
CMappedFeat FindBestGeneParent(const CMappedFeat &mf)
void InitLocation(const CSeq_loc &)
const CSeq_loc & Location() const
void SetLocation(const CSeq_interval &, unsigned int, unsigned int=0)
void SetEndpoints(unsigned int start, unsigned int stop, ENa_strand strand)
std::string GetGffId(const CMappedFeat &, CGffFeatureContext &fc)
std::string GetGffSourceId(CBioseq_Handle)
std::string GetNextGffExonId(const std::string &)
bool Match(const CObject_id &oid2) const
@RNA_ref.hpp User-defined methods of the data storage class.
static string GetRnaTypeName(const CRNA_ref::EType rna_type)
ESubtype GetSubtype(void) const
static const vector< string > & GetRecombinationClassList()
@ eSubtype_transit_peptide
@ eSubtype_misc_structure
@ eSubtype_mobile_element
@ eSubtype_transit_peptide_aa
@ eSubtype_non_std_residue
@ eSubtype_sig_peptide_aa
@ eSubtype_mat_peptide_aa
static const vector< string > & GetRegulatoryClassList()
TSeqPos GetSeqStop(TDim row) const
const CSeq_id & GetSeq_id(TDim row) const
Get seq-id (the first one if segments have different ids).
TSeqPos GetSeqStart(TDim row) const
ENa_strand GetSeqStrand(TDim row) const
Get strand (the first one if segments have different strands).
void Validate(bool full_test=false) const
namespace ncbi::objects::
TSeqPos GetLength(void) const
static bool FeatureToSoType(const CSeq_feat &, string &)
bool HasField(const string &str, const string &delim=".", NStr::ECase use_case=NStr::eCase) const
Verify that a named field exists.
const CUser_field & GetField(const string &str, const string &delim=".", NStr::ECase use_case=NStr::eCase) const
Access a named field in this user object.
static bool IsTransspliced(const CSeq_feat &feature)
static void ChangeToPackedInt(CSeq_loc &loc)
static bool IsSequenceCircular(CBioseq_Handle)
static bool IsProteinSequence(CBioseq_Handle)
static bool GetSubSourceSubType(const CSubSource &, string &, string &)
static bool GetOrgModSubType(const COrgMod &, string &, string &)
static bool GetDbTag(const CDbtag &, string &)
static bool CompareFeatures(const CMappedFeat &lhs, const CMappedFeat &rhs)
static bool GetTranssplicedEndpoints(const CSeq_loc &loc, unsigned int &inPoint, unsigned int &outPoint)
static bool GetIdType(CBioseq_Handle, string &)
static bool IsNucleotideSequence(CBioseq_Handle)
static CConstRef< CUser_object > GetModelEvidence(CMappedFeat)
static bool GetGenomeString(const CBioSource &, string &)
static bool GetBiomol(CBioseq_Handle, string &)
virtual const CRange< TSeqPos > & GetRange(void) const
CRange< TSeqPos > m_Range
virtual SAnnotSelector & SetAnnotSelector(void)
container_type::iterator iterator
const_iterator end() const
const_iterator find(const key_type &key) const
const_iterator find(const key_type &key) const
const_iterator end() const
bool Empty(const CNcbiOstrstream &src)
static const char location[]
void sGetWrapInfo(const list< CRef< CSeq_interval > > &subInts, CGffFeatureContext &fc, unsigned int &wrapSize, unsigned int &wrapPoint)
bool s_RangeContains(const CRange< TSeqPos > &range, const TSeqPos pos)
string s_GetAlignID(const CSeq_align &align)
bool sGetMethodFromModelEvidence(const CMappedFeat &mf, string &method)
#define IS_DELETION(sf, tf)
bool sInheritScores(const CSeq_align &alignFrom, CSeq_align &alignTo)
static string s_GetSequenceRegionId(CBioseq_Handle &bsh)
string sBestMatchType(const CSeq_id &source)
#define IS_INSERTION(sf, tf)
unsigned int TSeqPos
Type for sequence locations and lengths.
void swap(NCBI_NS_NCBI::pair_base_member< T1, T2 > &pair1, NCBI_NS_NCBI::pair_base_member< T1, T2 > &pair2)
#define NCBI_THROW(exception_class, err_code, message)
Generic macro to throw an exception, given the exception class, error code and message string.
const string & GetMsg(void) const
Get message string.
string ReportAll(TDiagPostFlags flags=eDPF_Exception) const
Report all exceptions.
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Set object to copy of another one.
static EAccessionInfo IdentifyAccession(const CTempString &accession, TParseFlags flags=fParse_AnyRaw)
Deduces information from a bare accession a la WHICH_db_accession; may report false negatives on prop...
void GetLabel(string *label, ELabelType type=eDefault, TLabelFlags flags=fLabel_Default) const
Append a label for this Seq-id to the supplied string.
CConstRef< CSeq_id > GetSeqId(void) const
EAccessionInfo
For IdentifyAccession (below)
static CSeq_id_Handle GetHandle(const CSeq_id &id)
Normal way of getting a handle, works for any seq-id.
@ eContent
Untagged human-readable accession or the like.
void SetPacked_int(TPacked_int &v)
bool IsPartialStart(ESeqLocExtremes ext) const
check start or stop of location for e_Lim fuzz
ENa_strand GetStrand(void) const
Get the location's strand.
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Override Assign() to incorporate cache invalidation.
TRange GetTotalRange(void) const
TSeqPos GetStart(ESeqLocExtremes ext) const
Return start and stop positions of the seq-loc.
const CSeq_id * GetId(void) const
Get the id of the location return NULL if has multiple ids or no id at all.
bool IsPartialStop(ESeqLocExtremes ext) const
TSeqPos GetStop(ESeqLocExtremes ext) const
CMappedFeat GetBestParentForFeat(const CMappedFeat &feat, CSeqFeatData::ESubtype parent_subtype, CFeatTree *feat_tree=0, const SAnnotSelector *base_sel=0)
CMappedFeat GetBestMrnaForCds(const CMappedFeat &cds_feat, CFeatTree *feat_tree=0, const SAnnotSelector *base_sel=0)
const CSeq_id & GetId(const CSeq_loc &loc, CScope *scope)
If all CSeq_ids embedded in CSeq_loc refer to the same CBioseq, returns the first CSeq_id found,...
CSeq_id_Handle GetIdHandle(const CSeq_loc &loc, CScope *scope)
string GetAccessionForId(const objects::CSeq_id &id, CScope &scope, EAccessionVersion use_version=eWithAccessionVersion, EGetIdType flags=0)
Retrieve the accession string for a Seq-id.
const CBioSource * GetBioSourceForBioseq(const CBioseq_Handle &bsh)
Find a BioSource for the given Bioseq: If it's a protein then look for the source feature of the prod...
@ eGetId_Best
return the "best" gi (uses FindBestScore(), with CSeq_id::CalculateScore() as the score function
@ eGetId_ForceAcc
return only an accession based seq-id
double GetProteinWeight(const CBioseq_Handle &handle, const CSeq_loc *location=0, TGetProteinWeight opts=0)
Handles the standard 20 amino acids and Sec and Pyl; treats Asx as Asp, Glx as Glu,...
CBioseq_Handle GetBioseqHandleFromTSE(const CSeq_id &id, const CTSE_Handle &tse)
Get bioseq handle for sequence withing one TSE.
CRef< CSeq_loc > Map(const CSeq_loc &src_loc)
Map seq-loc.
CBioseq_Handle GetBioseqHandle(const CSeq_id &id)
Get bioseq handle by seq-id.
void SetFuzzOption(TFuzzOption newOption)
CBioseq_Handle GetObjectHandle(const CBioseq &bioseq, EMissing action=eMissing_Default)
@ eProductToLocation
Map from the feature's product to location.
const string & GetNamedQual(const CTempString &qual_name) const
Return a named qualifier.
CConstRef< CSeq_id > GetLocalIdOrNull(void) const
bool IsSetComment(void) const
CConstRef< CBioseq > GetCompleteBioseq(void) const
Get the complete bioseq.
CSeq_entry_Handle GetParentEntry(void) const
Get parent Seq-entry handle.
const CSeqFeatData & GetData(void) const
bool CanGetInst(void) const
TSeqPos GetBioseqLength(void) const
const CSeq_id_Handle & GetSeq_id_Handle(void) const
Get handle of id used to obtain this bioseq handle.
CConstRef< CSeq_annot > GetCompleteSeq_annot(void) const
Complete and return const reference to the current seq-annot.
bool IsSetProduct(void) const
TInst_Topology GetInst_Topology(void) const
const string & GetComment(void) const
bool CanGetInst_Strand(void) const
TInst_Length GetInst_Length(void) const
CConstRef< CSeq_id > GetNonLocalIdOrNull(void) const
Find a non-local ID if present, consulting assembly details if all IDs for the overall sequence are l...
CScope & GetScope(void) const
Get scope this handle belongs to.
CScope & GetScope(void) const
Get scope this handle belongs to.
CSeqFeatData::ESubtype GetFeatSubtype(void) const
CSeqFeatData::E_Choice GetFeatType(void) const
const CSeq_feat::TQual & GetQual(void) const
const TId & GetId(void) const
bool IsSetData(void) const
const TInst & GetInst(void) const
CSeq_id_Handle GetProductId(void) const
SAnnotSelector & SetSourceLoc(const CSeq_loc &loc)
Set filter for source location of annotations.
const CSeq_loc & GetLocation(void) const
const CSeq_feat & GetOriginalFeature(void) const
Get original feature with unmapped location/product.
SAnnotSelector & SetLimitSeqAnnot(const CSeq_annot_Handle &limit)
Limit annotations to those from the seq-annot only.
const CSeq_feat & GetMappedFeature(void) const
Feature mapped to the master sequence.
SAnnotSelector & IncludeFeatType(TFeatType type)
Include feature type in the search.
const CSeq_loc & GetProduct(void) const
SAnnotSelector & SetResolveNone(void)
SetResolveNone() is equivalent to SetResolveMethod(eResolve_None).
CSeq_id_Handle GetLocationId(void) const
CConstRef< C > ConstRef(const C *object)
Template function for conversion of const object pointer to CConstRef.
CRef< C > Ref(C *object)
Helper functions to get CRef<> and CConstRef<> objects.
TObjectType & GetNCObject(void) const
Get object.
position_type GetLength(void) const
TThisType IntersectionWith(const TThisType &r) const
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
static bool IsBlank(const CTempString str, SIZE_TYPE pos=0)
Check if a string is blank (has no text).
static string IntToString(int value, TNumToStringFlags flags=0, int base=10)
Convert int to string.
static string UIntToString(unsigned int value, TNumToStringFlags flags=0, int base=10)
Convert UInt to string.
static enable_if< is_arithmetic< TNumeric >::value||is_convertible< TNumeric, Int8 >::value, string >::type NumericToString(TNumeric value, TNumToStringFlags flags=0, int base=10)
Convert numeric value to string.
static string URLEncode(const CTempString str, EUrlEncode flag=eUrlEnc_SkipMarkChars)
URL-encode string.
static string & ToLower(string &str)
Convert string to lower case – string& version.
const TSubtype & GetSubtype(void) const
Get the Subtype member data.
bool IsSetOrg(void) const
Check if a value has been assigned to Org data member.
bool IsSetSubtype(void) const
Check if a value has been assigned to Subtype data member.
const TOrg & GetOrg(void) const
Get the Org member data.
TTo GetTo(void) const
Get the To member data.
TFrom GetFrom(void) const
Get the From member data.
const TStr & GetStr(void) const
Get the variant data.
bool IsStr(void) const
Check if variant Str is selected.
bool IsId(void) const
Check if variant Id is selected.
const TData & GetData(void) const
Get the Data member data.
bool IsStr(void) const
Check if variant Str is selected.
const TStr & GetStr(void) const
Get the variant data.
bool IsSetData(void) const
Check if a value has been assigned to Data data member.
const TMod & GetMod(void) const
Get the Mod member data.
bool IsSetDb(void) const
ids in taxonomic or culture dbases Check if a value has been assigned to Db data member.
const TDb & GetDb(void) const
Get the Db member data.
bool IsSetMod(void) const
Check if a value has been assigned to Mod data member.
bool IsSetOrgname(void) const
Check if a value has been assigned to Orgname data member.
const TOrgname & GetOrgname(void) const
Get the Orgname member data.
const TName & GetName(void) const
Get the Name member data.
bool IsSetName(void) const
protein name Check if a value has been assigned to Name data member.
TType GetType(void) const
Get the Type member data.
bool IsSetExt(void) const
generic fields for ncRNA, tmRNA, miscRNA Check if a value has been assigned to Ext data member.
bool IsGen(void) const
Check if variant Gen is selected.
const TGen & GetGen(void) const
Get the variant data.
bool IsSetType(void) const
Check if a value has been assigned to Type data member.
bool IsSetClass(void) const
for ncRNAs, the class of non-coding RNA: examples: antisense_RNA, guide_RNA, snRNA Check if a value h...
const TExt & GetExt(void) const
Get the Ext member data.
const TClass & GetClass(void) const
Get the Class member data.
const TId & GetId(void) const
Get the Id member data.
const TDenseg & GetDenseg(void) const
Get the variant data.
bool IsSetProduct_type(void) const
Check if a value has been assigned to Product_type data member.
TScore & SetScore(void)
Assign a value to Score data member.
const TGenomic_id & GetGenomic_id(void) const
Get the Genomic_id member data.
E_Choice Which(void) const
Which variant is currently selected.
TMatch GetMatch(void) const
Get the variant data.
bool IsSetId(void) const
alignment id Check if a value has been assigned to Id data member.
const TProduct_id & GetProduct_id(void) const
Get the Product_id member data.
bool IsSetScores(void) const
score for each seg Check if a value has been assigned to Scores data member.
TGenomic_start GetGenomic_start(void) const
Get the Genomic_start member data.
bool IsSetSegs(void) const
Check if a value has been assigned to Segs data member.
TDiag GetDiag(void) const
Get the variant data.
TProduct_type GetProduct_type(void) const
Get the Product_type member data.
TMismatch GetMismatch(void) const
Get the variant data.
TGenomic_strand GetGenomic_strand(void) const
Get the Genomic_strand member data.
list< CRef< CObject_id > > TId
bool IsSetGenomic_strand(void) const
genomic-strand represents the strand of translation Check if a value has been assigned to Genomic_str...
bool CanGetProduct_strand(void) const
Check if it is safe to call GetProduct_strand method.
const TParts & GetParts(void) const
Get the Parts member data.
const TProduct_start & GetProduct_start(void) const
Get the Product_start member data.
const TProduct_end & GetProduct_end(void) const
Get the Product_end member data.
bool IsSetProduct_id(void) const
product is either protein or transcript (cDNA) Check if a value has been assigned to Product_id data ...
const TSpliced & GetSpliced(void) const
Get the variant data.
TGenomic_ins GetGenomic_ins(void) const
Get the variant data.
bool IsSetGenomic_strand(void) const
Check if a value has been assigned to Genomic_strand data member.
const TScores & GetScores(void) const
Get the Scores member data.
const TExons & GetExons(void) const
Get the Exons member data.
TGenomic_strand GetGenomic_strand(void) const
Get the Genomic_strand member data.
bool IsSetScore(void) const
for whole alignment Check if a value has been assigned to Score data member.
TGenomic_end GetGenomic_end(void) const
Get the Genomic_end member data.
bool IsSpliced(void) const
Check if variant Spliced is selected.
const Tdata & Get(void) const
Get the member data.
TProduct_strand GetProduct_strand(void) const
Get the Product_strand member data.
const TScore & GetScore(void) const
Get the Score member data.
const TScores & GetScores(void) const
Get the Scores member data.
TProduct_ins GetProduct_ins(void) const
Get the variant data.
const TDisc & GetDisc(void) const
Get the variant data.
const TId & GetId(void) const
Get the Id member data.
const Tdata & Get(void) const
Get the member data.
const TSegs & GetSegs(void) const
Get the Segs member data.
bool IsSetScores(void) const
scores for this exon Check if a value has been assigned to Scores data member.
E_Choice Which(void) const
Which variant is currently selected.
@ e_Product_ins
insertion in product sequence (i.e. gap in the genomic sequence)
@ e_Diag
both sequences are represented, there is sufficient similarity between product and genomic sequences....
@ e_Genomic_ins
insertion in genomic sequence (i.e. gap in the product sequence)
@ e_Match
both sequences represented, product and genomic sequences match
@ e_Mismatch
both sequences represented, product and genomic sequences do not match
bool IsProt(void) const
Check if variant Prot is selected.
const TRegion & GetRegion(void) const
Get the variant data.
TFrame GetFrame(void) const
Get the Frame member data.
const TData & GetData(void) const
Get the Data member data.
const TCdregion & GetCdregion(void) const
Get the variant data.
const TProt & GetProt(void) const
Get the variant data.
vector< CRef< CGb_qual > > TQual
const TRna & GetRna(void) const
Get the variant data.
bool IsRna(void) const
Check if variant Rna is selected.
bool IsSetFrame(void) const
Check if a value has been assigned to Frame data member.
void SetTo(TTo value)
Assign a value to To data member.
ENa_strand
strand of nucleic acid
const Tdata & Get(void) const
Get the member data.
TFrom GetFrom(void) const
Get the From member data.
bool IsPacked_int(void) const
Check if variant Packed_int is selected.
bool IsSetTo(void) const
Check if a value has been assigned to To data member.
bool CanGet(void) const
Check if it is safe to call Get method.
TTo GetTo(void) const
Get the To member data.
bool IsWhole(void) const
Check if variant Whole is selected.
bool IsSetFrom(void) const
Check if a value has been assigned to From data member.
const TPacked_int & GetPacked_int(void) const
Get the variant data.
const TSource & GetSource(void) const
Get the variant data.
const TAnnot & GetAnnot(void) const
Get the Annot member data.
TLength GetLength(void) const
Get the Length member data.
@ e_Source
source of materials, includes Org-ref
where boath are integers</td > n< td ></td > n</tr > n< tr > n< td > tse</td > n< td > optional</td > n< td > String</td > n< td class=\"description\"> TSE option controls what blob is whole
range(_Ty, _Ty) -> range< _Ty >
constexpr auto sort(_Init &&init)
constexpr auto front(list< Head, As... >, T=T()) noexcept -> Head
constexpr bool empty(list< Ts... >) noexcept
const struct ncbi::grid::netcache::search::fields::KEY key
const GenericPointer< typename T::ValueType > T2 value
const CharType(& source)[N]
CConstRef< CSeq_id > GetBestId(const CBioseq &bioseq)
static SLJIT_INLINE sljit_ins st(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
static SLJIT_INLINE sljit_ins msg(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
bool operator()(const pair< CConstRef< CSeq_align >, string > &p1, const pair< CConstRef< CSeq_align >, string > &p2)
SCompareAlignments(CScope &scope)