summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChristian Vazquez <christian.vazquez@epfl.ch>2011-04-07 05:53:12 +0000
committerChristian Vazquez <christian.vazquez@epfl.ch>2011-04-07 05:53:12 +0000
commitae67598b211734f60a2e9f82622a84699eac4e45 (patch)
tree97ccc46f5f2d42eba5e6e71671e14faa60331571 /src
parent488f51bd2c3a4687f6327d6212e6979201649611 (diff)
downloadvhc-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.h43
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();
+ }
};