/* 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 <unistd.h>
using namespace std;
int main(int argc, char *argv[])
{
- Bomb *bomba;
- Conduct *canio1;
- Conduct *canio2;
-
- bomba = new Bomb("bomba");
- bomba->set_max_flow(3);
- canio1 = new Conduct("cond_1");
- canio1->set_max_flow(10);
- canio2 = new Conduct("cond_2");
- canio2->set_max_flow(5);
-
- bomba->connect(canio1, IConector::OUT);
- canio1->connect(bomba, IConector::IN);
- canio1->connect(canio2, IConector::OUT);
- canio2->connect(canio1, IConector::IN);
+ Pump *bomba1;
+ Conduct *salida1;
+ Conduct *salida2;
+ Conduct *entrada;
+ Splitter *split;
+ Drainage *dren1, *dren2;
+
+
+ bomba1 = new Pump("bomba");
+ bomba1->set_max_flow(30);
+ salida1 = new Conduct("salida_1");
+ salida1->set_max_flow(2);
+ salida2 = new Conduct("salida_2");
+ salida2->set_max_flow(5);
+
+ split = new Splitter("splitter");
+ split->set_max_flow(8);
+ entrada = new Conduct("entrada");
+ entrada->set_max_flow(10);
+
+ dren1 = new Drainage("drenaje1");
+ dren2 = new Drainage("drenaje2");
+
+ bomba1->connect(entrada, IConector::OUT);
+ entrada->connect(bomba1, IConector::IN);
+ entrada->connect(split, IConector::OUT);
+ split->connect(entrada, IConector::IN);
+ split->connect(salida1, IConector::OUT);
+ split->connect(salida2, IConector::OUT);
+ salida1->connect(split, IConector::IN);
+ salida2->connect(split, IConector::IN);
+ salida1->connect(dren1, IConector::OUT);
+ salida2->connect(dren2, IConector::OUT);
int i = 0;
while (i<10) {
- bomba->update();
- canio1->update();
- canio2->update();
+ bomba1->update();
+ salida1->update();
+ salida2->update();
+ entrada->update();
+ split->update();
+ dren1->update();
+ dren2->update();
- bomba->simulate();
- canio1->simulate();
- canio2->simulate();
+ bomba1->simulate();
+ salida1->simulate();
+ salida2->simulate();
+ entrada->simulate();
+ split->simulate();
+ dren1->simulate();
+ dren2->simulate();
sleep(1);
if (i == 5) {
- bomba->deactivate();
+ bomba1->deactivate();
}
i++;
}
- delete bomba;
- delete canio1;
- delete canio2;
+ delete bomba1;
+ delete salida1;
+ delete salida2;
+ delete entrada;
+ delete split;
return 1;
}