diff options
author | Christian Vazquez <christian.vazquez@epfl.ch> | 2011-04-07 05:53:12 +0000 |
---|---|---|
committer | Christian Vazquez <christian.vazquez@epfl.ch> | 2011-04-07 05:53:12 +0000 |
commit | ae67598b211734f60a2e9f82622a84699eac4e45 (patch) | |
tree | 97ccc46f5f2d42eba5e6e71671e14faa60331571 /src | |
parent | 488f51bd2c3a4687f6327d6212e6979201649611 (diff) | |
download | vhc-ae67598b211734f60a2e9f82622a84699eac4e45.tar.gz vhc-ae67598b211734f60a2e9f82622a84699eac4e45.tar.bz2 vhc-ae67598b211734f60a2e9f82622a84699eac4e45.zip |
2 nouvelles méthodes add et killall
Diffstat (limited to 'src')
-rw-r--r-- | src/main/Accelerator.h | 43 |
1 files changed, 30 insertions, 13 deletions
diff --git a/src/main/Accelerator.h b/src/main/Accelerator.h index 2481350..73e341a 100644 --- a/src/main/Accelerator.h +++ b/src/main/Accelerator.h @@ -52,21 +52,38 @@ public: /** Retourne une représentation en chaîne de caractères de cet accélérateur. */ virtual std::string toString() const; - // TODO méthodes demandées dans la consigne - /** Ajoute un élément à l'accélérateur. */ - void addElement(); - - /** Ajoute une particule à l'accélérateur. */ - void addParticle(); - - /** Efface tous les éléments. */ - void killAllElements(); + // TODO ou va le delete ? + /** Ajoute un élément (non spécifié) à l'accélérateur. */ + void addElement() { + ptr = new Element; + elementCollec.push_back(ptr); + } + + // TODO où va le delete? + // TODO instanciation légale? + /** Instancie une particule et l'ajoute à l'accélérateur. */ + void addParticle(){ + ptr = new Particle(newPart); + particleCollec.push_back(ptr); + } + + /** Efface tous les éléments (et les particules, logique). */ + void killAllElements(){ + for (vector<Element*>::iterator i(elementCollec.begin()); i != elementCollec.end(); ++i) + elementCollec.erase(i); + killAllParticles(); + } /** Efface toutes les particules. */ - void KillAllParticles(); - - /** Fait évoluer l'accélérateur. */ - void play(); + void killAllParticles(){ + for (vector<Particle*>::iterator i(particleCollec.begin()); i != particleCollec.end(); ++i) + particleCollec.erase(i); + } + + /** Fait évoluer l'accélérateur (pas de temps fixe). */ + void step(){ + accelerator.bouge(); + } }; |