# HG changeset patch
# User devteam
# Date 1393535786 18000
# Node ID 2d4ae2f8231e009f48035f6a11ee5441e0a77d68
Imported from capsule None
diff -r 000000000000 -r 2d4ae2f8231e samtool_filter2.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/samtool_filter2.xml Thu Feb 27 16:16:26 2014 -0500
@@ -0,0 +1,232 @@
+
+ files on FLAG MAPQ RG LN or by region
+
+ samtools
+
+
+
+##set up input files, regions requires input.bam and input.bai
+#if isinstance($input1.datatype, $__app__.datatypes_registry.get_datatype_by_extension('bam').__class__):
+ #set $input = 'input.bam'
+ ln -s $input1 $input &&
+ ln -s $input1.metadata.bam_index input.bai &&
+#elif isinstance($input1.datatype, $__app__.datatypes_registry.get_datatype_by_extension('sam').__class__):
+ #set $input = 'input.sam'
+ ln -s $input1 $input &&
+#end if
+samtools view -o "$output1" $header
+
+ #if $input1.datatype.file_ext == 'sam':
+ -S
+ #end if
+
+ #if $outputtype.__str__ == "bam":
+ -b
+ #end if
+
+
+ #if $mapq.__str__ != '':
+ -q $mapq
+ #end if
+ #if $flag.filter.__str__ == 'yes':
+ #if $flag.reqBits.__str__ != 'None':
+ #set $reqs = $flag.reqBits.__str__.split(',')
+ #set $reqFlag = 0
+ #for $xn in $reqs:
+ #set $reqFlag += int(xn,16)
+ #end for
+ -f $hex($reqFlag)
+ #end if
+ #if $flag.skipBits.__str__ != 'None':
+ #set $skips = $flag.skipBits.__str__.split(',')
+ #set $skipFlag = 0
+ #for $xn in $skips:
+ #set $skipFlag += int(xn,16)
+ #end for
+ -F $hex($skipFlag)
+ #end if
+ #end if
+ #if $read_group.__str__.strip() != '':
+ -r $read_group
+ #end if
+ #if $library.__str__.strip() != '':
+ -l $library
+ #end if
+ #if $bed_file.__str__ != "None" and len($bed_file.__str__) > 0:
+ -L $bed_file
+ #end if
+ $input
+ #if $regions.__str__.strip() != '' and $input1.datatype.file_ext == 'bam':
+ $regions.__str__.strip()
+ #end if
+ ## need to redirect stderr message so galaxy does not think this failed
+ 2>&1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+**What it does**
+
+This tool uses the samtools view command in SAMTools_ toolkit to filter a SAM or BAM file on the MAPQ (mapping quality), FLAG bits, Read Group, Library, or region.
+
+**Input**
+
+Input is either a SAM or BAM file.
+
+**Output**
+
+The output file will be SAM or BAM (depending on the chosen option), filtered by the selected options.
+
+**Options**
+
+Filtering by read group or library requires headers in the input SAM or BAM file.
+
+If regions are specified, only alignments overlapping the specified regions will be output. An alignment may be given multiple times if it is overlapping several regions.
+A region can be presented, for example, in the following format::
+
+ chr2 (the whole chr2)
+ chr2:1000000 (region starting from 1,000,000bp)
+ chr2:1,000,000-2,000,000 (region between 1,000,000 and 2,000,000bp including the end points).
+
+Note: The coordinate is 1-based.
+
+Multiple regions may be specified, separated by a space character::
+
+ chr2:1000000-2000000 chr2:1,000,000-2,000,000 chrX
+
+
+
+.. _SAMTools: http://samtools.sourceforge.net/samtools.shtml
+
+
+
diff -r 000000000000 -r 2d4ae2f8231e test-data/bam_to_sam_in1.sam
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/bam_to_sam_in1.sam Thu Feb 27 16:16:26 2014 -0500
@@ -0,0 +1,14 @@
+@HD VN:1.0 SO:coordinate
+@SQ SN:chr1 LN:101
+@SQ SN:chr7 LN:404
+@SQ SN:chr8 LN:202
+@RG ID:0 SM:Hi,Mom!
+@PG ID:1 PN:Hey! VN:2.0
+both_reads_align_clip_marked 83 chr7 1 255 101M = 302 201 CAACAGAAGCNGGNATCTGTGTTTGTGTTTCGGATTTCCTGCTGAANNGNTTNTCGNNTCNNNNNNNNATCCCGATTTCNTTCCGCAGCTNACCTCCCAAN )'.*.+2,))&&'&*/)-&*-)&.-)&)&),/-&&..)./.,.).*&&,&.&&-)&&&0*&&&&&&&&/32/,01460&&/6/*0*/2/283//36868/& RG:Z:0
+both_reads_present_only_first_aligns 89 chr7 1 255 101M * 0 0 CAACAGAAGCNGGNATCTGTGTTTGTGTTTCGGATTTCCTGCTGAANNGNTTNTCGNNTCNNNNNNNNATCCCGATTTCNTTCCGCAGCTNACCTCCCAAN )'.*.+2,))&&'&*/)-&*-)&.-)&)&),/-&&..)./.,.).*&&,&.&&-)&&&0*&&&&&&&&/32/,01460&&/6/*0*/2/283//36868/& RG:Z:0
+read_2_too_many_gaps 83 chr7 1 255 101M = 302 201 CAACAGAAGCNGGNATCTGTGTTTGTGTTTCGGATTTCCTGCTGAANNGNTTNTCGNNTCNNNNNNNNATCCCGATTTCNTTCCGCAGCTNACCTCCCAAN )'.*.+2,))&&'&*/)-&*-)&.-)&)&),/-&&..)./.,.).*&&,&.&&-)&&&0*&&&&&&&&/32/,01460&&/6/*0*/2/283//36868/& RG:Z:0
+both_reads_align_clip_adapter 147 chr7 16 255 101M = 21 -96 CAACAGAAGCNGGNATCTGTGTTTGTGTTTCGGATTTCCTGCTGAANNGNTTNTCGNNTCNNNNNNNNATCCCGATTTCNTTCCGCAGCTNACCTCCCAAN )'.*.+2,))&&'&*/)-&*-)&.-)&)&),/-&&..)./.,.).*&&,&.&&-)&&&0*&&&&&&&&/32/,01460&&/6/*0*/2/283//36868/& RG:Z:0
+both_reads_align_clip_adapter 99 chr7 21 255 101M = 16 96 CAACAGAAGCNGGNATCTGTGTTTGTGTTTCGGATTTCCTGCTGAANNGNTTNTCGNNTCNNNNNNNNATCCCGATTTCNTTCCGCAGCTNACCTCCCAAN )'.*.+2,))&&'&*/)-&*-)&.-)&)&),/-&&..)./.,.).*&&,&.&&-)&&&0*&&&&&&&&/32/,01460&&/6/*0*/2/283//36868/& RG:Z:0
+both_reads_align_clip_marked 163 chr7 302 255 101M = 1 -201 NCGCGGCATCNCGATTTCTTTCCGCAGCTAACCTCCCGACAGATCGGCAGCGCGTCGTGTAGGTTATTATGGTACATCTTGTCGTGCGGCNAGAGCATACA &/15445666651/566666553+2/14/&/555512+3/)-'/-&-'*+))*''13+3)'//++''/'))/3+&*5++)&'2+&+/*&-&&*)&-./1'1 RG:Z:0
+read_2_too_many_gaps 163 chr7 302 255 10M1D10M5I76M = 1 -201 NCGCGGCATCNCGATTTCTTTCCGCAGCTAACCTCCCGACAGATCGGCAGCGCGTCGTGTAGGTTATTATGGTACATCTTGTCGTGCGGCNAGAGCATACA &/15445666651/566666553+2/14/&/555512+3/)-'/-&-'*+))*''13+3)'//++''/'))/3+&*5++)&'2+&+/*&-&&*)&-./1'1 RG:Z:0
+both_reads_present_only_first_aligns 165 * 0 0 * chr7 1 0 NCGCGGCATCNCGATTTCTTTCCGCAGCTAACCTCCCGACAGATCGGCAGCGCGTCGTGTAGGTTATTATGGTACATCTTGTCGTGCGGCNAGAGCATACA &/15445666651/566666553+2/14/&/555512+3/)-'/-&-'*+))*''13+3)'//++''/'))/3+&*5++)&'2+&+/*&-&&*)&-./1'1 RG:Z:0
diff -r 000000000000 -r 2d4ae2f8231e test-data/bam_to_sam_in2.sam
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/bam_to_sam_in2.sam Thu Feb 27 16:16:26 2014 -0500
@@ -0,0 +1,25 @@
+@HD VN:1.0 SO:coordinate
+@SQ SN:chr1 LN:10001
+@SQ SN:chr2 LN:100001
+@SQ SN:chr3 LN:10001
+@SQ SN:chr4 LN:1001
+@RG ID:rg1 SM:s1
+@RG ID:rg2 SM:s3
+bar:record:4 77 chr1 1 0 * * 0 0 AAAAAAAAAAAAA 1111111111111 RG:Z:rg1
+bar:record:6 77 chr1 1 0 * * 0 0 AAAAAAAAAAAAA 1111111111111 RG:Z:rg2
+bar:record:1 77 chr1 10 0 * * 0 0 AAAAAAAAAAAAA 1111111111111 RG:Z:rg1
+bar:record:3 77 chr1 10 0 * * 0 0 AAAAAAAAAAAAA 1111111111111 RG:Z:rg2
+bar:record:1 141 chr1 20 0 * * 0 0 CCCCCCCCCCCCC 2222222222222 RG:Z:rg1
+bar:record:7 77 chr1 20 0 * * 0 0 AAAAAAAAAAAAA 1111111111111 RG:Z:rg2
+bar:record:8 77 chr1 30 0 * * 0 0 AAAAAAAAAAAAA 1111111111111 RG:Z:rg2
+bar:record:4 141 chr1 40 0 * * 0 0 CCCCCCCCCCCCC 2222222222222 RG:Z:rg1
+bar:record:5 77 chr1 40 0 * * 0 0 AAAAAAAAAAAAA 1111111111111 RG:Z:rg2
+bar:record:6 141 chr1 50 0 * * 0 0 CCCCCCCCCCCCC 2222222222222 RG:Z:rg2
+bar:record:2 77 chr2 10 0 * * 0 0 AAAAAAAAAAAAA 1111111111111 RG:Z:rg1
+bar:record:2 141 chr2 30 0 * * 0 0 CCCCCCCCCCCCC 2222222222222 RG:Z:rg2
+bar:record:3 141 chr3 20 0 * * 0 0 CCCCCCCCCCCCC 2222222222222 RG:Z:rg1
+bar:record:8 141 chr3 20 0 * * 0 0 CCCCCCCCCCCCC 2222222222222 RG:Z:rg1
+bar:record:5 141 chr3 40 0 * * 0 0 CCCCCCCCCCCCC 2222222222222 RG:Z:rg1
+bar:record:9 77 chr4 10 0 * * 0 0 AAAAAAAAAAAAA 1111111111111 RG:Z:rg1
+bar:record:7 141 chr4 20 0 * * 0 0 CCCCCCCCCCCCC 2222222222222 RG:Z:rg1
+bar:record:9 141 chr4 60 0 * * 0 0 CCCCCCCCCCCCC 2222222222222 RG:Z:rg1
diff -r 000000000000 -r 2d4ae2f8231e tool_dependencies.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_dependencies.xml Thu Feb 27 16:16:26 2014 -0500
@@ -0,0 +1,6 @@
+
+
+
+
+
+