#!/usr/bin/perl
# 2001/11/27 - I. Dutour

# Ignorer toutes les lignes jusqu'au trait horizontal
while (<>) {
    last
	if (/^----------/);
}

my %sum;  # tableau associatif

# Lire toutes les lignes. On s'arrete au 2ème trait horizontal
while (<>) {
    chomp;
    last 
	if (/----------/ or /^$/);
    ($orf,$start,$stop,$gene,$disrupt,
     $length,$cai,$mo,$tm,$class,$desc) =
        ($_ =~ /^
	        \s* ([-\w]+)      \s*    \| # id de l'ORF
  		\s* \((\d+)-(\d+) [^\|]* \| # coordonnées
	        \s* ([^\|]*)      \s*    \| # gene
	        \s* ([\/\w]*)     \s*    \| # disrupt
	        \s* ([\w]*)       \s*    \| # length
	        \s* ([\.\w]*)     \s*    \| # cai
	        \s* ([\w]*)       \s*    \| # mo
	        \s* ([\w]*)       \s*    \| # tm
	        \s* ([\w]*)       \s*    \| # class
	        \s* ([^\|]*)                # desc
	       $/x);

    my ($side) = ($orf =~ /Y.(.).*/);
    $sum{$side}{N} += 1;
    $sum{$side}{length} += $length unless (!$length);
    $sum{$side}{cai} += $cai  unless (!$cai);
}

# Générer rapport

#foreach $s (keys(%sum)) { # a tester apres
foreach $s ("L", "R") {
    print "Side $s:\n";
    print "Nombre d'ORFs  : ", $sum{$s}{N},                    "\n";
    print "Moyen longueur : ", $sum{$s}{length} / $sum{$s}{N}, "\n";
    print "Moyen cai      : ", $sum{$s}{cai} / $sum{$s}{N},    "\n\n";
}

