#!/usr/bin/perl 

use strict;
use warnings;

###########################################################
#
# The script checkes accepted predictions. Due to the bug 
# the severe verification has been turned off. That's why it 
# was necessary to verify all models once again separately.
#
###########################################################

use lib ("/local/Projects/Perl/casp13/src/Classes");
use lib ("/local/Projects/Perl/casp13/src/Classes/Core");

use GroupsManager;

my $VERIFICATORS_DIR = '/local/Projects/Perl/casp13/src/Classes/Core/bin';

my $AL_VER = 'al_ver';
my $TS_VER = 'ts_ver';
my $TS_VER_SERV = 'ts_ver_serv';
my $RR_VER = 'rr_ver';
my $DP_VER = 'dp_ver';
my $DR_VER = 'dr_ver';
my $SS_VER = 'ss_ver';
my $QA_VER = 'qa_ver.pl';
my $FN_VER = 'fn_ver.pl';

my $AL2TS  = 'al2ts';


my $grp_manager = new GroupsManager();

my $target;
if(defined $ARGV[0] && $ARGV[0] =~ m/[TR][0-9]{4}/){
  $target = $ARGV[0] ;
}else{
  print "The first argument should be the valid target name\n";
  exit;
}

my @preds = ();
open IN, "ls -1 /data/CASP13/predictions/tmp_accepted/$target/$target* |";
while(<IN>){
  chomp $_;
  if($_ =~ m/TS/){
     push(@preds,$_);
  }
}
close(IN);
my $count =0;
foreach my $pred(@preds){
  my $code;
  if($pred =~ m/TS([0-9]{3})_[1-5]/){
    $code = $1;
    my $grp_id = $grp_manager->get_id_by_code($code);
    my $grp_name = $grp_manager->name($grp_id);
    my $error = `cd $VERIFICATORS_DIR ; ./$TS_VER $pred | grep ERROR`;
    chomp $error;
    if($error ne '') {
      print "$pred\t$grp_name\t$error\n";
    }
  }
#  last if ($count == 50);
  $count++;
}




exit;


