annotate variant_effect_predictor/Bio/EnsEMBL/Funcgen/Utils/Encode.pm @ 3:d30fa12e4cc5 default tip

Merge heads 2:a5976b2dce6f and 1:09613ce8151e which were created as a result of a recently fixed bug.
author devteam <devteam@galaxyproject.org>
date Mon, 13 Jan 2014 10:38:30 -0500
parents 1f6dce3d34e0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
1 # Ensembl module for Bio::EnsEMBL::Funcgen::Utils::Encode
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
2 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
3
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
4 =head1 LICENSE
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
5
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
6 Copyright (c) 1999-2011 The European Bioinformatics Institute and
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
7 Genome Research Limited. All rights reserved.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
8
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
9 This software is distributed under a modified Apache license.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
10 For license details, please see
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
11
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
12 http://www.ensembl.org/info/about/code_licence.html
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
13
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
14 =head1 CONTACT
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
15
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
16 Please email comments or questions to the public Ensembl
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
17 developers list at <ensembl-dev@ebi.ac.uk>.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
18
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
19 Questions may also be sent to the Ensembl help desk at
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
20 <helpdesk@ensembl.org>.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
21
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
22
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
23 =head1 NAME
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
24
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
25 Bio::EnsEMBL::Funcgen::Utils::Encode - provides some handy methods to deal
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
26 with Encode regions.
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
27
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
28 =head1 SYNOPSIS
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
29
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
30 use Bio::EnsEMBL::Funcgen::Utils::Encode qw(get_encode_regions);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
31
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
32 my $encode_regions = &get_encode_regions($dnadb, $assembly_version);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
33
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
34 =head1 DESCRIPTION
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
35
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
36 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
37
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
38 use strict;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
39 use warnings;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
40
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
41 package Bio::EnsEMBL::Funcgen::Utils::Encode;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
42
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
43 require Exporter;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
44 use vars qw(@ISA @EXPORT_OK);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
45 @ISA = qw(Exporter);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
46 @EXPORT_OK = qw(get_encode_regions);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
47
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
48 use Bio::EnsEMBL::Utils::Exception qw(throw);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
49 use POSIX;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
50 use Data::Dumper;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
51
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
52 =head2 get_encode_regions
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
53
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
54 Arg [1] : Bio::EnsEMBL::DBSQL::DBAdaptor
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
55 Description : fetch encode region coordinates from core db
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
56 Returns : reference to list of Bio::EnsEMBL::MiscFeatures Encode region slices
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
57 Exceptions : Throws if no Bio::EnsEMBL::DBSQL::DBAdaptor defined
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
58 Example : get_encode_regions($dnadb);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
59
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
60 =cut
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
61
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
62 sub get_encode_regions {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
63
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
64 my $db = shift;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
65
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
66 throw("Need to pass a valid Bio::EnsEMBL::DBSQL::DBAdaptor")
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
67 if (! ($db && $db->isa("Bio::EnsEMBL::DBSQL::DBAdaptor")));
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
68
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
69 my $sa = $db->get_SliceAdaptor();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
70 my $tls = $sa->fetch_all('toplevel');
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
71 #map { print Dumper $_->name } @$tls;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
72
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
73 my $mfa = $db->get_MiscFeatureAdaptor();
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
74
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
75 my @encode_regions;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
76 map {
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
77 push @encode_regions, @{$mfa->fetch_all_by_Slice_and_set_code($_, 'encode')};
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
78 } @$tls;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
79
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
80 return \@encode_regions;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
81
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
82
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
83 #my %encode_regions;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
84 #map { $encode_regions{$_->display_id} = sprintf
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
85 # ("%s:%s:%s:%d:%d:%d",
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
86 # $_->slice->coord_system_name,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
87 # $_->slice->coord_system()->version(),
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
88 # $_->slice->seq_region_name,
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
89 # $_->start, $_->end, $_->strand);
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
90 # } @encode_regions;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
91 #
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
92 #return \%encode_regions;
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
93
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
94 }
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
95
1f6dce3d34e0 Uploaded
mahtabm
parents:
diff changeset
96 1;