This file is indexed.

/usr/include/ncbi/a2fstruc.h is in libncbi6-dev 6.1.20110713-3ubuntu2.

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
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
/*   a2fstruc.h
* ===========================================================================
*
*                            PUBLIC DOMAIN NOTICE
*            National Center for Biotechnology Information (NCBI)
*
*  This software/database is a "United States Government Work" under the
*  terms of the United States Copyright Act.  It was written as part of
*  the author's official duties as a United States Government employee and
*  thus cannot be copyrighted.  This software/database is freely available
*  to the public for use. The National Library of Medicine and the U.S.
*  Government do not place any restriction on its use or reproduction.
*  We would, however, appreciate having the NCBI and the author cited in
*  any work or product based on this material
*
*  Although all reasonable efforts have been taken to ensure the accuracy
*  and reliability of the software and data, the NLM and the U.S.
*  Government do not and cannot warrant the performance or results that
*  may be obtained by using this software or data. The NLM and the U.S.
*  Government disclaim all warranties, express or implied, including
*  warranties of performance, merchantability or fitness for any particular
*  purpose.
*
* ===========================================================================
*
* File Name:  a2fstruc.h
*
* Author:  Karl Sirotkin, Tom Madden, Tatiana Tatusov
*
* Version Creation Date:   7/15/95
*
* $Revision: 6.0 $
*
* File Description: 
*
* Modifications:  
* --------------------------------------------------------------------------
* Date     Name        Description of modification
* -------  ----------  -----------------------------------------------------
*
*
* ==========================================================================
*/

/*********************************************************************
*
*	Structures for asn2ff and makerpt
*
**********************************************************************/

/*************************************
*
* $Log: a2fstruc.h,v $
* Revision 6.0  1997/08/25 18:04:30  madden
* Revision changed to 6.0
*
* Revision 5.0  1996/05/28 13:23:23  ostell
* Set to revision 5.0
*
 * Revision 4.0  1995/07/26  13:49:01  ostell
 * force revision to 4.0
 *
 * Revision 1.11  1995/07/17  19:33:20  kans
 * parameters combined into Asn2ffJobPtr structure
 *
 * Revision 1.10  1995/06/19  21:40:02  kans
 * Tatiana's first major reorganization, moving printing, adding HTML
 *
 * Revision 1.9  1995/05/15  21:46:05  ostell
 * added Log line
 *
*
*************************************/

#ifndef _A2FSTRUC_
#define _A2FSTRUC_

#include <asn.h>
#include <objall.h>
#include <objpubd.h>
#include <objsub.h>
#include <prtutil.h>
#include <asn2ffg.h>

#define LINKS 20


/*--------------the structure for information on Genes-----*/

typedef struct genestruct {
	ValNodePtr gene;
	ValNodePtr product;
	ValNodePtr standard_name;
	CharPtr PNTR map;         /* only map[0] is used why we need PNTR? */
	ValNodePtr ECNum;
	Int2 map_size, map_index;   /* map_size is always 1 */
	Int2 matchlist_size;
	Int2Ptr genes_matched;
	Boolean pseudo;
} GeneStruct, PNTR GeneStructPtr;

/*--------------the structure for the composition of notes-----*/

typedef struct notestruct {
	CharPtr PNTR note;
	Uint1 PNTR note_alloc;
	CharPtr PNTR note_annot;
	Int2 	note_size, note_index;
} NoteStruct, PNTR NoteStructPtr;

/* ---------------The Biotable Structure ------------*/

typedef struct biotable {
	SeqEntryPtr sep;	/* the SeqEntryPtr passed to asn2ff_setup */
	SeqEntryPtr PNTR sepp;	/* An array of SeqEntryPtr's, used by makerpt */
	BioseqPtr PNTR bsp;	/* This array lists the (valid) entries to be 
					formatted */
	BioseqPtr PNTR table;	/* This array lists the BioseqPtr's with repr
				"seg" in a segmented set.  If the entry is not 
				segmented, this is NULL */
	BioseqContextPtr PNTR bcp;	/* The BioseqContextPtr for each
					BioseqPtr */
	BioseqContextPtr PNTR bcp_na;	/* BioseqContextPtr of a nucleotide
				sequence, used for an amino acid sequence;
				set in EstablishProteinLink */ 
	Uint1 PNTR bcp_na_alloc;	/* flag that says whether the bcp is
					allocated */
	SeqFeatPtr PNTR cds;	/* Used by genPept to determine which CDS
				a protein comes from, set in 
				EstablishProteinLink */
	Int2 FlatLoc_context;
	GeneStructPtr PNTR PNTR gspp;	/* information on Genes */ 
	NoteStructPtr PNTR PNTR nspp;	/* information on Notes. */
	NoteStructPtr source_notes;	/* Note for source feature */
	SeqFeatPtr sfp_out;	/* ImpFeat used to hole SeqFeat info while
				they're being formatted */
/* The next several variables, all starting with "sfp", are set in 
OrganizeSeqFeat */
	Int2Ptr sfpListsize;	/* Number of "generic" (i.e., not in any
				category below) features/entry */
	SeqFeatPtr PNTR PNTR sfpList;	/* ptr's to "generic" features */
	Int2Ptr sfpCommsize;	/* Number of comment features */ 
	SeqFeatPtr PNTR PNTR sfpCommlist;	/* ptr's to comment features */
	Int2Ptr sfpGenesize;	/* Number of gene features */
	SeqFeatPtr PNTR PNTR sfpGenelist;	/* Ptr's to gene features */
	Int2Ptr sfpOrgsize;	/* Number of Organism features. */
	SeqFeatPtr PNTR PNTR sfpOrglist;	/* ptr's to Org features. */
	Int2Ptr sfpSitesize;	/* Number of ImpFeat's with key "Site-ref" */
	SeqFeatPtr PNTR PNTR sfpSitelist; /* ptr's to ImpFeat's with key "Site-ref" */
	Int2Ptr sfpSourcesize;	/* Number of ImpFeat's with key "source" */
	SeqFeatPtr PNTR PNTR sfpSourcelist; /* ptr's to ImpFeat's with key "source" */
	Int2Ptr sfpXrefsize;	/* Number of Seq's that go out as xref's */
	SeqFeatPtr PNTR PNTR sfpXreflist;/* ptr's to Seq's that are xref's */
	ValNodePtr PNTR Pub;	/* Linked list of references */
	CharPtr PNTR base_cnt_line;
	CharPtr PNTR access;
	CharPtr PNTR locus;
	CharPtr PNTR division;
	CharPtr PNTR date;
	CharPtr PNTR create_date;
	CharPtr PNTR update_date;
	CharPtr PNTR embl_rel;
	Int2Ptr embl_ver;
	Int4Ptr gi;
	Int2 count;
	Int2Ptr seg_num;
	Int2Ptr seg_total;
	Int4 pap_index;
	Uint1 pap_last;
	Char  newline;
	Boolean pseudo;
	Uint1 gene_binding;
	Int2 number_of_cds;
	SeqPortPtr spp;
        Int4 count_set;
        Boolean found_match;
	struct biotable PNTR btp_other;
} Biotable, PNTR BiotablePtr;

/*----------- Estimates for the number of lines returned for
each of the following------------------------------------------*/

#define NUM_OF_ESTIMATES 20
#define NUM_SEQ_LINES 10

static Int2 line_estimate[NUM_OF_ESTIMATES] = {
1, /* 0; Locus, Segment, Base Count, Origin, Feature Header lines */
1, /* 1; Definition line(s) */
1, /* 2; Accession line(s) */
1, /* 3; Keyword line(s) */
2, /* 4; Source lines */
6, /* 5; Reference (pub) lines */
10, /* 6; GBComAndFH */
11, /* 7; GBComAndXref */
6, /* 8; Features */
NUM_SEQ_LINES, /* 9; Sequence lines */
2, /* 10; EMBL Date lines */
2, /* 11; EMBL Organism lines */
4, /* 12; DBSOURCE field */
};



typedef void (* FFPapFct) PROTO ((Asn2ffJobPtr ajp, BiotablePtr btp, Int2 count));

typedef struct ffprintarray {
	FFPapFct fct;
	Asn2ffJobPtr ajp;
	BiotablePtr btp;
	Int2 count;
	Int4 index;
	Uint1 last;
	Uint1 printxx;
	Int2 estimate;
	SeqFeatPtr sfp;
	ValNodePtr pub;
	ValNodePtr descr;
} FFPrintArray, PNTR FFPrintArrayPtr;

#endif