From 370a54be65627ee10febf3636d1ad41435a2d782 Mon Sep 17 00:00:00 2001
From: Olivier Langella <Olivier.Langella@moulon.inra.fr>
Date: Fri, 7 Apr 2017 18:01:33 +0200
Subject: [PATCH] FDR computation OK

---
 src/gui/project_view/projectwindow.cpp | 19 ++++++++++++++-----
 src/gui/project_view/projectwindow.h   |  2 +-
 2 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/src/gui/project_view/projectwindow.cpp b/src/gui/project_view/projectwindow.cpp
index 125b57b45..f2a57aa78 100644
--- a/src/gui/project_view/projectwindow.cpp
+++ b/src/gui/project_view/projectwindow.cpp
@@ -138,14 +138,23 @@ void ProjectWindow::refreshGroup(IdentificationGroup * p_ident_group) {
     qDebug() << "ProjectWindow::refreshGroup end";
 }
 
-void ProjectWindow::computeFdr() {
+void ProjectWindow::computeFdr(ValidationState state) {
     pappso::pappso_double total_prot=0;
     pappso::pappso_double false_prot=0;
     for (IdentificationGroup * identification_group : _project_sp.get()->getIdentificationGroupList()) {
-        total_prot += identification_group->countProtein(ValidationState::grouped);
-        false_prot += identification_group->countDecoyProtein(ValidationState::grouped);
+        total_prot += identification_group->countProtein(state);
+        false_prot += identification_group->countDecoyProtein(state);
     }
     ui->protein_fdr_label->setText(QString("%1 %").arg(false_prot/total_prot));
+    
+    
+    pappso::pappso_double total_peptide=0;
+    pappso::pappso_double false_peptide=0;
+    for (IdentificationGroup * identification_group : _project_sp.get()->getIdentificationGroupList()) {
+        //total_peptide += identification_group->countPeptideMatch(state);
+        //false_peptide += identification_group->countDecoyPeptideMatch(state);
+    }
+    ui->peptide_fdr_label->setText(QString("%1 %").arg(false_peptide/total_peptide));
 }
 
 void ProjectWindow::doFdrChanged() {
@@ -158,7 +167,7 @@ void ProjectWindow::doFdrChanged() {
         doIdentificationGroupEdited(identification_group);
     }
 
-    computeFdr();
+    computeFdr(ValidationState::grouped);
     qDebug() << "ProjectWindow::doFdrChanged end ";
 }
 void ProjectWindow::doAutomaticFilterParametersChanged(AutomaticFilterParameters parameters) {
@@ -336,6 +345,6 @@ void ProjectWindow::setProjectSp(ProjectSp project_sp) {
     //_protein_list_window->show();
 
     ui->decoy_protein_regexp_line_edit->setText(_project_sp.get()->getProteinStore().getRegexpDecoy().pattern());
-    computeFdr();
+    computeFdr(ValidationState::grouped);
     this->setEnabled(true);
 }
diff --git a/src/gui/project_view/projectwindow.h b/src/gui/project_view/projectwindow.h
index c9b140fdb..2cdbc36b9 100644
--- a/src/gui/project_view/projectwindow.h
+++ b/src/gui/project_view/projectwindow.h
@@ -68,7 +68,7 @@ protected :
     void doViewPeptideDetail(PeptideMatch * peptide_match);
     void doViewProteinDetail(ProteinMatch * protein_match);
     void doIdentificationGroupEdited(IdentificationGroup * p_identification_group);
-    void computeFdr();
+    void computeFdr(ValidationState state);
 
 private :
     void connectNewProteinListWindow();
-- 
GitLab