annotate variant_effect_predictor/Bio/EnsEMBL/Funcgen/ExperimentalSubset.pm @ 0:21066c0abaf5 draft

Uploaded
author willmclaren
date Fri, 03 Aug 2012 10:04:48 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1 #
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
2 # Ensembl module for Bio::EnsEMBL::Funcgen::ExperimentalSubset
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
3 #
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
4 # You may distribute this module under the same terms as Perl itself
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
5
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
6 =head1 NAME
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
7
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
8 Bio::EnsEMBL::ExperimentalSet - A module to represent ExperimentalSubset object.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
9
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
10
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
11 =head1 SYNOPSIS
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
12
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
13 use Bio::EnsEMBL::Funcgen::ExperimetnalSubset;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
14
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
15 my $data_set = Bio::EnsEMBL::Funcgen::ExperimentalSubset->new(
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
16 -DBID => $dbID,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
17 -ADAPTOR => $self,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
18 -NAME => $name,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
19 -EXPERIMENTAL_SET => $eset,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
20 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
21
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
22
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
23
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
24 =head1 DESCRIPTION
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
25
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
26 An ExperimentalSubset object is a very simple skeleton class to enable storage of associated subset states. As such there
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
27 are only very simple accessor methods for basic information, and there is no namesake adaptor, rather is is handled by the
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
28 ExperimentalSetAdaptor.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
29
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
30 =head1 AUTHOR
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
31
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
32 This module was created by Nathan Johnson.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
33
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
34 This module is part of the Ensembl project: http://www.ensembl.org/
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
35
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
36 =head1 CONTACT
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
37
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
38 Post comments or questions to the Ensembl development list: ensembl-dev@ebi.ac.uk
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
39
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
40 =head1 METHODS
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
41
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
42 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
43
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
44 use strict;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
45 use warnings;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
46
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
47 package Bio::EnsEMBL::Funcgen::ExperimentalSubset;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
48
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
49 use Bio::EnsEMBL::Utils::Argument qw( rearrange );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
50 use Bio::EnsEMBL::Utils::Exception qw( throw );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
51 use Bio::EnsEMBL::Funcgen::Storable;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
52
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
53 use vars qw(@ISA);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
54 @ISA = qw(Bio::EnsEMBL::Funcgen::Storable);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
55
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
56
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
57 =head2 new
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
58
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
59 Example : my $eset = Bio::EnsEMBL::Funcgen::ExperimentalSubset->new(
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
60 -DBID => $dbID,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
61 -ADAPTOR => $self,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
62 -NAME => $name,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
63 -EXPERIMENTAL_SET => $eset,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
64 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
65
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
66
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
67 Description: Constructor for ExperimentalSubset objects.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
68 Returntype : Bio::EnsEMBL::Funcgen::ExperimentalSubset
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
69 Exceptions : Throws if no name defined
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
70 Throws if CellType or FeatureType are not valid or stored
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
71 Caller : General
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
72 Status : At risk
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
73
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
74 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
75
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
76 sub new {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
77 my $caller = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
78
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
79 my $class = ref($caller) || $caller;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
80
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
81 my $self = $class->SUPER::new(@_);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
82
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
83 #do we need to add $fg_ids to this? Currently maintaining one feature_group focus.(combi exps?)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
84 my ($name, $eset)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
85 = rearrange(['NAME', 'EXPERIMENTAL_SET'], @_);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
86
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
87
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
88 throw('Must provide a name argument') if ! defined $name;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
89
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
90 if(!(ref($eset) &&
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
91 $eset->isa('Bio::EnsEMBL::Funcgen::ExperimentalSet')
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
92 && $eset->dbID())){
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
93 throw('Must provide a valid stored experimental_set argument');
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
94 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
95
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
96
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
97 $self->{'name'} = $name;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
98 $self->{'experimental_set'} = $eset;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
99
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
100 return $self;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
101 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
102
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
103
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
104 =head2 name
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
105
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
106 Example : my $name = $exp_sset->name();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
107 Description: Getter for the name of this ExperimentalSubset.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
108 Returntype : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
109 Exceptions : None
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
110 Caller : General
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
111 Status : At Risk
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
112
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
113 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
114
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
115 sub name {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
116 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
117 return $self->{'name'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
118 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
119
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
120 =head2 experimental_set
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
121
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
122 Example : my $eset = $exp_sset->experimental_set();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
123 Description: Getter for the experimental_set attribute of this ExperimentalSubset.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
124 Returntype : Bio::EnsEMBL::Funcgen::ExperimentalSet
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
125 Exceptions : None
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
126 Caller : General
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
127 Status : At Risk
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
128
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
129 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
130
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
131 sub experimental_set {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
132 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
133 return $self->{'experimental_set'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
134 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
135
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
136
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
137
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
138 1;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
139