annotate variant_effect_predictor/Bio/EnsEMBL/ProteinFeature.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 =head1 LICENSE
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
2
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
3 Copyright (c) 1999-2012 The European Bioinformatics Institute and
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
4 Genome Research Limited. All rights reserved.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
5
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
6 This software is distributed under a modified Apache license.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
7 For license details, please see
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
8
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
9 http://www.ensembl.org/info/about/code_licence.html
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
10
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
11 =head1 CONTACT
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
12
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
13 Please email comments or questions to the public Ensembl
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
14 developers list at <dev@ensembl.org>.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
15
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
16 Questions may also be sent to the Ensembl help desk at
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
17 <helpdesk@ensembl.org>.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
18
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
19 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
20
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
21 =head1 NAME
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
22
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
23 Bio::EnsEMBL::ProteinFeature
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
24
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
25 =head1 SYNOPSIS
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
26
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
27 my $feature = Bio::EnsEMBL::ProteinFeature->new(
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
28 -start => $start,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
29 -end => $end,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
30 -hstart => $hit_start,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
31 -hend => $hit_end,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
32 -hseqname => $hit_name
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
33 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
34
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
35 =head1 DESCRIPTION
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
36
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
37 ProteinFeature objects represent domains or other features of interest
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
38 on a peptide sequence.
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 package Bio::EnsEMBL::ProteinFeature;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
45
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
46 use strict;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
47
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
48 use Bio::EnsEMBL::FeaturePair;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
49 use Bio::EnsEMBL::Utils::Argument qw(rearrange);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
50
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
51 use vars qw(@ISA);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
52 @ISA = qw(Bio::EnsEMBL::FeaturePair);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
53
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
54
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
55
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
56 =head2 new
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
57
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
58 Arg [IDESC] : (optional) string An interpro description
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
59 Arg [INTERPRO_AC] : (optional) string An interpro accession
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
60 Arg [TRANSLATION_ID] : (optional) integer A translation dbID
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
61 Arg [...] : named arguments to FeaturePair superclass
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
62 Example :
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
63
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
64 $pf =
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
65 Bio::EnsEMBL::ProteinFeature->new( -IDESC => $idesc,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
66 -INTERPRO_AC => $iac,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
67 @fp_args );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
68
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
69 Description: Instantiates a Bio::EnsEMBL::ProteinFeature
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
70 Returntype : Bio::EnsEMBL::FeaturePair
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
71 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
72 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
73 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
74
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
75 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
76
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
77 sub new {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
78 my $proto = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
79
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
80 my $class = ref($proto) || $proto;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
81
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
82 my ( $idesc, $interpro_ac, $translation_id ) =
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
83 rearrange( [ 'IDESC', 'INTERPRO_AC', 'TRANSLATION_ID' ], @_ );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
84
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
85 my $self = $class->SUPER::new(@_);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
86
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
87 # the strand of protein features is always 0
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
88 $self->{'strand'} = 0;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
89 $self->{'idesc'} = $idesc || '';
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
90 $self->{'interpro_ac'} = $interpro_ac || '';
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
91 $self->{'translation_id'} = $translation_id || '';
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
92
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
93 return $self;
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 =head2 strand
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
98
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
99 Arg [1] : Ignored
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
100 Description: Overwrites Bio::EnsEMBL::Feature->strand to not allow
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
101 : the strand to be set.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
102 Returntype : int
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
103 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
104
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
105 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
106
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
107 #do not allow the strand to be set
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
108 sub strand {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
109 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
110 return $self->{'strand'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
111 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
112
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
113
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
114
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
115 =head2 idesc
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
116
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
117 Arg [1] : (optional) string The interpro description
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
118 Example : print $protein_feature->idesc();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
119 Description: Getter/Setter for the interpro description of this protein
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
120 feature.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
121 Returntype : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
122 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
123 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
124 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
125
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
126 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
127
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
128 sub idesc{
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
129 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
130 $self->{'idesc'} = shift if(@_);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
131 return $self->{'idesc'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
132 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
133
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
134
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
135
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
136 =head2 interpro_ac
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
137
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
138 Arg [1] : (optional) string The interpro accession
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
139 Example : print $protein_feature->interpro_ac();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
140 Description: Getter/Setter for the interpro accession of this protein
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
141 feature.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
142 Returntype : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
143 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
144 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
145 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
146
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
147 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
148
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
149 sub interpro_ac{
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
150 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
151 $self->{'interpro_ac'} = shift if(@_);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
152 return $self->{'interpro_ac'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
153 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
154
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
155
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
156 =head2 translation_id
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
157
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
158 Arg [1] : (optional) integer The dbID of the translation
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
159 Example : print $protein_feature->translation_id();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
160 Description: Getter/Setter for the translation dbID of this protein
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
161 feature.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
162 Returntype : string
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
163 Exceptions : none
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
164 Caller : general
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
165 Status : Stable
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
166
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
167 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
168
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
169 sub translation_id {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
170 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
171 $self->{'translation_id'} = shift if (@_);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
172 return $self->{'translation_id'};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
173 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
174
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
175 1;