home | help
bl_bed_read(3)		    Library Functions Manual		  bl_bed_read(3)

NAME
     bl_bed_read() - Read a BED record

LIBRARY
     #include <biolibc/bed.h>
     -lbiolibc -lxtend

SYNOPSIS
     int     bl_bed_read(bl_bed_t *bed_feature, FILE *bed_stream,
     bed_field_mask_t field_mask)

ARGUMENTS
     bed_feature     Pointer to a bl_bed_t structure
     bed_stream      A FILE stream from which to read the line
     field_mask      Bit mask indicating which fields to store in bed_feature

DESCRIPTION
     Read  next  entry	(line) from a BED file.  The line must have at least the
     first 3 fields (chrom, start, and end).  It may have up to 12  fields,  all
     of which must be in the correct order according to the BED specification.

     If  field_mask  is not BL_BED_FIELD_ALL, fields not indicated by a 1 in the
     bit mask are discarded rather than stored in  bed_feature.   Possible  mask
     values are:

     BL_BED_FIELD_ALL  BL_BED_FIELD_NAME  BL_BED_FIELD_SCORE BL_BED_FIELD_STRAND
     BL_BED_FIELD_THICK BL_BED_FIELD_RGB BL_BED_FIELD_BLOCK

     The chrom, start, and end fields are required and therefore have no  corre-
     sponding  mask bits. The thickStart and thickEnd fields must occur together
     or not at all, so only a single  bit  BL_BED_FIELD_THICK  selects	both  of
     them.  Likewise, blockCount, blockSizes and blockStarts must all be present
     or omitted, so BL_BED_FIELD_BLOCK masks all three.

RETURN VALUES
     BL_READ_OK  on  successful  read  BL_READ_EOF  if EOF is encountered at the
     start of a line BL_READ_TRUNCATED if EOF or bad data is  encountered  else-
     where

EXAMPLES
     bl_bed_read(stdin, &bed_feature, BL_BED_FIELD_ALL);
     bl_bed_read(bed_stream, &bed_feature,
		      BL_BED_FIELD_NAME|BL_BED_FIELD_SCORE);

SEE ALSO
     bl_bed_write(3)

								  bl_bed_read(3)

home | help