#define _LOGIC_CONTROL_H_
#include "iconector.h"
+#include <string>
namespace PlaQui {
namespace Model {
/** Dice si la logica esta o no en operacion
*
* La logica de control puede no estar siendo utilizada, y eso
- * se deduce si tiene alguien conectado a sus entradas.
+ * se deduce si tiene alguien conectado a sus entradas (o sea, si
+ * tiene alguien a quien consultar por un estado logico).
* Si no hay nadie conectado, se contempla que no se esta utilizando
* y se debe utilizar en los casos que sea necesario para no recibir
* entradas falsas en los objetos controlados.
* \see Exclusa::update
*/
bool is_operational() { return (in_list.begin() != in_list.end()); }
+
+ void get_state_as_xml(std::stringstream &out) {
+ out << "\t<logic name=\"" << name << "\">" << std::endl;
+ out << "\t\t<active>" << ((get_output())?"true":"false") << "</active>" << std::endl;
+ out << "\t</logic>" << std::endl;
+ }
+
+ void set_name(const std::string &_name) { name = _name; }
+ std::string get_name() { return name; }
+protected:
+ std::string name;
};
}