/usr/include/ncbi/taxinc.h is in libncbi6-dev 6.1.20120620-8.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 | /*****************************************
* File: taxinc.h
* Description: taxon1 API
*/
#ifndef TAXINC_H_DONE
#define TAXINC_H_DONE
#include <ncbi.h>
#include <objfeat.h>
#define struct_Org_ref orgref
#include <objtax1.h>
#ifdef __cplusplus
extern "C" { /* } */
#endif
/* API functions prototypes */
/*---------------------------------------------
* Taxon1 server init
* Returns: TRUE - OK
* FALSE - Can't open taxonomy database
*/
Boolean tax1_init(void);
/*---------------------------------------------
* Taxon1 server fini (frees memory)
*/
void tax1_fini(void);
/*---------------------------------------------
* Get organism by tax_id
* Returns: pointer to Taxon1Data if organism exists
* NULL - if tax_id wrong
*
* typedef struct struct_Taxon1_data {
* OrgRefPtr org;
* CharPtr div; genbank division ("MAM", "VIR", "PHG", ...)
* CharPtr embl_code; in common case first letters from genus-species pair
* Uint1 is_species_level; 1 if node on species level or below
* } Taxon1Data, PNTR Taxon1DataPtr;
*
* NOTE:
* Caller gets his own copy of OrgRef structure.
*/
Taxon1DataPtr tax1_getbyid(Int4 tax_id);
Taxon2DataPtr tax1m_getbyid(Int4 tax_id);
/*----------------------------------------------
* Get organism by OrgRef
* Returns: pointer to Taxon1Data if organism exists
* NULL - if no such organism in taxonomy database
*
* NOTE:
* 1. This functions uses the following data from inp_orgRef to find organism
* in taxonomy database. It uses taxname first. If no organism was found (or multiple nodes found)
* then it tryes to find organism using common name. If nothing found, then it tryes to find
* organism using synonyms. tax1_lookup never uses tax_id to find organism.
* 2. If merge == 0 this function makes the new copy of OrgRef structure and puts into it data
* from taxonomy database.
* If merge != 0 this function updates inp_orgRef structure.
*/
Taxon1DataPtr tax1_lookup(OrgRefPtr inp_orgRef, int merge);
Taxon2DataPtr tax1m_lookup(OrgRefPtr inp_orgRef, int merge);
/*-----------------------------------------------
* Get tax_id by OrgRef
* Returns: tax_id - if organism found
* 0 - no organism found
* -tax_id - if multiple nodes found (where tax_id is id of one of the nodes)
* NOTE:
* This function uses the same information from inp_orgRef as a tax1_lookup
*/
Int4 tax1_getTaxIdByOrgRef(OrgRefPtr inp_orgRef);
/*----------------------------------------------
* Get tax_id by organism name
* Returns: tax_id - if organism found
* 0 - no organism found
* -tax_id - if multiple nodes found (where tax_id is id of one of the nodes)
* NOTE:
* orgname can be a regular expression.
*/
Int4 tax1_getTaxIdByName(CharPtr orgname);
Int4 tax1_findTaxIdByName(CharPtr orgname); /* standalone version only */
/*----------------------------------------------
* Get ALL tax_id by organism name
* Returns: number of organism found
* NOTE:
* 1. orgname can be a regular expression.
* 2. Ids consists of tax ids. Caller is responsible to free this memory
*/
Int4 tax1_getAllTaxIdByName(CharPtr orgname, Int4 **Ids);
Int4 tax1_findAllTaxIdByName(CharPtr orgname, Int4 **Ids); /* standalone version only */
/*----------------------------------------------
* Get organism by tax_id
* Returns: pointer to OrgRef structure if organism found
* NULL - if no such organism in taxonomy database
* NOTE:
* This function does not make a copy of OrgRef structure, so, caller can not use
* OrgRefFree function for returned pointer.
*/
OrgRefPtr tax1_getOrgRef(Int4 tax_id, int* is_species, CharPtr div, CharPtr embl_cde);
OrgRefPtr tax1m_getOrgRef(Int4 tax_id, int* is_species, int* is_uncultured, CharPtr* blast_name);
/*---------------------------------------------
* Set mode for synonyms in OrgRef
* Returns: previous mode
* NOTE:
* Default mode: do not include synonyms in OrgRef
*/
Boolean tax1_setSynonyms(Boolean on_off);
/*---------------------------------------------
* Get parent tax_id
*/
Int4 tax1_getParent(Int4 id_tax);
/*---------------------------------------------
* Get genus tax_id (id_tax should be below genus)
*/
Int4 tax1_getGenus(Int4 id_tax);
/*---------------------------------------------
* Get taxids for all children.
* Returns: number of children
*/
int tax1_getChildren(Int4 id_tax, Int4** children_ids);
/*---------------------------------------------
* Get genetic code name by genetic code id
*/
CharPtr tax1_getGCName(Int2 gc_id);
/*---------------------------------------------
* Get the nearest common ancestor for two nodes
* Returns: id of this ancestor (id == 1 means that root node only is ancestor)
*/
Int4 tax1_join(Int4 taxid1, Int4 taxid2);
/*---------------------------------------------
* Get all names for tax_id
* Returns: number of names
*/
Int2 tax1_getAllNames(Int4 tax_id, CharPtr **names, Boolean unique);
/*---------------------------------------------
* Find organism name in the string (for PDB mostly)
* Returns: nimber of tax_ids found
* NOTE:
* 1. orgname is substring of search_str which matches organism name (return parameter).
* 2. Ids consists of tax_ids. Caller is responsible to free this memory
*/
Int4 tax1_getTaxId4Str(CharPtr search_str, CharPtr* orgname, Int4Ptr *Ids_out);
/*---------------------------------------------
* Find out is taxonomy lookup system alive or not
* Returns: TRUE - alive
* FALSE - dead
*/
Boolean tax1_isAlive(void);
/***************************************************
* Get tax_id for given gi
* returns:
* tax_id if found
* 0 if no data or error
*/
Int4 tax1_getTaxId4GI(Int4 gi);
/***************************************************
* Get pointer to "blast" name
* Returns: the pointer on first blast name at or above this node in the lineage
* NOTE:
* This function does not make a copy of "blast" name, so, caller can not use
* MemFree function for returned pointer.
*/
CharPtr tax1m_getBlastName(Int4 tax_id);
/*---------------------------------------------
* Find out is taxonomy lookup system inited or not
* Returns: TRUE - alive
* FALSE - dead
*/
Boolean tax1_inited(void);
#ifdef __cplusplus
/* { */ }
#endif
#endif
|