The GReadings Structure
/* GReadings.sense */
#define GAP_SENSE_ORIGINAL 0
#define GAP_SENSE_REVERSE 1
/* GReadings.strand */
#define GAP_STRAND_FORWARD 0
#define GAP_STRAND_REVERSE 1
/* GReadings.primer */
#define GAP_PRIMER_UNKNOWN 0
#define GAP_PRIMER_FORWARD 1
#define GAP_PRIMER_REVERSE 2
#define GAP_PRIMER_CUSTFOR 3
#define GAP_PRIMER_CUSTREV 4
/* GReadings.chemistry */
/* Bit 0 is 1 for terminator, 0 for primer */
#define GAP_CHEM_TERMINATOR (1<<0)
/* Bits 1 to 4 inclusive are the type (any one of, not bit pattern) */
#define GAP_CHEM_TYPE_MASK (15<<1)
#define GAP_CHEM_TYPE_UNKNOWN (0<<1)
#define GAP_CHEM_TYPE_ABI_RHOD (1<<1)
#define GAP_CHEM_TYPE_ABI_DRHOD (2<<1)
#define GAP_CHEM_TYPE_BIGDYE (3<<1)
#define GAP_CHEM_TYPE_ET (4<<1)
#define GAP_CHEM_TYPE_LICOR (5<<1)
typedef struct {
GCardinal name;
GCardinal trace_name;
GCardinal trace_type;
GCardinal left; /* left neighbour */
GCardinal right; /* right neighbour */
GCardinal position; /* position in contig */
GCardinal length; /* total length of reading */
GCardinal sense; /* 0 = original, 1 = reverse */
GCardinal sequence;
GCardinal confidence;
GCardinal orig_positions;
GCardinal chemistry; /* see comments above (GAP_CHEM_*) */
GCardinal annotations; /* start of annotation list */
GCardinal sequence_length; /* clipped length */
GCardinal start; /* last base of left cutoff */
GCardinal end; /* first base of right cutoff */
GCardinal template; /* aka subclone */
GCardinal strand; /* 0 = forward, 1 = reverse */
GCardinal primer; /* 0 = unknown, 1 = forwards, */
/* 2 = reverse, 3 = custom forward */
/* 4 = custom reverse */
GCardinal notes; /* Unpositional annotations */
} GReadings;
The reading structure contains information related to individual sequence
fragments. It should be read and written using the gel_read and
gel_write functions. Whilst it is perfectly possible to use
GT_Read to access this data, using gel_read will read from an
in-memory cache and so is much faster. Using GT_Write to write a
GReadings structure must never be used as it will invalidate the cache.
- name
-
The record number of the text string containing the reading identifier.
Care must be taken to use the correct functions to access the reading name.
Use
io_read_reading_nameandio_write_reading_nameinstead ofio_read_textorio_write_text. See section io_read_reading_name and io_write_reading_name. - trace_name
- The record number of the text string containing the trace filename.
- trace_type
- The record number of the text string containing the type of the trace.
- left
- The left hand neighbour of this sequence, or 0 if this is the first reading in the contig. Sequences are stored in a doubly linked list which is sorted on positional order. The right hand neighbour of the sequence referenced by this field should be the same as this sequence number. NOTE: this is the reading number, not the record number.
- right
- The right hand neighbour of this sequence, or 0 if this is the last reading in the contig. The left hand neighbour of the sequence referenced by this field should be the same as this sequence number. NOTE: this is the reading number, not the record number.
- position
- The absolute position of this reading within the contig (starting from 1).
- length
- The total length of this reading, including cutoff data.
- sense
-
The orientation of this reading. 0=original, 1=reversed. The
GAP_SENSE_*macros should be used in preference to integer values. - sequence
- The record number of the text string containing the complete sequence.
- confidence
- The record number of the 1 byte integer array containing the confidence values. This has one value per sequence base and so is the same length as the sequence array.
- orig_positions
- The record number of the 2 byte integer array containing the original positions of each base. This has one 2 byte value per sequence base.
- chemistry
-
The chemistry type of this reading. 0=normal.
chemistry & GAP_CHEM_DOUBLEcontains the terminator reaction information. Non zero implies a terminator reaction, which can then optionally be used as double stranded sequence. - annotations
- The number of the first annotation for this reading. Annotations are stored in a linked list structure. This value is 0 if no annotations are available. NOTE: This is not the same as the record number of the first annotation.
- sequence_length
- The used length of sequence. This should always be the same as the end-start-1.
- start
- The position of the last base in the left hand cutoff data (starting from 1).
- end
- The position of the first base in the right hand cutoff data (starting from 1).
- template
- The template number. Readings sharing a template (ie insert) have the same template number.
- strand
-
The strand this sequence was derived from. 0=forward, 1=reverse. The
GAP_STRAND_*macros should be used in preference to integer values. - primer
-
The primer type for this sequence. 0=unknown, 1=forward, 2=reverse,
3=custom forward, 4=custom reverse. The
GAP_PRIMER_*macros should be used in preference to integer values.
This page is maintained by staden-package. Last generated on 25 April 2003.
URL: http://www.mrc-lmb.cam.ac.uk/pubseq/manual/scripting_114.html