| BioPerl-Run documentation | Contained in the BioPerl-Run distribution. |
Bio::Tools::Run::BEDTools::Config - Configuration data for bowtie commands
Used internally by Bio::Tools::Run::BEDTools.
This package exports information describing BEDTools commands, parameters, switches, and input and output filetypes for individual BEDTools commands.
User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to the Bioperl mailing list. Your participation is much appreciated.
bioperl-l@bioperl.org - General discussion http://bioperl.org/wiki/Mailing_lists - About the mailing lists
Please direct usage questions or support issues to the mailing list:
rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible.
Report bugs to the Bioperl bug tracking system to help us keep track of the bugs and their resolution. Bug reports can be submitted via the web:
http://redmine.open-bio.org/projects/bioperl/
Email dan.kortschak adelaide.edu.au
Additional contributors names and emails here
The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _
| BioPerl-Run documentation | Contained in the BioPerl-Run distribution. |
# $Id: Config.pm kortsch $ # # BioPerl module for Bio::Tools::Run::BEDTools::Config # # Please direct questions and support issues to <bioperl-l@bioperl.org> # # Cared for by Dan Kortschak <dan.kortschak@adelaide.edu.au> # # Copyright Dan Kortschak # # You may distribute this module under the same terms as perl itself # POD documentation - main docs before the code
# Let the code begin... package Bio::Tools::Run::BEDTools::Config; use strict; use warnings; no warnings qw(qw); use Bio::Root::Root; use Exporter; use base qw(Bio::Root::Root); our (@ISA, @EXPORT, @EXPORT_OK); push @ISA, 'Exporter'; @EXPORT = qw( @program_commands %command_executables %format_lookup %command_prefixes %composite_commands @program_params @program_switches %param_translation %command_files %accepted_types ); @EXPORT_OK = qw(); our @program_commands = qw( annotate fasta_from_bed overlap bam_to_bed genome_coverage pair_to_pair bed_to_bam graph_union pair_to_bed bed_to_IGV group_by shuffle b12_to_b6 intersect slop closest links sort complement mask_fasta_from_bed subtract coverage merge window ); our %command_executables = ( 'annotate' => 'annotateBed', 'bam_to_bed' => 'bamToBed', 'bed_to_bam' => 'bedToBam', 'bed_to_IGV' => 'bedToIgv', 'b12_to_b6' => 'bed12ToBed6', 'fasta_from_bed' => 'fastaFromBed', 'mask_fasta_from_bed' => 'maskFastaFromBed', 'shuffle' => 'shuffleBed', 'window' => 'windowBed', 'closest' => 'closestBed', 'genome_coverage' => 'genomeCoverageBed', 'merge' => 'mergeBed', 'slop' => 'slopBed', 'complement' => 'complementBed', 'intersect' => 'intersectBed', 'pair_to_bed' => 'pairToBed', 'sort' => 'sortBed', 'coverage' => 'coverageBed', 'links' => 'linksBed', 'pair_to_pair' => 'pairToPair', 'subtract' => 'subtractBed', 'overlap' => 'overlap', 'group_by' => 'groupBy', 'graph_union' => 'unionBedGraphs' ); our %format_lookup = ( 'annotate' => 'bed', 'bam_to_bed' => 'bed', 'bed_to_bam' => 'bam', 'bed_to_IGV' => 'igv', 'b12_to_b6' => 'bed', 'closest' => 'bedpe', 'complement' => 'bed', 'coverage' => 'bed', 'fasta_from_bed' => 'fasta', 'genome_coverage' => 'tab', 'graph_union' => 'bg', 'group_by' => 'bed', 'intersect' => 'bed|bam', 'links' => 'html', 'mask_fasta_from_bed' => 'fasta', 'merge' => 'bed', 'overlap' => 'bed', 'pair_to_bed' => 'bedpe|bam', 'pair_to_pair' => 'bedpe', 'slop' => 'bed', 'shuffle' => 'bed', 'sort' => 'bed', 'subtract' => 'bed', 'window' => 'bedpe' ); # composite commands: pseudo-commands that run a # sequence of commands # composite command prefix => list of prefixes of commands this # composite command runs # our %composite_commands = ( ); # prefixes only for commands that take params/switches... our %command_prefixes = ( 'annotate' => 'ann', 'bam_to_bed' => 'ate', 'bed_to_bam' => 'eta', 'bed_to_IGV' => 'eti', 'b12_to_b6' => '126', 'fasta_from_bed' => 'ffb', 'mask_fasta_from_bed' => 'mfb', 'shuffle' => 'shb', 'window' => 'wib', 'closest' => 'clb', 'genome_coverage' => 'gcb', 'merge' => 'meb', 'slop' => 'slb', 'complement' => 'cob', 'intersect' => 'inb', 'pair_to_bed' => 'ptb', 'sort' => 'sob', 'coverage' => 'cvb', 'links' => 'lib', 'pair_to_pair' => 'ptp', 'subtract' => 'sub', 'overlap' => 'ove', 'group_by' => 'grp', 'graph_union' => 'ubg' ); our @program_params = qw( command ate|tag ate|color eta|quality eti|path eti|session eti|sort eti|slop eti|image shb|exclude shb|seed wib|window_size wib|left_window_size wib|right_window_size clb|ties_policy gcb|max_depth gcb|strand meb|max_distance slb|add_bidirectional slb|add_to_left slb|add_to_right inb|minimum_overlap ptb|minimum_overlap ptb|type ptp|minimum_overlap ptp|type ptp|slop sub|minimum_overlap lib|basename lib|organism lib|genome_build ove|columns grp|group grp|columns grp|operations ubg|names ubg|filler ); our @program_switches = qw( ann|names ann|count ann|both ann|strandedness ate|write_bedpe ate|use_edit_distance ate|bam12 ate|split ate|use_edit_distance ate|cigar eta|uncompressed eta|bed12 eti|collapse eti|name ffb|use_bed_name ffb|output_tab_format ffb|strandedness gcb|bedgraph gcb|bedgraph_all gcb|split mfb|soft_mask shb|keep_chromosome wib|define_by_strand wib|same_strand wib|report_once_only wib|report_hits wib|invert clb|strandedness clb|report_distance gcb|report_pos_depth meb|strandedness meb|report_n_merged meb|report_names_merged slb|define_by_strand inb|write_bed inb|write_entry_1 inb|write_entry_2 inb|report_once_only inb|report_n_hits inb|invert_match inb|reciprocal inb|strandedness inb|write_overlap inb|write_overlap_all inb|split ptb|write_bedpe ptb|strandedness ptb|use_edit_distance ptb|write_uncompressed sob|size_asc sob|size_desc sob|chr_size_asc sob|chr_size_desc sob|chr_score_asc sob|chr_score_desc cvb|strandedness cvb|histogram cvb|depth cvb|split ptp|ignore_strand ptp|slop_strandedness ptp|no_self_hits sub|strandedness ubg|header ubg|empty ); our %param_translation = ( 'ann|names' => 'names', 'ann|counts' => 'counts', 'ann|both' => 'both', 'ann|strandedness' => 's', 'ate|write_bedpe' => 'bedpe', 'ate|use_edit_distance' => 'ed', 'ate|bam12' => 'bam12', 'ate|split' => 'split', 'ate|use_edit_distance' => 'ed', 'ate|tag' => 'tag', 'ate|color' => 'color', 'ate|cigar' => 'cigar', 'eta|quality' => 'maqp', 'eta|uncompressed' => 'ubam', 'eta|bed12' => 'bed12', 'eti|path' => 'path', 'eti|session' => 'sess', 'eti|sort' => 'sort', 'eti|collapse' => 'clps', 'eti|name' => 'name', 'eti|slop' => 'slop', 'eti|image' => 'img', 'ffb|use_bed_name' => 'names', 'ffb|output_tab_format' => 'tab', 'ffb|strandedness' => 's', 'mfb|soft_mask' => 'soft', 'shb|keep_chromosome' => 'chrom', 'shb|exclude' => 'excl', 'shb|seed' => 'seed', 'wib|define_by_strand' => 'sw', 'wib|same_strand' => 'sm', 'wib|report_once_only' => 'u', 'wib|report_hits' => 'c', 'wib|invert' => 'v', 'wib|window_size' => 'w', 'wib|left_window_size' => 'l', 'wib|right_window_size' => 'r', 'clb|strandedness' => 's', 'clb|report_distance' => 'd', 'clb|ties_policy' => 't', 'gcb|report_pos_depth' => 'd', 'gcb|max_depth' => 'max', 'gcb|bedgraph' => 'bg', 'gcb|bedgraph_all' => 'bga', 'gcb|split' => 'split', 'gcb|strand' => 'strand', 'meb|strandedness' => 's', 'meb|report_n_merged' => 'n', 'meb|report_names_merged' => 'nms', 'meb|max_distance' => 'd', 'slb|define_by_strand' => 's', 'slb|add_bidirectional' => 'b', 'slb|add_to_left' => 'l', 'slb|add_to_right' => 'r', 'inb|write_bed' => 'bed', 'inb|write_entry_1' => 'wa', 'inb|write_entry_2' => 'wb', 'inb|write_overlap' => 'wo', 'inb|write_overlap_all' => 'woa', 'inb|report_once_only' => 'u', 'inb|report_n_hits' => 'c', 'inb|invert_match' => 'v', 'inb|reciprocal' => 'r', 'inb|strandedness' => 's', 'inb|minimum_overlap' => 'f', 'inb|split' => 'split', 'ptb|write_bedpe' => 'bedpe', 'ptb|strandedness' => 's', 'ptb|minimum_overlap' => 'f', 'ptb|type' => 'type', 'ptb|use_edit_distance' => 'ed', 'ptb|write_uncompressed' => 'ubam', 'sob|size_asc' => 'sizeA', 'sob|size_desc' => 'sizeD', 'sob|chr_size_asc' => 'chrThenSizeA', 'sob|chr_size_desc' => 'chrThenSizeD', 'sob|chr_score_asc' => 'chrThenScoreA', 'sob|chr_score_desc' => 'chrThenScoreD', 'cvb|strandedness' => 's', 'cvb|histogram' => 'hist', 'cvb|depth' => 'd', 'cvb|split' => 'split', 'ptp|ignore_strand' => 'is', 'ptp|slop_strandedness' => 'ss', 'ptp|minimum_overlap' => 'f', 'ptp|type' => 'type', 'ptp|slop' => 'slop', 'ptp|no_self_hits' => 'rdn', 'sub|strandedness' => 's', 'sub|minimum_overlap' => 'f', 'lib|basename' => 'base', 'lib|organism' => 'org', 'lib|genome_build' => 'db', 'ove|columns' => 'cols', 'grp|group' => 'grp', 'grp|columns' => 'opCols', 'grp|operations' => 'ops', 'ubg|header' => 'header', 'ubg|names' => 'names', 'ubg|empty' => 'empty', 'ubg|filler' => 'filler' ); # # the order in the arrayrefs is the order required # on the command line # # the strings in the arrayrefs (less special chars) # become the keys for named parameters to run_bowtie # # special chars: # # '#' implies optional # '*' implies variable number of this type # <|> implies stdin/stdout redirect # our %command_files = ( 'annotate' => [qw( -i|bgv -files|*ann >#out )], 'bam_to_bed' => [qw( -i|bam >#out )], 'bed_to_bam' => [qw( -i|bgv -g|genome >#out )], 'bed_to_IGV' => [qw( -i|bgv >#out )], 'b12_to_b6' => [qw( -i|bed >#out )], 'fasta_from_bed' => [qw( -fi|seq -bed|bgv -fo|#out )], 'mask_fasta_from_bed' => [qw( -fi|seq -bed|bgv -fo|#out )], 'shuffle' => [qw( -i|bgv -g|genome >#out )], 'window' => [qw( -a|bgv1 -b|bgv2 >#out )], 'closest' => [qw( -a|bgv1 -b|bgv2 >#out )], 'genome_coverage' => [qw( -i|bed -g|genome >#out )], 'merge' => [qw( -i|bgv >#out )], 'slop' => [qw( -i|bgv -g|genome >#out )], 'complement' => [qw( -i|bgv -g|genome >#out )], 'intersect' => [qw( -a|#bgv1 -abam|#bam -b|bgv2 >#out )], # (bgv1|bam) required 'pair_to_bed' => [qw( -a|#bedpe -abam|#bam -b|bgv >#out )], # (bedpe|bam) required 'sort' => [qw( -i|bgv >#out )], 'coverage' => [qw( -a|bgv1 -b|bgv2 >#out )], 'links' => [qw( -i|bgv >#out )], 'pair_to_pair' => [qw( -a|bedpe1 -b|bedpe2 >#out )], 'subtract' => [qw( -a|bgv1 -b|bgv2 >#out )], 'group_by' => [qw( -i|bed >#out )], 'graph_union' => [qw( -i|*bg -g|#genome >#out )], 'overlap' => [qw( -i|bed >#out )] ); our %accepted_types = ( 'ann' => [qw( tab vcf gff )], # BEDTools now has multiple accepted input formats: bed/gff/vcf 'bam' => [qw()], # we need a test for this 'bed' => [qw( tab )], 'bgv' => [qw( tab vcf gff )], # BEDTools now has multiple accepted input formats: bed/gff/vcf 'bgv1' => [qw( tab vcf gff )], # BEDTools now has multiple accepted input formats: bed/gff/vcf 'bgv2' => [qw( tab vcf gff )], # BEDTools now has multiple accepted input formats: bed/gff/vcf 'bedpe' => [qw( tab )], 'bedpe1' => [qw( tab )], 'bedpe2' => [qw( tab )], 'seq' => [qw( fasta )], 'genome' => [qw( tab )], 'bg' => [qw( tab )] ); 1;