31
31
* Version Creation Date: 05/17/2000
35
35
* File Description: Functions to print simplified BLAST output (XML)
38
38
* $Log: xmlblast.h,v $
39
* Revision 6.14 2004/04/29 19:55:35 dondosha
40
* Mask filtered locations in query sequence lines
42
* Revision 6.13 2004/03/31 17:58:23 dondosha
43
* Added PSIXmlReset function to allow keeping the AsnIoPtr between outputs for multiple queries in blastpgp
45
* Revision 6.12 2003/01/06 23:01:40 dondosha
46
* Added function to create a multi-query XML output for web megablast
48
* Revision 6.11 2002/11/14 15:37:18 dondosha
49
* Added functions to extract all hit information from seqalign that can be extracted without loading sequences
51
* Revision 6.10 2002/07/17 22:28:13 dondosha
52
* Added support for megablast XML output
39
54
* Revision 6.9 2000/11/28 20:51:58 shavirin
40
55
* Adopted for usage with mani-iterational XML definition.
89
104
AsnTypePtr BlastOutput;
90
105
AsnTypePtr BlastOutput_iterations;
91
} PSIXml, PNTR PSIXmlPtr;
106
AsnTypePtr BlastOutput_mbstat;
107
} PSIXml, MBXml, PNTR PSIXmlPtr, PNTR MBXmlPtr;
93
109
#define BXML_INCLUDE_QUERY 0x1
103
119
BLAST_OptionsBlkPtr options, CharPtr program,
104
120
CharPtr database, BioseqPtr query,
105
121
ValNodePtr other_returns, Int4 option,
122
CharPtr message, ValNodePtr mask_loc);
124
Boolean BXMLPrintMultiQueryOutput(AsnIoPtr aip, SeqAlignPtr seqalign,
125
BLAST_OptionsBlkPtr options, CharPtr program, CharPtr database,
126
BioseqSetPtr query_set, ValNodePtr other_returns, Int4 flags,
127
CharPtr message, ValNodePtr mask_loc);
129
StatisticsPtr BXMLBuildStatistics(ValNodePtr other_returns, Boolean ungapped);
108
130
BlastOutputPtr BXMLCreateBlastOutputHead(CharPtr program, CharPtr database,
109
131
BLAST_OptionsBlkPtr options,
110
132
BioseqPtr query, Int4 flags);
112
134
IterationPtr BXMLBuildOneIteration(SeqAlignPtr seqalign,
113
135
ValNodePtr other_returns,
114
136
Boolean is_ooframe, Boolean ungapped,
115
Int4 iter_num, CharPtr message);
137
Int4 iter_num, CharPtr message,
138
ValNodePtr mask_loc);
140
IterationPtr BXMLBuildOneQueryIteration(SeqAlignPtr seqalign,
141
ValNodePtr other_returns,
142
Boolean is_ooframe, Boolean ungapped,
143
Int4 iter_num, CharPtr message,
144
BioseqPtr query, ValNodePtr mask_loc);
117
146
HspPtr BXMLGetHspFromSeqAlign(SeqAlignPtr sap, Boolean is_aa, Int4 chain,
147
Boolean is_ooframe, ValNodePtr mask_loc);
120
149
HitPtr BXMLSeqAlignToHits(SeqAlignPtr seqalign, Boolean ungapped,
150
Boolean is_ooframe, ValNodePtr mask_loc);
123
152
PSIXmlPtr PSIXmlInit(AsnIoPtr aip, CharPtr program, CharPtr database,
124
BLAST_OptionsBlkPtr options,
125
BioseqPtr query, Int4 flags);
153
BLAST_OptionsBlkPtr options, BioseqPtr query, Int4 flags);
155
/* Close printing of this XML output, but only reset the ASN.1 output stream,
156
so it is ready for the next output. */
157
void PSIXmlReset(PSIXmlPtr psixp);
158
/* Finish printing XML output and close the output stream */
127
159
void PSIXmlClose(PSIXmlPtr psixp);
160
void MBXmlClose(PSIXmlPtr mbxp, ValNodePtr other_returns, Boolean ungapped);
162
HitPtr SeqAlignToHits PROTO((SeqAlignPtr seqalign, Boolean ungapped));
130
164
#ifdef __cplusplus