-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathExonerateOutput.pir
43 lines (34 loc) · 1.04 KB
/
ExonerateOutput.pir
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#
# Output from Exonerate.
#
- PerlClass PirObject::ExonerateOutput
- InheritsFrom PirObject
- FieldsTable
# Field name Struct Type Comments
#---------------------- --------------- --------------- -----------------------
command single string Command line
report array <ExonerateReport>
- EndFieldsTable
- Methods
our $RCS_VERSION='$Id: ExonerateOutput.pir,v 1.2 2008/08/19 20:32:05 riouxp Exp $';
our ($VERSION) = ($RCS_VERSION =~ m#,v ([\w\.]+)#);
sub FillFeaturesFromTextOutput {
my $self = shift;
my $tab = shift;
my $report = [];
for (;;) {
last if @$tab == 0;
my @c4 = ();
push(@c4,shift(@$tab)) while @$tab && $tab->[0] !~ m#^C4 Ali#;
if ($c4[0] =~ /^Command line:\s*(.+)/){
$self->set_command($1);
}
else {
my $obj = new PirObject::ExonerateReport();
$obj->FillFeaturesFromC4Report(\@c4);
push(@$report,$obj);
}
shift(@$tab) if @$tab;
}
$self->set_report($report);
}