From cabbbca66d9966213bb6e207046a605b5d0b7332 Mon Sep 17 00:00:00 2001 From: Ricardo Markiewicz Date: Thu, 13 Nov 2003 04:27:21 +0000 Subject: [PATCH] * Se corrige bug en tanque para que compile * Se sube atributo actual_flow hasta platitem (al igual que sus metodos), ya que estaba redefinido en todos lados --- Model/include/drain.h | 3 --- Model/include/plantitem.h | 4 ++++ Model/include/source.h | 3 --- Model/include/tank.h | 2 +- Model/include/transport.h | 4 ---- Model/src/simulador.cpp | 7 +++---- Model/src/tank.cpp | 2 +- 7 files changed, 9 insertions(+), 16 deletions(-) diff --git a/Model/include/drain.h b/Model/include/drain.h index df27e8f..34958a4 100644 --- a/Model/include/drain.h +++ b/Model/include/drain.h @@ -20,14 +20,11 @@ public: virtual void simulate(); /// Retorna el flujo que entrega actualmente - float get_actual_flow() { return actual_flow; } - /// Retorna el flujo máximo capaz de entregar float get_capacity() { return capacity; } /// Asigna el flojo máximo capaz de entregar virtual void set_capacity(float _f) { capacity = _f; } protected: float capacity; - float actual_flow; private: Drain(const Drain &):Control("null") {} Drain &operator = (const Drain &) { return *this; } diff --git a/Model/include/plantitem.h b/Model/include/plantitem.h index 70fd6ac..8c083dd 100644 --- a/Model/include/plantitem.h +++ b/Model/include/plantitem.h @@ -67,11 +67,15 @@ public: /// Devuelve el nombre de la instancia std::string get_name() const { return name; } + + /// Retorna el flujo actual que maneja el objeto. + float get_actual_flow() { return actual_flow; } protected: RGB fluid_color; // es de solo lectura std::string name; bool updated; + float actual_flow; private: // Hago que no se puedan copiar objetos ElementosPlanta PlantItem(const PlantItem &):IConector(0,0) {} diff --git a/Model/include/source.h b/Model/include/source.h index 8874dac..39c73cf 100644 --- a/Model/include/source.h +++ b/Model/include/source.h @@ -19,15 +19,12 @@ public: virtual bool get_output(); virtual void simulate(); - /// Retorna el flujo que entrega actualmente - float get_actual_flow() { return actual_flow; } /// Retorna el flujo máximo capaz de entregar float get_max_flow() { return max_flow; } /// Asigna el flojo máximo capaz de entregar void set_max_flow(float _f) { max_flow = _f; } protected: float max_flow; - float actual_flow; private: Source(const Source &):Control("null") {} Source &operator = (const Source &) { return *this; } diff --git a/Model/include/tank.h b/Model/include/tank.h index dbb56c4..a87f50f 100644 --- a/Model/include/tank.h +++ b/Model/include/tank.h @@ -28,7 +28,7 @@ public: virtual bool get_output(); virtual void recieve_msg(int msg, IConector *who, void *data); - virtual void update(); + virtual void update(int dir=OUT); virtual void simulate(); protected: float litros; ///< cantidad de líquido actual diff --git a/Model/include/transport.h b/Model/include/transport.h index d27ca0d..a93c546 100644 --- a/Model/include/transport.h +++ b/Model/include/transport.h @@ -20,15 +20,11 @@ public: /// Destructor virtual ~Transport(); - /// Retorna el flujo actual que maneja el objeto. - float get_actual_flow() { return actual_flow; } /// Retorna el flujo máximo soportado por el objeto float get_max_flow() { return max_flow; } /// Asigna el flujo máximo a manejar void set_max_flow(float _f) { max_flow = _f; } protected: - // Es de solo lectura, no hay set - float actual_flow; float max_flow; private: Transport():PlantItem("null") {} diff --git a/Model/src/simulador.cpp b/Model/src/simulador.cpp index 8f8dd15..23fe950 100644 --- a/Model/src/simulador.cpp +++ b/Model/src/simulador.cpp @@ -58,10 +58,9 @@ 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); + tank_lst.push_back(p); + items.push_back(p); } void Simulador::add_drainage(const std::string &name) diff --git a/Model/src/tank.cpp b/Model/src/tank.cpp index 88cbbe6..f21a2e8 100644 --- a/Model/src/tank.cpp +++ b/Model/src/tank.cpp @@ -18,7 +18,7 @@ bool Tank::get_output() return litros > 0; } -void Tank::update() +void Tank::update(int dir) { updated = true; } -- 2.43.0