Index by: file name |
procedure name |
procedure call |
annotation
gscope_aful.tcl
(annotations | original source)
proc DonneesAful AF {
Wup "We used Archeoglobus fulgidus as model for classification"
global LesDonneesAful
if {$AF == ""} { return {} }
if { ! [info exists LesDonneesAful]} { ChargeLesDonneesAful }
if { ! [info exists LesDonneesAful($AF)]} { return {}}
return [set LesDonneesAful($AF)]
}
proc ChargeLesDonneesAful {} {
global RepertoireDuGenome
global LesDonneesAful
JeMeSignale Patience
foreach Ligne [LesLignesDuFichier "$RepertoireDuGenome/aful/aful_la_totale.txt"] {
if {[regexp "^AF" $Ligne]} {
scan $Ligne "%s" AF
lappend LesDonneesAful($AF) $Ligne
}
}
JeMeSignale FinPatience
}
proc GNdeAful Nom {
if {[scan [lindex [DonneesAful [NomDuMeilleurAful $Nom]] 0] "%s %s %s %s" AF RoFa Orga GN] == 4 } {
return $GN
} else {
return "zzzz"
}
}
proc NomDuMeilleurAful Nom {
set mAF [MeilleurAful $Nom]
scan [MeilleurAful $Nom] "%s %s %f %s" AF AFok PN Raison
if {$AFok} {
return $AF
} else {
return ""
}
}
proc MeilleurAful Nom {
global LeMeilleurAful
if { ! [info exists LeMeilleurAful]} { ChargeLeMeilleurAful }
if { ! [info exists LeMeilleurAful($Nom)]} { return "AF0000 0 8888.8 noReference"}
return [set LeMeilleurAful($Nom)]
}
proc ChargeLeMeilleurAful {} {
global RepertoireDuGenome
global ListeDeBoites
global LeMeilleurAful
JeMeSignale Patience
if { ! [info exists ListeDeBoites]} { ChargeListeDeBoites }
foreach Boite $ListeDeBoites {
set Nom [Box $Boite nom]
if { ! [YaPABdans $Nom]} { continue }
set FichierAPNs "$RepertoireDuGenome/afulapns/$Nom"
if { ! [file exists $FichierAPNs]} {
set LeMeilleurAful($Nom) "AF0000 0 9999.9 noBlastpFile"
continue
}
scan [lindex [LesLignesDuFichier $FichierAPNs] 0] "%s %f" AF PN
set SeuilDuMeileurAful 99.9
# set SeuilDuMeileurAful 1.e-3
set AFok [expr $PN <= $SeuilDuMeileurAful]
set LeMeilleurAful($Nom) "$AF $AFok $PN compared_to_$SeuilDuMeileurAful"
}
JeMeSignale FinPatience
}
proc QueDitAful Nom {
global RepertoireDuGenome
global KanvaCourant
scan [MeilleurAful $Nom] "%s %s %f %s" AF AFok PN Raison
if {$AFok} {
set ListeDesDonnees [DonneesAful $AF]
if { $ListeDesDonnees == {} } {
set Message "$AF $PN"
return 0
} else {
set Message "$AF $PN\n[join $ListeDesDonnees "\n"]"
}
} else {
set Message "$AF $PN $Raison"
return 0
}
# if {[FiabiliteFonction $Nom] < 7} { return 0 }
set Fenetre [AfficheVariable "$Message\n\n[ContenuDuFichier $RepertoireDuGenome/infos/$Nom]" "GrandeLargeur"]
set DEs [ExtraitInfo $Nom "DE"]
set LesDEs [split $DEs "/"]
set GNs [ExtraitInfo $Nom "GN"]
set LesGNs [split $GNs "/"]
scan [lindex $ListeDesDonnees 0] "%s %s %s %s" AF RoleFamille HomologueDuAful GNduAful
set ListeDesMots [split [lindex $ListeDesDonnees 0] " "]
set DEduAful [join [lrange $ListeDesMots 4 end] " "]
set ListeDesMots [split [lindex $ListeDesDonnees 1] "/"]
set StringRoleFamille [join [lrange $ListeDesMots 1 2] "/"]
if {[info exists KanvaCourant]} {
RepereBox "Nom: $Nom" $KanvaCourant "SansInforme"
}
set ValiDE "$DEduAful"
set ValiGN "$GNduAful"
set ValiCF "$RoleFamille / $StringRoleFamille"
set Action [ChoixParmi [list "Aful CF DE GN" "Aful CF DE " "Aful CF GN" "Aful CF " "Autres choix ..." "Abandonne ce [PreFixe]" ]]
switch $Action {
"Aful CF DE GN" {
Informe $Nom "ValiDE: $ValiDE\nValiGN: $ValiGN\nValiCF: $ValiCF"
catch { $Fenetre.buttons.dismiss invoke }
return 1
}
"Aful CF GN" {
Informe $Nom "ValiGN: $ValiGN\nValiCF: $ValiCF"
catch { $Fenetre.buttons.dismiss invoke }
return 1
}
"Aful CF DE " {
Informe $Nom "ValiDE: $ValiDE\nValiCF: $ValiCF"
catch { $Fenetre.buttons.dismiss invoke }
return 1
}
"Aful CF " {
Informe $Nom "ValiCF: $ValiCF"
catch { $Fenetre.buttons.dismiss invoke }
return 1
}
"Abandonne ce [PreFixe]" {
catch { $Fenetre.buttons.dismiss invoke }
return 1
}
"Autres choix ..." {
set YaCF 0
set ValiDE [ChoixParmi [concat $LesDEs [list "$DEduAful"] "EditInfo"]]
if {$ValiDE != ""} {
if {$ValiDE == "EditInfo"} {
Informe $Nom
} else {
if {$ValiDE == $DEduAful} {
Informe $Nom "ValiDE: $ValiDE\nValiCF: $ValiCF"
set YaCF 1
} else {
Informe $Nom "ValiDE: $ValiDE"
}
}
}
set ValiGN [ChoixParmi [concat $LesGNs $GNduAful "EditInfo"]]
if {$ValiGN != ""} {
if {$ValiGN == "EditInfo"} {
Informe $Nom
} else {
if {$ValiGN == $GNduAful} {
Informe $Nom "ValiGN: $ValiGN\nValiCF: $ValiCF"
set YaCF 1
} else {
Informe $Nom "ValiGN: $ValiGN"
}
}
}
if { ! $YaCF } { Informe $Nom "ValiCF: $ValiCF" }
catch { $Fenetre.buttons.dismiss invoke }
return 1
}
}
$Fenetre.buttons.dismiss invoke
return 0
}
Index by: file name |
procedure name |
procedure call |
annotation
File generated 2022-04-05 at 12:55.