This commit is contained in:
Mylloon 2023-10-28 03:07:28 +02:00
parent 8bb2629fa8
commit 9ebf1af816
Signed by: Anri
GPG key ID: A82D63DFF8D1317F
2 changed files with 22 additions and 1 deletions

View file

@ -3,7 +3,7 @@
#include "ProtoProjet.hpp" #include "ProtoProjet.hpp"
class RunProjet final : public ProtoProjet { class RunProjet final : private ProtoProjet {
friend std::ostream &operator<<(std::ostream &, const RunProjet &); friend std::ostream &operator<<(std::ostream &, const RunProjet &);
public: public:
@ -13,6 +13,12 @@ public:
RunProjet(const RunProjet &); // copy constructor RunProjet(const RunProjet &); // copy constructor
const RunProjet &operator=(const RunProjet &); // copy assignement const RunProjet &operator=(const RunProjet &); // copy assignement
// Lance une tâche
bool run(const int id) const;
// Exécute une liste de tâches dans l'ordre donnée
void run(const std::vector<const Tache *> sequence_taches) const;
}; };
#endif #endif

View file

@ -25,4 +25,19 @@ std::ostream &operator<<(std::ostream &out, const RunProjet &data) {
return data.print(out); return data.print(out);
} }
bool RunProjet::run(const int id) const {
Tache *tache = contains(id);
// La tâche n'existe pas
if (!tache) {
return false;
}
// Renvoie si la tâche s'est réalisée
return tache->realise();
}
void RunProjet::run(const std::vector<const Tache *> sequence_taches) const {
for (const Tache *it : sequence_taches) {
run(it->unique_id);
}
} }