The second half of the engine handles the cases where we select individual operators to appear in the output.
# but if arguments are provided, handle them properly:
# make sure argument is actually in the database
else {
push(@sought, $_) foreach (sort keys %data);
# if we're just displaying results on screen ...
if (! $write) {
foreach (@sought) {
defined $data{$_}
? $self->_profile_subengine(\%data, $_)
: print "$_ not found.\n\n";
}
}
# but if we're writing to file(s) (one file per element) ...
else {
foreach (@sought) {
if (defined $data{$_}) {
my $output = $_ . '.txt';
my $oldfh = select OUT;
open OUT, ">$output" or die;
$self->_profile_subengine(\%data, $_);
close OUT or die;
select($oldfh);
} else {
print "$_ not found.\n\n";
}
}
}
}
| Previous | Back to start of show | Next |
| Slide: 23 prof_eng_2 | © 2003 James E. Keenan |