namespace Model {
+/** Bomba hidráulica
+ *
+ * La bomba es un elemento que toma líquido de alguna fuente
+ * misteriosa y lo envía por su salida. La cantidad de fluido que
+ * envía va a depender exclusivamente del sistema al cual está conectado.
+ * La bomba es "inteligente", y es capaz de reducir el flujo que envía
+ * dependiendo de las condiciones que le ponga el sistema, reduciendo
+ * así el flujo de manera automática para evitar sobrecargas.
+ *
+ * La bomba tiene 2 interruptores, uno manual y otro automático.
+ * Si el manual está apagado, la bomba se considera apagada e ignora
+ * todo mensage del interruptor automático. En esta condición envía
+ * 0 cuando se le consulta por su flojo máximo.
+ *
+ */
class Bomb:public Source {
public:
+ /// Constructor
Bomb(const std::string &_name);
- ~Bomb();
+ /// Destructor
+ virtual ~Bomb();
virtual void update();
virtual void simulate();
virtual void recieve_msg(int msg, IConector *who, void *data);
+ /// Activa la bomba
void activate() { active = true; }
+ /// Desactiva la bomba
void deactivate() { active = false; }
protected:
/** Define si la bomba esta abierta o no. Esto lo maneja la logica de