Raw content of Bio::EnsEMBL::Analysis::Config::GeneBuild::Pmatch
package Bio::EnsEMBL::Analysis::Config::GeneBuild::Pmatch;
use strict;
use vars qw( %Config );
# Hash containing config info
%Config = (
#Under each the two keys "PMATCH_BY_LOGIC" and "BESTPMATCH_BY_LOGIC",
#the DEFAULT hash must be present and should contain default settings.
#Non-standard settings should be provided in a second hash that follows
#the DEFAULT one with the same structure, using the logic_name as the
#second hash's key, e.g. "PMATCH".
# ***** WATCH OUT ***** #
#The second hash (mainly its key) MUST be present EVEN IF there are no
#non-standard settings to be defined. In that case, just leave the second
#hash empty with no values, e.g.
#
#PMATCH => {
# },
#
#Missing out the DEFAULT and/or the second hash will result in the config
#not being read properly and the analysis will fail right from the start.
PMATCH_BY_LOGIC =>
{
DEFAULT =>{
# Before testing Pmatch analysis in pipeline test system, modify the protein file path, which should look like
# something like this:
#
# PROTEIN_FILE => '/your/working/directory/for/running/the/test/homo_sapiens/data/pmatch_proteins.fa.',
#
# PROTEIN_FILE must always be specified. The "working directory" will always be in ensembl-pipeline/test_system as you'll
# have to be in that directory to run ANY test in the first place.
PROTEIN_FILE => '/your/cvs/checkout/dir/ensembl-pipeline/test_system/homo_sapiens/data/pmatch_proteins.fa',
MIN_COVERAGE => 25,
BINARY_LOCATION => '/usr/local/ensembl/bin/pmatch',
REPEAT_MASKING => [],
MAX_INTRON_LENGTH => 50000,
OUTPUT_DB => 'REFERENCE_DB',
},
PMATCH => {
},
#If you wish any of the settings to be non standard generate a hash
#with the same structure but change DEFAULT to be your analysis
#logic_name
},
BESTPMATCH_BY_LOGIC =>
{
DEFAULT =>{
PMATCH_LOGIC_NAME => 'Pmatch',
MIN_COVERAGE => 25,
INPUT_DB => 'REFERENCE_DB',
OUTPUT_DB => 'REFERENCE_DB',
},
BESTPMATCH => {
},
},
);
sub import {
my ($callpack) = caller(0); # Name of the calling package
my $pack = shift; # Need to move package off @_
# Get list of variables supplied, or else everything
my @vars = @_ ? @_ : keys( %Config );
return unless @vars;
# Predeclare global variables in calling package
eval "package $callpack; use vars qw("
. join(' ', map { '$'.$_ } @vars) . ")";
die $@ if $@;
foreach (@vars) {
if ( defined $Config{$_} ) {
no strict 'refs';
# Exporter does a similar job to the following
# statement, but for function names, not
# scalar variables:
*{"${callpack}::$_"} = \$Config{ $_ };
} else {
die "Error: Config: $_ not known\n";
}
}
}
1;