* Durante la fase de actualización los objetos se comunican entre
* sí para determinar cual es el flujo que manejan en una iteración.
*/
- virtual void update() = 0;
+ virtual void update(int dir=OUT) = 0;
/** Hace la simulación de esta iteración
*
* Por simulacion se entiende que el modelo debe avisar a las vistas
/// Mensages manejados por los elementos de la planta
enum {
- MSG_QUERY_MAX_FLOW = IConector::MSG_LAST, ///< preguntar por el máximo flujo
+ MSG_QUERY_MAX_FLOW_OUT = IConector::MSG_LAST, ///< flujo maximo a la salida
+ MSG_QUERY_MAX_FLOW_IN, ///< flujo maximo a la entrada
MSG_RESPONSE_MAX_FLOW, ///< responde al mensage QUERY_MAX_FLOW. data == float
MSG_LAST
};
/// 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; }
+ virtual void get_state_as_xml(std::stringstream &out) { }
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) {}