/usr/lib/emboss/include/ajrange.h is in emboss-lib 6.3.1-6ubuntu3.
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 | #ifdef __cplusplus
extern "C"
{
#endif
#ifndef ajrange_h
#define ajrange_h
/* @data AjPRange *************************************************************
**
** Data structure for AJAX sequence range specifications
**
** @alias AjORange
** @alias AjSRange
**
** @attr start [ajuint*] From positions
** @attr end [ajuint*] End positions
** @attr text [AjPStr*] Associated text for each range
** @attr n [ajuint] Number of ranges
** @attr Padding [char[4]] Padding to alignment boundary
** @@
******************************************************************************/
typedef struct AjSRange
{
ajuint *start;
ajuint *end;
AjPStr *text;
ajuint n;
char Padding[4];
} AjORange;
#define AjPRange AjORange*
/*
** Prototype definitions
*/
AjBool ajRangeSetOffset (AjPRange thys, ajuint begin);
AjBool ajRangeElementSet(AjPRange thys, ajuint element,
ajuint start, ajuint end);
AjBool ajRangeIsWhole(const AjPRange thys, const AjPSeq s);
void ajRangeDel(AjPRange *thys);
AjPRange ajRangeNewI(ajuint n);
AjPRange ajRangeNewFilename(const AjPStr name);
AjPRange ajRangeNewFilenameLimits(const AjPStr name,
ajuint imin, ajuint imax,
ajuint minsize, ajuint size);
AjPRange ajRangeNewRange(const AjPRange src);
AjPRange ajRangeNewString(const AjPStr s);
AjPRange ajRangeNewStringLimits(const AjPStr str, ajuint imin, ajuint imax,
ajuint minsize, ajuint size);
ajuint ajRangeGetSize(const AjPRange thys);
AjBool ajRangeIsOrdered (const AjPRange thys);
ajuint ajRangeCountOverlaps (const AjPRange thys, ajuint pos, ajuint length);
ajuint ajRangeElementTypeOverlap(const AjPRange thys, ajuint element,
ajuint pos, ajuint length);
AjBool ajRangeSeqExtract (const AjPRange thys, AjPSeq seq);
AjPSeq ajRangeSeqExtractPep (const AjPRange thys, AjPSeq seq,
const AjPTrn trntable, ajint frame);
AjBool ajRangeSeqExtractList (const AjPRange thys,
const AjPSeq seq, AjPList outliststr);
AjBool ajRangeSeqMask (const AjPRange thys,
const AjPStr maskchar, AjPSeq seq);
AjBool ajRangeSeqStuff (const AjPRange thys, AjPSeq seq);
AjBool ajRangeSeqStuffPep (const AjPRange thys, AjPSeq seq,
ajint frame);
AjBool ajRangeSeqToLower (const AjPRange thys, AjPSeq seq);
AjBool ajRangeStrExtract (const AjPRange thys,
const AjPStr instr, AjPStr *outstr);
AjBool ajRangeStrExtractList (const AjPRange thys,
const AjPStr instr, AjPList outliststr);
AjBool ajRangeStrMask (const AjPRange thys,
const AjPStr maskchar, AjPStr *str);
AjBool ajRangeStrStuff (const AjPRange thys,
const AjPStr instr, AjPStr *outstr);
AjBool ajRangeStrToLower (const AjPRange thys, AjPStr *str);
AjBool ajRangeElementGetText(const AjPRange thys, ajuint element,
AjPStr * text);
AjBool ajRangeElementGetValues(const AjPRange thys, ajuint element,
ajuint *start, ajuint *end);
/*
** End of prototype definitions
*/
__deprecated AjPRange ajRangeCopy(const AjPRange src);
__deprecated AjPRange ajRangeGet(const AjPStr s);
__deprecated AjPRange ajRangeGetLimits(const AjPStr str,
ajuint imin, ajuint imax,
ajuint minsize, ajuint size);
__deprecated AjPRange ajRangeFile(const AjPStr name);
__deprecated AjPRange ajRangeFileLimits(const AjPStr name,
ajuint imin, ajuint imax,
ajuint minsize, ajuint size);
__deprecated ajuint ajRangeNumber(const AjPRange thys);
__deprecated AjBool ajRangeValues(const AjPRange thys, ajuint element,
ajuint *start, ajuint *end);
__deprecated AjBool ajRangeBegin (AjPRange thys, ajuint begin);
__deprecated AjBool ajRangeChange(AjPRange thys, ajuint element,
ajuint start, ajuint end);
__deprecated AjBool ajRangeText(const AjPRange thys, ajuint element,
AjPStr * text);
__deprecated ajuint ajRangeOverlaps (const AjPRange thys,
ajuint pos, ajuint length);
__deprecated ajuint ajRangeOverlapSingle (ajuint start, ajuint end,
ajuint pos, ajuint length);
__deprecated AjBool ajRangeOrdered (const AjPRange thys);
__deprecated AjBool ajRangeDefault(const AjPRange thys, const AjPSeq s);
#endif
#ifdef __cplusplus
}
#endif
|