(
constobjects::CSeq_id&
id) : m_Id(&id) {}
65 return*m_Id < *other.
m_Id;
68 operator constobjects::CSeq_id& ()
const{
return*m_Id; }
89 #define BLAST_DEFAULT_MATRIX "BLOSUM62" 125eSequenceRetrieval = (1 << 2),
126eMergeAlign = (1 << 3),
127eShowMiddleLine = (1 << 4),
130eShowIdentity = (1 << 7),
131eShowBlastInfo = (1 << 8),
133eShowBlastStyleId = (1 << 9),
137eNewTargetWindow = (1 << 10),
139eShowCdsFeature = (1 << 11),
143eShowGeneFeature = (1 << 12),
147eMasterAnchored = (1 << 13),
150eColorDifferentBases = (1 << 14),
153eTranslateNucToNucAlignment = (1 << 15),
155eShowBl2seqLink = (1 << 16),
156eDynamicFeature = (1 << 17),
157eShowNoDeflineInfo = (1 << 18),
159eHyperLinkSlaveSeqid = (1 << 19),
160eHyperLinkMasterSeqid = (1 << 20),
161eDisplayTreeView = (1 << 21),
162eShowInfoOnMouseOverSeqid = (1 << 22),
166eShowSortControls = (1 << 23),
167eShowGeneInfo = (1 << 24),
168eShowCheckBox = (1 << 25),
170eShowEndGaps = (1 << 26),
172eShowGapOnlyLines = (1 << 27),
173eShowRawScoreOnly = (1 << 28),
176eShowTranslationForLocalSeq = (1 << 29),
180eShowAlignStatsForMultiAlignView = (1 << 30),
182eShowSequencePropertyLabel = (1 << 31)
192m_TranslatedFrameForLocalSeq = frame;
221eDisplayResourcesLinks = (1 << 0),
222eDisplayDownloadLink = (1 << 1)
235objects::CScope & scope,
237list < FeatureInfo * >* external_feature =
NULL,
250 const string& mv_build_name)
253m_MapViewerBuildName = mv_build_name;
257 voidDisplayPairwiseSeqalign(
CNcbiOstream&
out,unordered_set <string> selectedIDs);
317m_NumAlignToShow = num;
331m_MasterGeneticCode =
code;
338m_SlaveGeneticCode =
code;
402m_currAlignSeqListIndex = alignSeqListIndex;
416m_PreComputedResID = preComputedResID;
435PrepareBlastUngappedSeqalign(
constobjects::CSeq_align_set & alnset);
443PrepareBlastUngappedSeqalignEx(
constobjects::CSeq_align_set & alnset);
450PrepareBlastUngappedSeqalignEx2(objects::CSeq_align_set & alnset);
457m_DomainInfo = domain;
462m_SeqPropertyLabel.reset(SequencePropertyLabel, ownership);
467m_ResultPositionIndex = index;
516vector<objects::CAlnMap::TSignedRange>
rowRng;
547list<CRef<objects::CSeq_id> >
ids;
700 stringx_PrintDefLine(
constobjects::CBioseq_Handle& bsp_handle,
SAlnInfo* aln_vec_info);
713 voidx_OutputSeq(
string& sequence,
constobjects::CSeq_id&
id,
intstart,
714 int len,
intframe,
int row,
boolcolor_mismatch,
756 intcustom_genetic_code,
757objects::CScope & scope,
758objects::CSeqFeatData::E_Choice choice,
int row,
761list<objects::ENa_strand>& feat_seq_strand,
762 boolfill_feat_range)
const;
772 voidx_FillInserts(
int row, objects::CAlnMap::TSignedRange& aln_range,
773 intaln_start, list < string >& inserts,
774 string& insert_pos_string,
784 voidx_DoFills(
int row, objects::CAlnMap::TSignedRange& aln_range,
intaln_start,
786list < string > &inserts)
const;
792 stringx_GetSegs(
int row)
const;
802 voidx_FillIdentityInfo(
const string& sequence_standard,
803 const string& sequence,
int&
match,
804 int&
positive,
string& middle_line);
817 intaln_from,
intaln_to,
intaln_stop,
818 charpattern_char,
stringpattern_id,
819 string& alternative_feat_str,
intgenetic_code)
const;
829objects::CAlnMap::TSeqPosList& insert_aln_start,
830objects::CAlnMap::TSeqPosList& insert_seq_start,
831objects::CAlnMap::TSeqPosList& insert_length,
839 stringx_GetGeneLinkUrl(
intgene_id);
864 voidx_GetQueryFeatureList(
introw_num,
intaln_stop,
865vector<TSAlnFeatureInfoList>& features)
const;
870 voidx_FillSeqid(
string&
id,
int row)
const;
873 intx_GetLinkout(
constobjects::CSeq_id &
id);
889 string& master_feat_str,
912 virtual stringx_DisplayRowData(
SAlnRowInfo*alnRoInfo);
914 stringx_DisplayRowDataSet(
SAlnRowInfo*alnRoInfo,
intaln_start, vector<int> &prev_stop);
915 voidx_ProcessRowDataSet(
SAlnRowInfo*alnRoInfo,
intaln_start, vector<int> &prev_stop);
924 SAlnInfo* aln_vec_info,
boolshowSortControls);
926 voidx_PrepareIdentityInfo(
SAlnInfo* aln_vec_info);
930 voidx_PrepareDynamicFeatureInfo(
SAlnInfo* aln_vec_info);
936 stringx_FormatSingleAlign(
SAlnInfo* aln_vec_info);
937 stringx_FormatAlignSortInfo();
938 stringx_FormatAlnBlastInfo(
SAlnInfo* aln_vec_info);
939 stringx_FormatIdentityInfo(
stringalignInfo,
SAlnInfo* aln_vec_info);
940 stringx_FormatDynamicFeaturesInfo(
stringalignInfo,
SAlnInfo* aln_vec_info);
941 stringx_FormatOneDynamicFeature(
stringviewerURL,
947 voidx_PreProcessSeqAlign(objects::CSeq_align_set &actual_aln_list);
948 voidx_CalcUrlLinksParams(
constobjects::CSeq_align& align,
stringidString,
stringtoolUrl);
954 voidx_InitAlignParams(objects::CSeq_align_set &actual_aln_list);
957 voidx_PreProcessSingleAlign(objects::CSeq_align_set::Tdata::const_iterator currSeqAlignIter,
958objects::CSeq_align_set &actual_aln_list,
960 stringx_FormatAlnHSPLinks(
string&alignInfo);
963 constobjects::CBioseq_Handle& bsp_handle,
964list<string> &use_this_seqid,
966 intnumLinkoutReads);
970 stringx_FormatDefLinesHeader(
constobjects::CBioseq_Handle& bsp_handle,
SAlnInfo* aln_vec_info);
971 stringx_InitDefLinesHeader(
constobjects::CBioseq_Handle& bsp_handle,
SAlnInfo* aln_vec_info);
972 stringx_MapDefLine(
SAlnDispParams*alnDispParams,
boolisFisrt,
boollinkout,
boolhideDefline,
intseqLength);
976 voidx_GetDomainInfo(
introw_num,
intaln_stop,
977vector<TSAlnFeatureInfoList>& retval)
const;
979 voidx_AddTranslationForLocalSeq(vector<TSAlnFeatureInfoList>& retval,
980vector<string>& sequence)
const;
User-defined methods of the data storage class.
#define BLAST_DEFAULT_MATRIX
Example:
DisplayOption
option for alignment display
void x_DisplayAlnvecInfoHead(CNcbiOstream &out, SAlnInfo *aln_vec_info)
void SetLineLen(size_t len)
number of bases or amino acids per line
list< string > m_HSPLinksList
TranslatedFrameForLocalSeq
CDisplaySeqalign(const CDisplaySeqalign &other)
Prohibit copy constructor.
list< CRef< DomainInfo > > * m_DomainInfo
void SetLinkoutDB(ILinkoutDB *l, const string &mv_build_name)
Set the linkout implementation.
objects::CGetFeature * m_DynamicFeature
list< FeatureInfo * > * m_QueryFeature
external feature such as phiblast
SeqLocColorOption
colors for seqloc display
void SetQueryNumber(int number)
for linking to mapviewer
CNcbiIfstream * m_ConfigFile
string m_CurrAlnID_Lbl
gi(if exists) that is used for html formatting otherwise id without db part
int m_currAlignHsp
Current HSP number for single alignmnet.
AlignType
Alignment display type, specific for showing blast-related info.
void SetSeqLocColor(SeqLocColorOption option=eBlack)
color for seqloc display such as masked region
SeqLocColorOption m_SeqLocColor
ILinkoutDB * m_LinkoutDB
Reference to LinkoutDB implementation. Not owned by this class.
void SetMasterDomain(list< CRef< DomainInfo > > *domain)
void SetMiddleLineStyle(MiddleLineStyle option=eBar)
set middle line style
TSubjectMaskMap m_SubjectMasks
Map of subject masks.
void SetSeqLocChar(SeqLocCharOption option=eX)
character style for seqloc display such as masked region
list< string > m_CustomLinksList
void SetAlignOption(int option)
Set functions.
string m_CurrAlnID_DbLbl
gi(if exists) that is used for html formatting otherwise id with db part like ti:xxxxxxx or GNOMON:XX...
void SetRid(string rid)
set blast request id
void SetPreComputedResID(string preComputedResID)
Sets CDD precomputed results ID.
int m_ResultPositionIndex
result position index for multiple query case
map< string, struct SAlnLinksParams > m_AlnLinksParams
void SetTranslatedFrameForLocalSeq(TranslatedFrameForLocalSeq frame)
SAlnDispParams * x_FillAlnDispParams(const objects::CBioseq_Handle &bsp_handle)
void x_DisplayIdentityInfo(SAlnRowInfo *alnRoInfo, CNcbiOstream &out)
Display identities,positives,frames etc.
CRef< objects::CObjectManager > m_FeatObj
void SetDbType(bool is_na)
database type.
SeqLocCharOption m_SeqLocChar
void SetCddRid(string cdd_rid)
CDD rid for constructing linkout.
bool m_UseLongSeqIds
print long sequence ids (with gi and accession with database source)
objects::CScope & m_Scope
void SetAlignSeqListIndex(int alignSeqListIndex)
Set subject seq index.
void SetResultPositionIndex(int index)
AutoPtr< const vector< string > > m_SeqPropertyLabel
void SetQueryAnchoredIndex(int queryAnchoredSetIndex)
Sets index of Query anchored alignment set to display or download.
list< CRef< SAlnSeqlocInfo > > TSAlnSeqlocInfoList
List of SAlnSeqlocInfo structures.
string m_MapViewerBuildName
mapviewer build name associated with the sequences in the BLAST database out of which the results are...
CAlignFormatUtil::SLinkoutInfo m_LinkoutInfo
int m_cur_align
Gene info reader object, reads Gene info entries from files.
void SetDbName(string name)
set blast database name
void SetSequencePropertyLabel(const vector< string > *SequencePropertyLabel, EOwnership ownership=eNoOwnership)
CDisplaySeqalign(const objects::CSeq_align_set &seqalign, objects::CScope &scope, list< CRef< CSeqLocInfo > > *mask_seqloc=NULL, list< FeatureInfo * > *external_feature=NULL, const char *matrix_name="BLOSUM62")
Constructors.
int m_QueryAnchoredSetIndex
string x_PrintDynamicFeatures(void)
SAlignTemplates * m_AlignTemplates
void SetCgiContext(CCgiContext &ctx)
string m_AlignedRegionsUrl
string m_PreComputedResID
CDD precomputed results ID.
void SetAlignType(AlignType type)
Needed only if you want to display positives and strand.
void SetBlastType(string type)
internal blast type
void SetEntrezTerm(string term)
for constructing structure linkout
list< CRef< SAlnFeatureInfo > > TSAlnFeatureInfoList
string m_CurrAlnAccession
accession that is displayed
CConstRef< objects::CSeq_align_set > m_SeqalignSetRef
reference to seqalign set
list< CRef< SInsertInformation > > TSInsertInformationList
int m_currAlignSeqListIndex
Current subject seq index in descriptions table.
SeqLocCharOption
character used to display seqloc, such as masked sequence
static TGi x_GetGiForSeqIdList(const list< CRef< objects::CSeq_id > > &ids)
list< string > m_LinkoutList
MiddleLineStyle m_MidLineStyle
void SetMasterGeneticCode(int code)
Set genetic code for master sequence.
CDisplaySeqalign & operator=(const CDisplaySeqalign &rhs)
Prohibit assignment operator.
TranslatedFrameForLocalSeq m_TranslatedFrameForLocalSeq
list< CRef< CSeqLocInfo > > * m_Seqloc
display character option for list of seqloc
void SetSlaveGeneticCode(int code)
Set Genetic cod for slaves.
void SetNumAlignToShow(int num)
Display top num seqalign Note this only limit the number of seqalign regardless of the seqids.
MiddleLineStyle
Middle line style option.
CRef< objects::CScope > m_featScope
SAlnDispParams * x_FillAlnDispParams(const CRef< objects::CBlast_def_line > &iter, const objects::CBioseq_Handle &bsp_handle, list< string > &use_this_seqid, TGi firstGi, int numLinkoutReads)
int m_NumBlastDefLines
Number of subject sequence deflines.
void UseLongSequenceIds(void)
Sets usage of long sequence ids (database|accession)
void SetAlignTemplates(SAlignTemplates *alignTemplates)
map< SSeqIdKey, TMaskedQueryRegions > TSubjectMaskMap
Definition of std::map of objects::CSeq_ids to masks.
std::ofstream out("events_result.xml")
main entry point for tests
SStrictId_Tax::TId TTaxId
Taxon id type.
@ eNoOwnership
No ownership is assumed.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define END_SCOPE(ns)
End the previously defined scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define BEGIN_SCOPE(ns)
Define a new scope.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
IO_PREFIX::ifstream CNcbiIfstream
Portable alias for ifstream.
enum ENcbiOwnership EOwnership
Ownership relations between objects.
#define NCBI_ALIGN_FORMAT_EXPORT
Process information in the NCBI Registry, including working with configuration files.
static int match(PCRE2_SPTR start_eptr, PCRE2_SPTR start_ecode, uint16_t top_bracket, PCRE2_SIZE frame_size, pcre2_match_data *match_data, match_block *mb)
vector< TMaskedQueryRegions > TSeqLocInfoVector
Collection of masked regions for all queries in a BLAST search.
static SLJIT_INLINE sljit_ins l(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
#define row(bind, expected)
Structure that holds information needed for creation seqID URL in descriptions and alignments.
structure for showing domains on the master sequence
bool is_subject_start_valid
CConstRef< objects::CSeq_loc > subject_seqloc
bool is_subject_stop_valid
CConstRef< objects::CSeq_loc > seqloc
structure for store feature display info
CConstRef< objects::CSeq_loc > seqloc
string alignRowTmpl
Template for displayin actual pairwise alignment - BLAST_ALIGN_ROWS.
string alnTitlesTmpl
Template for displaying multiple defline titles.
string alignFeatureLinkTmpl
Template for displaying align features link -ALN_FEATURES_LINK.
string alignInfoFrameTmpl
Template for displaying frame data ALIGN_PARAMS_FRAME, part of BLAST_ALIGN_PARAMS.
string alnSeqInfoTmpl
Template for displaying sequnce link in defline.
string alignQueryAnchTempl
Template for displaying one set of query anchored alignment - BLAST_QUERY_ANCH_NAV.
string alnTitlesLinkTmpl
Template for displaying link for more defline titles.
string alignInfoMethodTmpl
Template for displaying frame data ALIGN_PARAMS_METHOD, part of BLAST_ALIGN_PARAMS.
string alignFeatureTmpl
Template for displaying align features -ALN_FEATURES.
string sortInfoTmpl
Template for displaying Sort by header - SORT_ALIGNS_SEQ.
string alnDefLineTmpl
Template for displaying one defline ALN_DEFLINE_ROW.
string alignInfoTmpl
Template for displaying singe align params - BLAST_ALIGN_PARAMS_NUC,BLAST_ALIGN_PARAMS_PROT.
string alignHeaderTmpl
Template for displaying header,deflines and gene info - BLAST_ALIGN_HEADER.
string alignRowTmplLast
Template for displayin actual last pairwise alignment - BLAST_ALIGN_ROWS_LST.
string label
sequence label
CRef< objects::CSeq_id > seqID
seqID used in defline
string linkoutStr
string containing all linkout urls
CAlignFormatUtil::SSeqURLInfo * seqUrlInfo
list< CRef< objects::CSeq_id > > ids
TGi gi
gi used in defline
string title
sequnce title
string id_url
entrz, mapview etc id url
string dumpGnlUrl
download sequnce url
store feature information
CRange< TSignedSeqPos > aln_range
CRef< FeatureInfo > feature
list< TSeqPos > feature_start
store alnvec and score info
CRange< TSeqPos > actual_range
CRef< objects::CAlnVec > alnvec
vector< objects::SFeatInfo * > feat_list
objects::SFeatInfo * feat5
list< string > use_this_seqid
objects::SFeatInfo * feat3
Info used to contstruct seq url obtained from processing the whole seq align for particular subject s...
string segs
seq align segments in the format seg1start-seg1end,seg2start-seg2end,
bool flip
opposite starnds indicator
CRange< TSeqPos > * subjRange
subject sequnce range
SAlnLinksParams()
Constructor.
vector< string > align_stats
vector< objects::CAlnMap::TSignedRange > rowRng
vector< objects::CAlnMap::TSeqPosList > insertLength
bool show_seq_property_label
vector< double > percent_ident
vector< objects::CAlnMap::TSeqPosList > seqStarts
vector< string > seq_property_label
vector< TSAlnSeqlocInfoList > masked_regions
objects::CAlnMap::TSignedRange currRange
vector< objects::CAlnMap::TSeqPosList > insertAlnStart
vector< TSAlnFeatureInfoList > bioseqFeature
vector< objects::CAlnMap::TSeqPosList > insertStart
vector< string > sequence
vector< string > seqidArray
vector< objects::CAlnMap::TSeqPosList > seqStops
int max_seq_property_label
vector< int > align_length
CRef< CSeqLocInfo > seqloc
CRange< TSignedSeqPos > aln_range
internal insert information aln_start.
Auxiliary type to embed a CConstRef<objects::CSeq_id> in STL containers that require operator< to be ...
SSeqIdKey(const objects::CSeq_id &id)
Constructor.
CConstRef< objects::CSeq_id > m_Id
The wrapped object.
bool operator<(const SSeqIdKey &other) const
Operator< to comply with STL container requirements.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4