X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=sam.h;h=049550161628948dc7a0f085ff936d07742d4485;hb=607d7a0ab79152be4153fa09861cfa889488f2c7;hp=970cf2daee7ca49a95280bcf1431ae35ba8f223f;hpb=1a23a35867ee992dcffcf3d17df2b7d41732f33b;p=samtools.git diff --git a/sam.h b/sam.h index 970cf2d..0495501 100644 --- a/sam.h +++ b/sam.h @@ -15,7 +15,7 @@ /*! @typedef @abstract SAM/BAM file handler - @field type type of the handler; bit 1 for BAM and bit 2 for reading + @field type type of the handler; bit 1 for BAM, 2 for reading and bit 3-4 for flag format @field bam BAM file handler; valid if (type&1) == 1 @field tamr SAM file handler for reading; valid if type == 2 @field tamw SAM file handler for writing; valid if type == 0 @@ -41,16 +41,18 @@ extern "C" { @param fn SAM/BAM file name; "-" is recognized as stdin (for reading) or stdout (for writing). - @param mode open mode /[rw](b?)(u?)(h?)/: 'r' for reading, 'w' for - writing, 'b' for BAM I/O, 'u' for uncompressed BAM output and 'h' - for outputing header in SAM. If 'b' present, it must immediately - follow 'r' or 'w'. Valid modes are "r", "w", "wh", "rb", "wb" and - "wbu" exclusively. + @param mode open mode /[rw](b?)(u?)(h?)([xX]?)/: 'r' for reading, + 'w' for writing, 'b' for BAM I/O, 'u' for uncompressed BAM output, + 'h' for outputing header in SAM, 'x' for HEX flag and 'X' for + string flag. If 'b' present, it must immediately follow 'r' or + 'w'. Valid modes are "r", "w", "wh", "wx", "whx", "wX", "whX", + "rb", "wb" and "wbu" exclusively. @param aux auxiliary data; if mode[0]=='w', aux points to - bam_header_t; if strcmp(mode, "rb")==0 and @SQ header lines in SAM + bam_header_t; if strcmp(mode, "rb")!=0 and @SQ header lines in SAM are absent, aux points the file name of the list of the reference; - aux is not used otherwise. + aux is not used otherwise. If @SQ header lines are present in SAM, + aux is not used, either. @return SAM/BAM file handler */ @@ -87,6 +89,9 @@ extern "C" { */ int sampileup(samfile_t *fp, int mask, bam_pileup_f func, void *data); + char *samfaipath(const char *fn_ref); + int samthreads(samfile_t *fp, int n_threads, int n_sub_blks); + #ifdef __cplusplus } #endif