1 /* asn2ffp.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: asn2ffp.h 27 * 28 * Author: Karl Sirotkin, Tom Madden, Tatiana Tatusov 29 * 30 * Version Creation Date: 7/15/95 31 * 32 * $Revision: 6.37 $ 33 * 34 * File Description: 35 * 36 * Modifications: 37 * -------------------------------------------------------------------------- 38 * Date Name Description of modification 39 * ------- ---------- ----------------------------------------------------- 40 * 41 * 42 * ========================================================================== 43 */ 44 45 #ifndef _ASN2FFP_ 46 #define _ASN2FFP_ 47 48 #include <asn2ffg.h> 49 #include <asn2ff.h> 50 #include <asn2ff6.h> 51 52 53 #undef NLM_EXTERN 54 #ifdef NLM_IMPORT 55 #define NLM_EXTERN NLM_IMPORT 56 #else 57 #define NLM_EXTERN extern 58 #endif 59 60 NLM_EXTERN Boolean asn2ff_flags[13]; 61 62 #define ASN2FF_LOCAL_ID asn2ff_flags[0] 63 #define ASN2FF_LOOK_FOR_SEQ asn2ff_flags[1] 64 #define ASN2FF_VALIDATE_FEATURES asn2ff_flags[2] 65 #define ASN2FF_IGNORE_PATENT_PUBS asn2ff_flags[3] 66 #define ASN2FF_DROP_SHORT_AA asn2ff_flags[4] 67 #define ASN2FF_AVOID_LOCUS_COLL asn2ff_flags[5] 68 #define ASN2FF_DATE_ERROR_MSG asn2ff_flags[6] 69 #define ASN2FF_IUPACAA_ONLY asn2ff_flags[7] 70 #define ASN2FF_TRANSL_TABLE asn2ff_flags[8] 71 #define ASN2FF_REPORT_LOCUS_COLL asn2ff_flags[9] 72 #define ASN2FF_SHOW_ALL_PUBS asn2ff_flags[10] 73 #define ASN2FF_SHOW_ERROR_MSG asn2ff_flags[11] 74 #define ASN2FF_SHOW_GB_STYLE asn2ff_flags[12] 75 76 #define DBNUM 58 77 NLM_EXTERN CharPtr dbtag[DBNUM]; 78 79 NLM_EXTERN void FlatSpliceOff PROTO((SeqEntryPtr the_set, ValNodePtr desc)); 80 NLM_EXTERN void FlatSpliceOn PROTO((SeqEntryPtr the_set, ValNodePtr desc)); 81 82 NLM_EXTERN void PrintLocusLine PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 83 NLM_EXTERN void PrintAccessLine PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 84 NLM_EXTERN void PrintVersionLine PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 85 NLM_EXTERN void PrintNCBI_GI PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 86 NLM_EXTERN void PrintNID PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 87 NLM_EXTERN void GetDefinitionLine PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 88 NLM_EXTERN void PrintDefinitionLine PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 89 NLM_EXTERN void PrintKeywordLine PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 90 NLM_EXTERN void PrintOriginLine PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 91 NLM_EXTERN void PrintOrganismLine PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 92 93 NLM_EXTERN void PrintEPLocusLine PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 94 NLM_EXTERN void PrintSegmentLine PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 95 96 NLM_EXTERN void PrintGBSourceLine PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 97 NLM_EXTERN void PrintGBOrganismLine PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 98 99 NLM_EXTERN void PrintPubsByNumber PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 100 NLM_EXTERN void PrintFeatHeader PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 101 NLM_EXTERN void PrintSequence PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp, Int4 start, Int4 stop)); 102 NLM_EXTERN void PrintEPSequence PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp, Int4 start, Int4 stop)); 103 NLM_EXTERN void PrintBaseCount PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 104 NLM_EXTERN ValNodePtr tie_next PROTO((ValNodePtr head, ValNodePtr vnp)); 105 NLM_EXTERN ValNodePtr GatherDescrByChoice PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp, Uint1 choice)); 106 NLM_EXTERN ValNodePtr GatherDescrListByChoice PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp, Uint1 choice)); 107 NLM_EXTERN ValNodePtr GetOrgRef PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 108 NLM_EXTERN ValNodePtr GetBiosource PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 109 NLM_EXTERN void EMBL_PrintPubs PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp, PubStructPtr psp)); 110 NLM_EXTERN void GB_PrintPubs PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp, PubStructPtr psp)); 111 NLM_EXTERN void GR_PrintPubs PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp, PubStructPtr psp)); 112 NLM_EXTERN Boolean FlatIgnoreThisPatentPub PROTO ((BioseqPtr bsp, ValNodePtr best, Int4Ptr seqidPt)); 113 NLM_EXTERN CharPtr FlatCleanEquals PROTO ((CharPtr retval)); 114 NLM_EXTERN ValNodePtr GetAuthors PROTO((Asn2ffJobPtr ajp, ValNodePtr the_pub)); 115 NLM_EXTERN CharPtr FlatJournal PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp, ValNodePtr the_pub, Int4 pat_seqid, Boolean PNTR submit, Boolean make_index)); 116 NLM_EXTERN ValNodePtr GetKeywordLine PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 117 NLM_EXTERN void PrintSourceFeat PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 118 NLM_EXTERN Int2 PrintImpFeat PROTO ((Asn2ffJobPtr ajp, BioseqPtr bsp, SeqFeatPtr sfp)); 119 NLM_EXTERN Int2 PrintImpFeatEx PROTO ((Asn2ffJobPtr ajp, BioseqPtr bsp, SeqFeatPtr sfp, BIG_ID gi, Int2 entityID, Uint4 itemID)); 120 NLM_EXTERN void PrintNAFeatAwp PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 121 NLM_EXTERN void PrintNAFeatByNumber PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 122 NLM_EXTERN void PrintAAFeatByNumber PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 123 NLM_EXTERN CharPtr FlatLoc PROTO ((BioseqPtr bsp, ValNodePtr location)); 124 NLM_EXTERN Boolean FlatAnnotPartial PROTO ((SeqFeatPtr sfp, Boolean use_product)); 125 NLM_EXTERN Boolean FlatIgnoreThisPatentPub PROTO ((BioseqPtr bsp, ValNodePtr best, Int4Ptr seqidPt)); 126 127 NLM_EXTERN void PrintCommentByNumber PROTO((Asn2ffJobPtr aip, GBEntryPtr gbp)); 128 NLM_EXTERN void PrintFirstComment PROTO((Asn2ffJobPtr aip, GBEntryPtr gbp)); 129 NLM_EXTERN void GBDescrComFeat PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 130 131 NLM_EXTERN Int2 GB_GetSeqDescrComms PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 132 NLM_EXTERN Int2 GP_GetSeqDescrComms PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 133 134 NLM_EXTERN Int4 GetGibbsqNumber PROTO ((BioseqPtr bsp)); 135 NLM_EXTERN Int4 GetGibbsqCommentLength PROTO ((GBEntryPtr gbp)); 136 NLM_EXTERN CharPtr GetGibbsqComment PROTO ((GBEntryPtr gbp)); 137 NLM_EXTERN Int4 GetGibbsqStatement PROTO ((GBEntryPtr gbp, CharPtr ptr)); 138 NLM_EXTERN Int2 StorePubInfo PROTO ((Asn2ffJobPtr ajp, BioseqContextPtr bcp, BioseqPtr bsp, ValNodePtr PNTR vnpp)); 139 NLM_EXTERN Int2 StoreNAPubInfo PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp, ValNodePtr PNTR vnp, Boolean error_msgs)); 140 NLM_EXTERN void GetGBDate PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 141 NLM_EXTERN void GetGPDate PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 142 NLM_EXTERN void GetEMBLDate PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 143 NLM_EXTERN void GetEntryVersion PROTO ((GBEntryPtr gbp)); 144 NLM_EXTERN Boolean GetGeneQuals PROTO ((SeqFeatPtr sfp_in, GeneStructPtr gsp)); 145 NLM_EXTERN Boolean GetCdregionGeneXrefInfo PROTO ((Asn2ffJobPtr ajp, SeqFeatPtr sfp, GBEntryPtr gbp, Int2 index)); 146 NLM_EXTERN void GetGeneRefInfo PROTO ((GeneStructPtr gsp, NoteStructPtr nsp, GeneRefPtr grp)); 147 NLM_EXTERN void GetDBXrefFromGene PROTO ((GeneRefPtr grp, SeqFeatPtr sfp)); 148 NLM_EXTERN Int2 CompareStringWithGsp PROTO ((GeneStructPtr gsp, CharPtr string)); 149 NLM_EXTERN Boolean CheckNAFeat PROTO ((Boolean is_new, BioseqPtr bsp, SeqFeatPtr sfp)); 150 NLM_EXTERN Boolean CheckAndGetNAFeatLoc PROTO ((BioseqPtr bsp, CharPtr PNTR buffer, SeqFeatPtr sfp, Boolean loc_return)); 151 NLM_EXTERN void GetAAFeatLoc PROTO ((BioseqPtr bsp, CharPtr PNTR buffer, SeqFeatPtr sfp, Boolean use_product)); 152 NLM_EXTERN CharPtr GetGBSourceLine PROTO ((GBBlockPtr gb)); 153 154 NLM_EXTERN Int2 CheckPubs PROTO ((Asn2ffJobPtr ajp, BioseqPtr bsp, ValNodePtr PNTR vnpp)); 155 NLM_EXTERN CharPtr FlatAuthor PROTO ((Asn2ffJobPtr ajp, ValNodePtr the_pub)); 156 NLM_EXTERN CharPtr FlatPubTitle PROTO ((ValNodePtr the_pub)); 157 NLM_EXTERN void PrintDBSourceLine PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 158 159 NLM_EXTERN void PostARefErrMessage PROTO ((Asn2ffJobPtr ajp, BioseqPtr bsp, PubStructPtr psp, ValNodePtr ext_pub, Int2 status, CharPtr string)); 160 161 NLM_EXTERN void SeparatePartSuppl PROTO((CharPtr vol_issue, CharPtr part_sub)); 162 NLM_EXTERN void AddExtraAccessions PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 163 NLM_EXTERN void PrintTerminator PROTO ((void)); 164 NLM_EXTERN Boolean get_pubs PROTO ((GatherContextPtr gcp)); 165 NLM_EXTERN void GatherItemWithLock PROTO((Uint2 entityID, Uint4 itemID, Uint2 itemtype, 166 Pointer userdata, GatherItemProc userfunc)); 167 NLM_EXTERN CharPtr format_article PROTO ((Asn2ffJobPtr ajp, BioseqPtr bsp, ValNodePtr the_pub, Boolean make_index)); 168 NLM_EXTERN CharPtr format_bookarticle PROTO ((Asn2ffJobPtr ajp, BioseqPtr bsp, ValNodePtr the_pub, Boolean make_index)); 169 NLM_EXTERN CharPtr format_jourarticle PROTO ((Asn2ffJobPtr ajp, BioseqPtr bsp, ValNodePtr the_pub, Boolean make_index)); 170 171 NLM_EXTERN void GetProtRefInfo PROTO ((Uint1 format, GeneStructPtr gsp, NoteStructPtr nsp, ProtRefPtr prp)); 172 NLM_EXTERN Int2 GetMapFeats PROTO((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 173 NLM_EXTERN Boolean find_item PROTO ((GatherContextPtr gcp)); 174 NLM_EXTERN Boolean get_prot_feats PROTO((GatherContextPtr gcp)); 175 NLM_EXTERN void AddSiteNoteQual PROTO((SeqFeatPtr sfp_in, SeqFeatPtr sfp)); 176 NLM_EXTERN void MatchAAGeneToFeat PROTO((OrganizeFeatPtr ofp, SortStructPtr p)); 177 NLM_EXTERN void MatchNAGeneToFeat PROTO ((Boolean non_strict, OrganizeFeatPtr ofp, SortStructPtr p)); 178 NLM_EXTERN void SortOrganizeFeat PROTO((OrganizeFeatPtr ofp)); 179 NLM_EXTERN void OrganizeSeqFeat PROTO ((Asn2ffJobPtr ajp, GBEntryPtr gbp)); 180 NLM_EXTERN void GetSeqFeat PROTO ((Asn2ffJobPtr ajp)); 181 182 #undef NLM_EXTERN 183 #ifdef NLM_EXPORT 184 #define NLM_EXTERN NLM_EXPORT 185 #else 186 #define NLM_EXTERN 187 #endif 188 189 #endif 190