bl_sam_read(3)

NAME
bl_sam_read() - Read one SAM record

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

SYNOPSIS
int     bl_sam_read(bl_sam_t *alignment, FILE *sam_stream,
sam_field_mask_t field_mask)

ARGUMENTS
sam_stream  A FILE stream from which to read the line
alignment   Pointer to a bl_sam_t structure
field_mask  Bit mask indicating which fields to store in alignment

DESCRIPTION
Read next alignment (line) from a SAM stream. If field_mask is not BL_SAM_FIELD_ALL, fields not indicated by a 1 in the bit mask are discarded rather than stored in alignment. That field in the structure is then populated with an appropriate marker, such as '.'. Possible mask values are: BL_SAM_FIELD_ALL BL_SAM_FIELD_QNAME BL_SAM_FIELD_FLAG BL_SAM_FIELD_RNAME BL_SAM_FIELD_POS BL_SAM_FIELD_MAPQ BL_SAM_FIELD_CIGAR BL_SAM_FIELD_RNEXT BL_SAM_FIELD_PNEXT BL_SAM_FIELD_TLEN BL_SAM_FIELD_SEQ BL_SAM_FIELD_QUAL

RETURN VALUES
BL_READ_OK on successful read BL_READ_EOF if EOF is encountered after a complete feature BL_READ_TRUNCATED if EOF or bad data is encountered elsewhere

EXAMPLES
bl_sam_read(stdin, &alignment, BL_SAM_FIELD_ALL);
bl_sam_read(sam_stream, &alignment,
                   BL_SAM_FIELD_QNAME|BL_SAM_FIELD_POS|BL_SAM_FIELD_TLEN);

SEE ALSO
bl_sam_write(3)