[Bio] / FigKernelPackages / FIG.pm Repository:
ViewVC logotype

Diff of /FigKernelPackages/FIG.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.182, Fri Nov 5 14:57:59 2004 UTC revision 1.183, Wed Nov 10 22:10:22 2004 UTC
# Line 14  Line 14 
14  use tree_utilities;  use tree_utilities;
15  use Subsystem;  use Subsystem;
16  use SeedDas;  use SeedDas;
17    use Construct;
18    
19  #  #
20  # Conditionally evaluate this in case its prerequisites are not available.  # Conditionally evaluate this in case its prerequisites are not available.
# Line 6518  Line 6519 
6519      return @subsystems;      return @subsystems;
6520  }  }
6521    
6522    sub all_constructs {
6523        my($self) = @_;
6524    
6525        my @subsystems = ();
6526        if (opendir(SUB,"$FIG_Config::data/Subsystems"))
6527        {
6528            push(@subsystems,grep { ($_ !~ /^\./) } readdir(SUB));
6529            closedir(SUB);
6530        }
6531    
6532        my @c;
6533        for my $subname (@subsystems)
6534        {
6535            $subname =~ s/[ \/]/_/g;
6536            my $cfile = "$FIG_Config::data/Subsystems/$subname/constructs";
6537            if (-f $cfile)
6538            {
6539                my $sub = $self->get_subsystem($subname);
6540                my @a = Construct::parse_constructs_file($cfile, $sub);
6541                my $l = [];
6542    
6543                for my $con (@a)
6544                {
6545                    my($cname, $list) = @$con;
6546                    my $nreqs = [];
6547    
6548                    for my $req (@$list)
6549                    {
6550                        if ($req->[0] eq 'R')
6551                        {
6552                            push(@$nreqs, ['R', $req->[2]]);
6553                        }
6554                        else
6555                        {
6556                            push(@$nreqs, $req);
6557                        }
6558                    }
6559                    push(@$l, [$cname, $nreqs]);
6560                }
6561                push(@c, [$subname, $l]);
6562            }
6563        }
6564        return @c;
6565    }
6566    
6567  sub subsystem_version :scalar {  sub subsystem_version :scalar {
6568      shift if UNIVERSAL::isa($_[0],__PACKAGE__);      shift if UNIVERSAL::isa($_[0],__PACKAGE__);
6569      my $ssa = (@_ == 1) ? $_[0] : $_[1];      my $ssa = (@_ == 1) ? $_[0] : $_[1];

Legend:
Removed from v.1.182  
changed lines
  Added in v.1.183

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3