This file is indexed.

/usr/lib/emboss/include/ajcod.h is in emboss-lib 6.6.0+dfsg-1.

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
/* @include ajcod *************************************************************
**
** AJAX codon functions
**
** @author Copyright (C) 1999 Alan Bleasby
** @version $Revision: 1.27 $
** @modified Aug 07 ajb First version
** @modified $Date: 2011/10/18 14:23:40 $ by $Author: rice $
** @@
**
** This library is free software; you can redistribute it and/or
** modify it under the terms of the GNU Lesser General Public
** License as published by the Free Software Foundation; either
** version 2.1 of the License, or (at your option) any later version.
**
** This library is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
** Lesser General Public License for more details.
**
** You should have received a copy of the GNU Lesser General Public
** License along with this library; if not, write to the Free Software
** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
** MA  02110-1301,  USA.
**
******************************************************************************/

#ifndef AJCOD_H
#define AJCOD_H

/* ========================================================================= */
/* ============================= include files ============================= */
/* ========================================================================= */

#include "ajdefine.h"
#include "ajfile.h"

AJ_BEGIN_DECLS




/* ========================================================================= */
/* =============================== constants =============================== */
/* ========================================================================= */




/* ========================================================================= */
/* ============================== public data ============================== */
/* ========================================================================= */




/* @data AjPCod ***************************************************************
**
** Ajax codon object.
**
** Holds arrays describing codon usage
** The length is known and held internally.
**
** AjPCod is implemented as a pointer to a C data structure.
**
** @alias AjSCod
** @alias AjOCod
**
** @attr Name [AjPStr] Name of codon file
** @attr Species [AjPStr] Species
** @attr Division [AjPStr] Division (gbbct etc.)
** @attr Release [AjPStr] Database name and release
** @attr Desc [AjPStr] Description
** @attr CdsCount [ajint] Number of coding sequences used
** @attr CodonCount [ajint] Number of individual codons used
** @attr aa [ajint*] Amino acid represented by codon
** @attr num [ajint*] Number of codons
** @attr tcount [double*] Codons per thousand
** @attr fraction [double*] Fraction of amino acids of this type
** @attr back [ajint*] Index of favoured amino acid for back translation
** @attr GeneticCode [ajint] Genetic code NCBI number to match
**                           amino acids to codons.
** @attr Padding [char[4]] Padding to alignment boundary
** @@
******************************************************************************/

typedef struct AjSCod
{
    AjPStr Name;
    AjPStr Species;
    AjPStr Division;
    AjPStr Release;
    AjPStr Desc;
    ajint CdsCount;
    ajint CodonCount;
    ajint *aa;
    ajint *num;
    double *tcount;
    double *fraction;
    ajint *back;
    ajint GeneticCode;
    char Padding[4];
} AjOCod;

#define AjPCod AjOCod*




/* ========================================================================= */
/* =========================== public functions ============================ */
/* ========================================================================= */




/*
** Prototype definitions
*/

void         ajCodSetCodenum(AjPCod thys, ajint geneticcode);
void         ajCodSetDescC(AjPCod thys, const char* desc);
void         ajCodSetDescS(AjPCod thys, const AjPStr desc);
void         ajCodSetDivisionC(AjPCod thys, const char* division);
void         ajCodSetDivisionS(AjPCod thys, const AjPStr division);
void         ajCodSetNameC(AjPCod thys, const char* name);
void         ajCodSetNameS(AjPCod thys, const AjPStr name);
void         ajCodSetNumcds(AjPCod thys, ajint numcds);
void         ajCodSetNumcodons(AjPCod thys, ajint numcodon);
void         ajCodSetReleaseC(AjPCod thys, const char* release);
void         ajCodSetReleaseS(AjPCod thys, const AjPStr release);
void         ajCodSetSpeciesC(AjPCod thys, const char* species);
void         ajCodSetSpeciesS(AjPCod thys, const AjPStr species);
void         ajCodBacktranslate(AjPStr *b, const AjPStr a, const AjPCod thys);
void         ajCodBacktranslateAmbig(AjPStr *b, const AjPStr a,
                                     const AjPCod thys);
ajint        ajCodBase(ajint c);
double       ajCodCalcCaiCod(const AjPCod thys);
double       ajCodCalcCaiSeq(const AjPCod cod, const AjPStr str);
void         ajCodCalcGribskov(AjPCod thys, const AjPStr s);
double       ajCodCalcNc(const AjPCod thys);
void         ajCodCalcUsage(AjPCod thys, ajint c);
void         ajCodClear(AjPCod thys);
void         ajCodClearData(AjPCod thys);
void         ajCodComp(ajint *NA, ajint *NC, ajint *NG, ajint *NT,
                       const char *str);
void         ajCodSetTripletsS(AjPCod thys, const AjPStr s, ajint *c);
void         ajCodDel(AjPCod *thys);
ajint        ajCodGetCode(const AjPCod thys);
const AjPStr ajCodGetDesc(const AjPCod thys);
const char*  ajCodGetDescC(const AjPCod thys);
const AjPStr ajCodGetDivision(const AjPCod thys);
const char*  ajCodGetDivisionC(const AjPCod thys);
void         ajCodExit(void);
void         ajCodGetCodonlist(const AjPCod cod, AjPList list);
const AjPStr ajCodGetName(const AjPCod thys);
const char*  ajCodGetNameC(const AjPCod thys);
ajint        ajCodGetNumcds(const AjPCod thys);
ajint        ajCodGetNumcodon(const AjPCod thys);
const AjPStr ajCodGetRelease(const AjPCod thys);
const char*  ajCodGetReleaseC(const AjPCod thys);
const AjPStr ajCodGetSpecies(const AjPCod thys);
const char*  ajCodGetSpeciesC(const AjPCod thys);
ajint        ajCodIndex(const AjPStr s);
ajint        ajCodIndexC(const char *codon);
AjPCod       ajCodNew(void);
AjPCod       ajCodNewCodenum(ajint code);
AjPCod       ajCodNewCod(const AjPCod thys);
AjBool       ajCodRead(AjPCod thys, const AjPStr fn, const AjPStr format);
void         ajCodSetBacktranslate(AjPCod thys);
char*        ajCodTriplet(ajint idx);
void         ajCodWrite(AjPCod thys, AjPFile outf);
void         ajCodWriteOut(const AjPCod thys, AjPOutfile outf);
AjBool       ajCodoutformatFind(const AjPStr name, ajint *iformat);
void         ajCodPrintFormat(AjPFile outf, AjBool full);

/*
** End of prototype definitions
*/




#ifdef AJ_COMPILE_DEPRECATED_BOOK
#endif /* AJ_COMPILE_DEPRECATED_BOOK */

#ifdef AJ_COMPILE_DEPRECATED

__deprecated ajint        ajCodOutFormat(const AjPStr name);
__deprecated AjPCod       ajCodDup(const AjPCod thys);
__deprecated AjPCod       ajCodNewCode(ajint code);
__deprecated void         ajCodAssCode(AjPCod thys, ajint geneticcode);
__deprecated void         ajCodAssDesc(AjPCod thys, const AjPStr desc);
__deprecated void         ajCodAssDescC(AjPCod thys, const char* desc);
__deprecated void         ajCodAssDivision(AjPCod thys, const AjPStr division);
__deprecated void         ajCodAssDivisionC(AjPCod thys, const char* division);
__deprecated void         ajCodAssNumcds(AjPCod thys, ajint numcds);
__deprecated void         ajCodAssNumcodon(AjPCod thys, ajint numcodon);
__deprecated void         ajCodAssRelease(AjPCod thys, const AjPStr release);
__deprecated void         ajCodAssReleaseC(AjPCod thys, const char* release);
__deprecated void         ajCodAssSpecies(AjPCod thys, const AjPStr species);
__deprecated void         ajCodAssSpeciesC(AjPCod thys, const char* species);
__deprecated void         ajCodAssName(AjPCod thys, const AjPStr name);
__deprecated void         ajCodAssNameC(AjPCod thys, const char* name);
__deprecated void         ajCodCountTriplets(AjPCod thys,
                                             const AjPStr s, ajint *c);
__deprecated double       ajCodCalcCai(const AjPCod cod, const AjPStr str);
__deprecated void         ajCodCalculateUsage(AjPCod thys, ajint c);

#endif /* AJ_COMPILE_DEPRECATED */




AJ_END_DECLS

#endif /* !AJCOD_H */