From 0b1d899edb4389131341811b90675fb16b7e92a8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Romain=20=22Rom=27s=22=20DERR=C3=89?=
 <romain.derre@ensiie.fr>
Date: Wed, 27 Mar 2019 11:30:49 +0100
Subject: [PATCH] =?UTF-8?q?Update=20elementstablemodel.cpp,=20task.h/cpp?=
 =?UTF-8?q?=20Ajout=20de=20fonctions=20permettant=20d'=C3=A9crire=20dans?=
 =?UTF-8?q?=20un=20fichier=20en=20CSV.=20Fait=20avec=20l'IDE=20de=20Git=20?=
 =?UTF-8?q?donc=20non=20test=C3=A9=20!?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 app/elementstablemodel.cpp | 13 ++++++++++++-
 app/task.cpp               | 16 ++++++++--------
 app/task.h                 |  2 +-
 3 files changed, 21 insertions(+), 10 deletions(-)

diff --git a/app/elementstablemodel.cpp b/app/elementstablemodel.cpp
index f40c2cd..4f55f7b 100644
--- a/app/elementstablemodel.cpp
+++ b/app/elementstablemodel.cpp
@@ -185,7 +185,18 @@ void ElementsTableModel::update()
 }
 
 
-
+void ElementsTableModel::writeCSV(QFile file)
+{
+    if ( file.open(QIODevice::ReadWrite) )
+    {
+        QTextStream stream( &file );
+        stream << "PID , name , status , PPID , user , CPU , memory , uptime" << endl;
+        for (taskMap::const_iterator it = cbegin() ; taskMap.cend() ; ++it)
+        {
+            stream << it.print(" , ") << endl;
+        }
+    }
+}
 
 
 
diff --git a/app/task.cpp b/app/task.cpp
index 90bdab9..d0bfeb6 100644
--- a/app/task.cpp
+++ b/app/task.cpp
@@ -162,7 +162,7 @@ QString Task::getUser() const
     return user;
 }
 
-QString Task::print() const
+QString Task::print(QString sep=" ") const
 {
 
     int time = utime;
@@ -174,13 +174,13 @@ QString Task::print() const
     int s = time - m*60;
 
     QString uptime = QString::number(j)+ ":" + QString::number(h) + ":" + QString::number(m) + ":" + QString::number(s);
-    QString ret = QString::number(PID) +"\t"
-            + name +"\t"
-            + status +"\t"
-            + QString::number(PPID) +"\t"
-            + user +"\t"
-            + QString::number(CPU) +"\t"
-            + QString::number(mem) +"\t"
+    QString ret = QString::number(PID) + sep
+            + name + sep
+            + status + sep
+            + QString::number(PPID) + sep
+            + user + sep
+            + QString::number(CPU) + sep
+            + QString::number(mem) + sep
             + uptime;
 
     return ret;
diff --git a/app/task.h b/app/task.h
index dd47571..cb3a1a9 100644
--- a/app/task.h
+++ b/app/task.h
@@ -28,7 +28,7 @@ public:
     int getPPID() const;
     QString getUser() const;
 
-    QString print() const;
+    QString print(QSTring) const;
 
     Task & operator=(const Task &);
     //bool operator ==(int pid);
-- 
GitLab