1 /* asn2ff.h 2 * =========================================================================== 3 * 4 * PUBLIC DOMAIN NOTICE 5 * National Center for Biotechnology Information (NCBI) 6 * 7 * This software/database is a "United States Government Work" under the 8 * terms of the United States Copyright Act. It was written as part of 9 * the author's official duties as a United States Government employee and 10 * thus cannot be copyrighted. This software/database is freely available 11 * to the public for use. The National Library of Medicine and the U.S. 12 * Government do not place any restriction on its use or reproduction. 13 * We would, however, appreciate having the NCBI and the author cited in 14 * any work or product based on this material 15 * 16 * Although all reasonable efforts have been taken to ensure the accuracy 17 * and reliability of the software and data, the NLM and the U.S. 18 * Government do not and cannot warrant the performance or results that 19 * may be obtained by using this software or data. The NLM and the U.S. 20 * Government disclaim all warranties, express or implied, including 21 * warranties of performance, merchantability or fitness for any particular 22 * purpose. 23 * 24 * =========================================================================== 25 * 26 * File Name: asn2ff.h 27 * 28 * Author: Karl Sirotkin, Tom Madden, Tatiana Tatusov 29 * 30 * Version Creation Date: 7/15/95 31 * 32 * $Revision: 6.14 $ 33 * 34 * File Description: Header file for asn2gb files. 35 * 36 * Modifications: 37 * -------------------------------------------------------------------------- 38 * $Log: asn2ff.h,v $ 39 * Revision 6.14 2001/04/05 21:52:18 tatiana 40 * format and strand added to SeqEntryToEntrez 41 * 42 * Revision 6.13 2001/03/15 21:42:00 tatiana 43 * SeqEntryToEntrez added 44 * 45 * Revision 6.12 2000/03/24 17:56:11 tatiana 46 * SeqEntryToStrArrayQEx added 47 * 48 * Revision 6.10 1999/04/09 21:22:10 bazhin 49 * Added function "ByteStorePtr AjpToByteStore()". 50 * 51 * Revision 6.9 1999/04/02 16:31:46 tatiana 52 * asn2ff_print_to_mem and SeqEntryToStrArray changed to NLM_EXTERN 53 * 54 * Revision 6.8 1999/03/05 16:41:40 tatiana 55 * GRAPHIK_FMT changed to 14 56 * 57 * Revision 6.7 1999/03/04 23:39:53 tatiana 58 * GRAPHIK_FMT added 59 * 60 * Revision 6.6 1998/11/05 16:12:17 bazhin 61 * Added 4th parameter "Boolean show_gi" to SeqEntryToGBFlatNoSeq() 62 * function. It will say do or does not print GI number into output 63 * flatfile. Same for error messages related to missing GIs. 64 * 65 * Revision 6.5 1998/09/14 16:37:46 tatiana 66 * SeqEntryToFlatAjp added 67 * 68 * Revision 6.4 1998/09/08 20:40:52 tatiana 69 * Asn2ffJobCreate added 70 * 71 * Revision 6.3 1998/08/21 16:58:48 shavirin 72 * Added definition of function SeqEntryToGBFlatNoSeq() 73 * 74 * Revision 6.2 1998/05/11 21:58:50 tatiana 75 * some functions moved from asn2ff1.c to asn2ff6.c 76 * 77 * Revision 6.1 1998/05/08 21:58:36 tatiana 78 * added PARTIAL_MODE and SeqEntryToPartRpt PROTO 79 * 80 * Revision 6.0 1997/08/25 18:04:33 madden 81 * Revision changed to 6.0 82 * 83 * Revision 5.7 1997/07/28 19:03:50 vakatov 84 * [WIN32,MSVC++] Restored lost "NCBIOBJ.LIB" pro-DLL modifications 85 * 86 * Revision 5.6 1997/07/23 18:36:58 tatiana 87 * SeqEntryToFlatEx() added 88 * 89 * Revision 5.5 1997/06/19 18:36:48 vakatov 90 * [WIN32,MSVC++] Adopted for the "NCBIOBJ.LIB" DLL'ization 91 * 92 * Revision 5.3 1996/09/09 13:36:02 kans 93 * moved BioseqGetGBDivCode from toasn.[ch] to asn2ff.h/asn2ff6.c 94 * 95 * Revision 5.1 1996/07/12 19:46:09 tatiana 96 * SeqSubmitToFlat PROTO added 97 * 98 * Revision 4.3 1996/03/19 15:58:14 tatiana 99 * SeqGenomeToFlat prototype 100 * 101 * Revision 1.24 1995/07/17 19:33:20 kans 102 * parameters combined into Asn2ffJobPtr structure 103 * 104 * Revision 1.23 1995/06/19 21:40:02 kans 105 * Tatiana's first major reorganization, moving printing, adding HTML 106 * 107 * ========================================================================== 108 */ 109 110 #ifndef _ASN2FF_ 111 #define _ASN2FF_ 112 113 #include <ncbi.h> 114 #include <objsset.h> 115 #include <prtutil.h> 116 #include <seqport.h> 117 #include <sequtil.h> 118 #include <stdio.h> 119 #include <asn2ffg.h> 120 121 #undef NLM_EXTERN 122 #ifdef NLM_IMPORT 123 #define NLM_EXTERN NLM_IMPORT 124 #else 125 #define NLM_EXTERN extern 126 #endif 127 128 #ifdef __cplusplus 129 extern "C" { 130 #endif 131 132 #define GENBANK_FMT ( (Uint1)0) 133 #define EMBL_FMT ( (Uint1)1) 134 #define GENPEPT_FMT ( (Uint1)2) 135 #define PSEUDOEMBL_FMT ( (Uint1)3) 136 #define SELECT_FMT ( (Uint1)4) 137 #define EMBLPEPT_FMT ( (Uint1)5) 138 #define RELEASE_MODE ( (Uint1)6) 139 #define DUMP_MODE ( (Uint1)7) 140 #define SEQUIN_MODE ( (Uint1)8) 141 #define CHROMO_MODE ( (Uint1)9) 142 #define DIRSUB_MODE ( (Uint1)10) 143 #define REVISE_MODE ( (Uint1)11) 144 #define DIRSUB_DEBUG_MODE ( (Uint1)12) 145 #define PARTIAL_MODE ( (Uint1)13) 146 #define GRAPHIK_FMT ( (Uint1)14) 147 148 #define NUM_OF_ESTIMATES 20 149 #define NUM_SEQ_LINES 10 150 151 152 NLM_EXTERN Int4 asn2ff_setup PROTO ((Asn2ffJobPtr job, FFPrintArrayPtr PNTR papp)); 153 154 NLM_EXTERN void asn2ff_cleanup PROTO ((Asn2ffJobPtr job)); 155 156 NLM_EXTERN Boolean asn2ff_print PROTO ((Asn2ffJobPtr job)); 157 158 NLM_EXTERN LinkStrPtr asn2ff_print_to_mem PROTO ((Asn2ffJobPtr job, LinkStrPtr lsp)); 159 160 NLM_EXTERN Asn2ffJobPtr Asn2ffJobCreate PROTO ((SeqEntryPtr sep, SeqSubmitPtr ssp, SeqLocPtr slp, FILE *fp, Uint1 format, Uint1 mode, StdPrintOptionsPtr Spop)); 161 162 NLM_EXTERN Boolean SeqEntryToEntrez PROTO ((SeqEntryPtr sep, FILE *fp, SeqIdPtr seqid, Uint1 format, Uint1 display, Int4 from, Int4 to, Uint1 strand)); 163 164 NLM_EXTERN CharPtr PNTR SeqEntryToStrArray PROTO ((SeqEntryPtr sep, Uint1 format, Uint1 mode)); 165 166 NLM_EXTERN LinkStrPtr SeqEntryToStrArrayQEx PROTO ((SeqEntryPtr sep, Uint1 format, Int4 gi, Boolean is_html)); 167 NLM_EXTERN LinkStrPtr SeqEntryToStrArrayEx PROTO ((SeqEntryPtr sep, Uint1 format, Int4 gi, Boolean is_html)); 168 NLM_EXTERN Boolean SeqEntryToFlatAjp PROTO ((Asn2ffJobPtr ajp, SeqEntryPtr sep, FILE *fp, Uint1 format, Uint1 mode)); 169 NLM_EXTERN Boolean SeqEntryToFlat PROTO ((SeqEntryPtr sep, FILE *fp, Uint1 format, Uint1 mode)); 170 NLM_EXTERN Boolean SeqEntryToFlatEx PROTO ((SeqEntryPtr sep, FILE *fp, Uint1 format, Uint1 mode, SeqIdPtr seqid, Uint1 type)); 171 NLM_EXTERN Boolean SeqEntryToGBFlatNoSeq PROTO ((SeqEntryPtr sep, FILE *fp, Uint1 mode, Boolean show_gi)); 172 NLM_EXTERN Boolean SeqSubmitToFlat PROTO ((SeqSubmitPtr ssp, FILE *fp, Uint1 mode, Boolean show_gi, Uint1 format, Boolean show_gene)); 173 NLM_EXTERN Boolean SeqGenomeToFlat PROTO ((SeqEntryPtr sep, FILE *fp, Uint1 format, Uint1 mode)); 174 NLM_EXTERN Boolean SeqEntryToPartRpt PROTO ((SeqEntryPtr sep, FILE *fp)); 175 NLM_EXTERN Boolean SeqLocToFlat PROTO ((SeqLocPtr slp, FILE *fp, Uint1 format, Uint1 mode)); 176 NLM_EXTERN ByteStorePtr AjpToByteStore PROTO ((Asn2ffJobPtr ajp)); 177 178 NLM_EXTERN Int2 BioseqGetGBDivCode PROTO((BioseqPtr bsp, CharPtr buffer, Int2 buflen, Boolean err_post)); 179 /* moved from asn2ff1.c to asn2ff6.c */ 180 NLM_EXTERN void AddExtraAccessions PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 181 NLM_EXTERN void GetLocusPartsAwp PROTO((Asn2ffJobPtr ajp)); 182 NLM_EXTERN Int4 GetPubsAwp PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 183 NLM_EXTERN Boolean SeqToAwp PROTO((GatherContextPtr gcp)); 184 NLM_EXTERN void UseGIforLocus PROTO((Asn2ffJobPtr ajp)); 185 186 #ifdef __cplusplus 187 } 188 #endif 189 190 #undef NLM_EXTERN 191 #ifdef NLM_EXPORT 192 #define NLM_EXTERN NLM_EXPORT 193 #else 194 #define NLM_EXTERN 195 #endif 196 197 #endif 198