X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/636ae51408b6eaafa0f719c3b26192a69477b256..13ead70d9771f21bc2378e2deece2f7b129f4cae:/Model/include/tank.h?ds=sidebyside diff --git a/Model/include/tank.h b/Model/include/tank.h index d4173af..edbe0a1 100644 --- a/Model/include/tank.h +++ b/Model/include/tank.h @@ -9,21 +9,33 @@ namespace PlaQui { namespace Model { - + +/** Tanque de Agua/Líquido + * + * Se modela un tanque con una entrada y una salida. La cantidad máxima + * de flujo entrante estará dada por la diferencia entre la capacidad + * y la cantidad actual de líquido en el tanque. + * La cantidad máxima de flujo que puede ofrecer a la salida está dada + * por la cantidad de líquido en el tanque. + */ class Tank:public Source, public Drain { public: + /// Constructor Tank(const std::string &_name); + /// Destructor virtual ~Tank(); 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(); + + void set_litros(float l) { litros = l; } protected: - float litros; - float actual_in_flow; - float actual_out_flow; + float litros; ///< cantidad de líquido actual + float actual_in_flow; ///< flujo máximo a la entrada + float actual_out_flow; ///< flujo máximo de la salida private: Tank():Drain("null"),Source("null"),Control("null") {} Tank &operator = (const Tank &) { return *this; } @@ -33,3 +45,4 @@ private: } #endif // _TANK_H_ +