X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/b75b5632c75f245e59a00775ffbe0affdedf8b6c..a9318661e45dfb9853c6aba811670571a5ec3ea2:/Model/src/main.cpp?ds=sidebyside diff --git a/Model/src/main.cpp b/Model/src/main.cpp index 01f9ecb..ab4f7f6 100644 --- a/Model/src/main.cpp +++ b/Model/src/main.cpp @@ -1,80 +1,46 @@ /* Test pedorro a ver que pasa con lo que esta programado!! */ /* Compilar : g++ -Wall -o test -I../include *.cpp */ -#include "bomb.h" +#include "pump.h" #include "conduct.h" #include "union.h" +#include "splitter.h" +#include "drainage.h" +#include "exclusa.h" #include +#include +#include "simulador.h" using namespace std; using namespace PlaQui::Model; int main(int argc, char *argv[]) { - Bomb *bomba1, *bomba2; - Conduct *canio1; - Conduct *canio2; - Conduct *salida; - Union *union1; - + Simulador *sim = new Simulador(); - bomba1 = new Bomb("bomba1"); - bomba1->set_max_flow(3); - bomba2 = new Bomb("bomba2"); - bomba2->set_max_flow(5); - canio1 = new Conduct("cond_1"); - canio1->set_max_flow(5); - canio2 = new Conduct("cond_2"); - canio2->set_max_flow(5); + sim->add_pump("bomba1"); + sim->add_conduct("c"); + sim->add_conduct("c1"); + sim->add_drainage("d"); + sim->add_tank("tanque"); - union1 = new Union("union"); - union1->set_max_flow(5); - salida = new Conduct("salida"); - salida->set_max_flow(10); + sim->connect("bomba1", "c", IConector::OUT); + sim->connect("c", "tanque", IConector::OUT); + sim->connect("tanque", "c1", IConector::OUT); + sim->connect("c1", "d", IConector::OUT); - bomba1->connect(canio1, IConector::OUT); - canio1->connect(bomba1, IConector::IN); - canio1->connect(union1, IConector::OUT); - - bomba2->connect(canio2, IConector::OUT); - canio2->connect(bomba2, IConector::IN); - canio2->connect(union1, IConector::OUT); - - union1->connect(canio1, IConector::IN); - union1->connect(canio2, IConector::IN); - union1->connect(salida, IConector::OUT); - - salida->connect(union1, IConector::IN); - - int i = 0; + int i=0; while (i<10) { - bomba1->update(); - bomba2->update(); - canio1->update(); - canio2->update(); - salida->update(); - union1->update(); - - bomba1->simulate(); - bomba2->simulate(); - canio1->simulate(); - canio2->simulate(); - salida->simulate(); - union1->simulate(); - - sleep(1); - if (i == 5) { - bomba1->deactivate(); + sim->simulate(); + if (i == 4) { + if (!sim->pump_deactivate("bomba1")) { + std::cout << "c no es pump :-)" << std::endl; + } } i++; } - delete bomba1; - delete bomba2; - delete canio1; - delete canio2; - delete salida; - delete union1; + delete sim; return 1; }