bl_bed_write(3)

NAME
bl_bed_write() - Write a BED record

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

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

ARGUMENTS
bed_feature     Pointer to the bl_bed_t structure to output
bed_stream      FILE stream to which TSV bed line is written
field_mask      Bit mask indicating which fields to output

DESCRIPTION
Write fields from one line of a bed file to the specified FILE stream. If field_mask is not BL_BED_FIELD_ALL, only selected fields are written. If field_mask is not BL_BED_FIELD_ALL, fields not indicated by a 1 in the bit mask are written as an appropriate marker for that field, such as a '.', rather than writing the real data. Possible mask values are: 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 corresponding 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_WRITE_OK on success BL_WRITE_ERROR on failure (errno may provide more information)

EXAMPLES
bl_bed_write(stdout, &bed_feature, BL_BED_FIELD_ALL);
bl_bed_write(bed_stream, &bed_feature,
                  BL_BED_FIELD_NAME|BL_BED_FIELD_SCORE);

SEE ALSO
bl_bed_read(3)