
# -*- perl -*-

use FIG;
use Tracer;

my $fig = new FIG;

# usage: load_coupling

$pchD   = "$FIG_Config::data/CouplingData/PCHs";
$scores = "$FIG_Config::data/CouplingData/scores";

use DBrtns;

if (!(-d $pchD)) {
    Trace("Coupling directory $pchD not found.") if T(1);
    exit;
} elsif (!(-s $scores)) {
    Trace("Coupling data file $scores not found.") if T(1);
    exit;
}
Trace("Re-creating coupling table.") if T(2);
my $dbf = $fig->db_handle;
$dbf->reload_table('all', 'fc_pegs',
                   "peg1 varchar(32), peg2 varchar(32), score integer",
                   { fc_pegs_ix => "peg1, peg2" },
                   $scores
          );
Trace("Re-creating PCH table.") if T(2);
$dbf->reload_table('all', "pchs",
                   "peg1 varchar(32), peg2 varchar(32), peg3 varchar(32), peg4 varchar(32),
                       inden13 varchar(6), inden24 varchar(6), para3  integer, para4 integer, rep char(1)",
                    { pchs_ix => "peg1, peg2" }
          );
Trace("Reading PCH directory.") if T(2);
@files = grep { (-s "$pchD/$_") } OpenDir($pchD, 1);
foreach $file (@files) {
    Trace("Loading PCH data from $file.") if T(3);
    $dbf->load_table( tbl => "pchs",
                      file => "$pchD/$file" );
}
Trace("Finishing PCH load.") if T(2);
$dbf->finish_load('all', 'pchs');

Trace("Couplings loaded.") if T(2);
