]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Model/src/simulador.cpp
* Se agrega un Tanque al ejemplo, y ANDA!!!!
[z.facultad/75.42/plaqui.git] / Model / src / simulador.cpp
index 8f8dd15682e18e5dc4acd6e2d5401aca9a20fcd2..b3a93b1391f1bac799a403211041e48c05c3ebb1 100644 (file)
@@ -58,10 +58,12 @@ void Simulador::add_exclusa(const std::string &name)
 
 void Simulador::add_tank(const std::string &name)
 {
-       //Tank *p = new Tank(name);
-       // FIXME no va!!
-       //tank_lst.push_back(p);
-       //items.push_back(p);
+       Tank *p = new Tank(name);
+       p->set_capacity(100);
+       p->set_max_flow(10);
+       p->set_litros(50);
+       tank_lst.push_back(p);
+       items.push_back(p);
 }
 
 void Simulador::add_drainage(const std::string &name)
@@ -118,3 +120,16 @@ IConector *Simulador::find(const std::string &name)
        return NULL;
 }
 
+bool Simulador::pump_deactivate(const std::string &name)
+{
+       // Busco el elemento, usando RTTI :-(
+       Pump *pump = dynamic_cast<Pump *>(find(name));
+
+       if (!pump) {
+               // Ups!, "name" no era un Pump!!!
+               return false;
+       }
+       pump->deactivate();
+       return true;
+}
+