]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Model/include/plantitem.h
* Se mejora la deteccion de conexiones en el constructor
[z.facultad/75.42/plaqui.git] / Model / include / plantitem.h
index 70fd6ac819bc6b9f6819f7ddc41233ad4fcdfd14..29fd05416447681537c28a191f41c1526c524292 100644 (file)
@@ -6,6 +6,7 @@
 #include <string>
 #include "iconector.h"
 #include "rgb.h"
 #include <string>
 #include "iconector.h"
 #include "rgb.h"
+#include <sstream>
 
 namespace PlaQui {
 
 
 namespace PlaQui {
 
@@ -28,11 +29,6 @@ public:
        /// Destructor
        virtual ~PlantItem();
 
        /// Destructor
        virtual ~PlantItem();
 
-       // FIXME: ver que parametros seran necesarios
-       // TODO : ver si no son inutiles!!!
-       virtual void send_fluid() {}
-       virtual void receive_fluid() {}
-
        /** Ejecuta la fase de actualización.
         *
         *  Durante la fase de actualización los objetos se comunican entre
        /** Ejecuta la fase de actualización.
         *
         *  Durante la fase de actualización los objetos se comunican entre
@@ -47,9 +43,9 @@ public:
        virtual void simulate() = 0;
 
        /// Setea el nuevo color del fluido
        virtual void simulate() = 0;
 
        /// Setea el nuevo color del fluido
-       void setColor(const RGB &c) { fluid_color = c; }
+       void set_color(const RGB &c) { fluid_color = c; }
        /// Retorna el actual color del fluido
        /// Retorna el actual color del fluido
-       const RGB &getColor() { return fluid_color; }
+       const RGB &get_color() { return fluid_color; }
 
        /** Recive un mensage y lo procesa
         *  
 
        /** Recive un mensage y lo procesa
         *  
@@ -67,11 +63,22 @@ public:
 
        /// Devuelve el nombre de la instancia
        std::string get_name() const { return name; }
 
        /// 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; }
+
+       /** Genera la salida XML del estado del componente
+        *
+        *  Esta función genera el estado actual de un objeto utilizando
+        *  el formato XML
+        */
+       virtual void get_state_as_xml(std::stringstream &out); 
 protected:
        RGB fluid_color;
        // es de solo lectura
        std::string name;
        bool updated;
 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) {}
 private:
        // Hago que no se puedan copiar objetos ElementosPlanta
        PlantItem(const PlantItem &):IConector(0,0) {}