0
|
1
|
|
2 package Bio::Pfam::HMM::HMMUnit;
|
|
3
|
|
4 use strict;
|
|
5 use warnings;
|
|
6
|
|
7 use Moose;
|
|
8 use Moose::Util::TypeConstraints;
|
|
9
|
|
10 extends 'Bio::Pfam::HMM::HMMMatch';
|
|
11
|
|
12 subtype 'Domain'
|
|
13 => as 'Int'
|
|
14 => where { $_ > 0 };
|
|
15
|
|
16 #coerce 'Domain'
|
|
17 # => from 'Str'
|
|
18 # => via {
|
|
19 # my $d;
|
|
20 # if(/(\d+)\/\d+/){
|
|
21 # $d = $1;
|
|
22 # }
|
|
23 # return $d;
|
|
24 # };
|
|
25 #
|
|
26
|
|
27 #subtype 'proteinCoos'
|
|
28 # => as 'Int'
|
|
29 # => where { $_ > 0 && $_ < 100000 }
|
|
30 # => message { 'Protein coordinates are expected to be positive and less the 100,000'};
|
|
31
|
|
32
|
|
33 has 'seqEvalue' => (
|
|
34 isa => 'Num',
|
|
35 is => 'rw',
|
|
36 );
|
|
37
|
|
38 has 'domain' => (
|
|
39 isa => 'Domain',
|
|
40 is => 'rw'
|
|
41 );
|
|
42
|
|
43 has 'seqFrom' => (
|
|
44 isa => 'Int',
|
|
45 is => 'rw',
|
|
46 required => 1
|
|
47 );
|
|
48
|
|
49 has 'seqTo' => (
|
|
50 isa => 'Int',
|
|
51 is => 'rw',
|
|
52 required => 1
|
|
53 );
|
|
54
|
|
55 #has 'indEvalue' => (
|
|
56 # isa => 'evalue',
|
|
57 # is => 'rw',
|
|
58 # required => 1,
|
|
59 #);
|
|
60
|
|
61 has 'domEvalue' => (
|
|
62 isa => 'evalue',
|
|
63 is => 'rw',
|
|
64 );
|
|
65
|
|
66 has 'hmmalign' => (
|
|
67 isa => 'HashRef',
|
|
68 is => 'rw',
|
|
69 default => sub { {} },
|
|
70 );
|
|
71
|
|
72 has 'hmmFrom' => (
|
|
73 isa => 'Int',
|
|
74 is => 'rw',
|
|
75 required => 1
|
|
76 );
|
|
77
|
|
78 has 'hmmTo' => (
|
|
79 isa => 'Int',
|
|
80 is => 'rw',
|
|
81 required => 1
|
|
82 );
|
|
83
|
|
84 has 'envFrom' => (
|
|
85 isa => 'Int',
|
|
86 is => 'rw'
|
|
87 );
|
|
88
|
|
89 has 'envTo' => (
|
|
90 isa => 'Int',
|
|
91 is => 'rw'
|
|
92 );
|
|
93
|
|
94 has 'coreFrom' => (
|
|
95 isa => 'Str',
|
|
96 is => 'rw'
|
|
97 );
|
|
98
|
|
99 has 'coreTo' => (
|
|
100 isa => 'Str',
|
|
101 is => 'rw'
|
|
102 );
|
|
103
|
|
104 has 'aliAcc' => (
|
|
105 isa => 'Num',
|
|
106 is => 'rw'
|
|
107 );
|
|
108
|
|
109 has 'sig' => (
|
|
110 isa => 'Int',
|
|
111 is => 'rw'
|
|
112 );
|
|
113
|
|
114
|
|
115 __PACKAGE__->meta->make_immutable;
|
|
116
|
|
117 =head1 COPYRIGHT
|
|
118
|
|
119 Copyright (c) 2007: Genome Research Ltd.
|
|
120
|
|
121 Authors: Rob Finn (rdf@sanger.ac.uk), John Tate (jt6@sanger.ac.uk)
|
|
122
|
|
123 This is free software; you can redistribute it and/or modify it under
|
|
124 the terms of the GNU General Public License as published by the Free Software
|
|
125 Foundation; either version 2 of the License, or (at your option) any later
|
|
126 version.
|
|
127
|
|
128 This program is distributed in the hope that it will be useful, but WITHOUT
|
|
129 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
130 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
|
131 details.
|
|
132
|
|
133 You should have received a copy of the GNU General Public License along with
|
|
134 this program. If not, see <http://www.gnu.org/licenses/>.
|
|
135
|
|
136 =cut
|
|
137
|
|
138 1;
|