X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/f7e6ba4976cdafcb4aa3e39b03539d5a3d12f6a4..f29a7129de56edca96ea8ef58576898c1e52ed6f:/Model/include/control.h?ds=sidebyside diff --git a/Model/include/control.h b/Model/include/control.h index 3763da9..a9e8bb5 100644 --- a/Model/include/control.h +++ b/Model/include/control.h @@ -9,7 +9,13 @@ namespace PlaQui { namespace Model { -/** Elementos que pueden ser automatizados */ +/** Elementos que pueden ser automatizados + * + * Estos elementos tienen entradas y salidas lógicas para que dan la + * posibilidad de conectar elementos \e Control entre ellos y así + * poder crear circuitos "inteligentes". + * \see LogicControl + * */ class Control:public PlantItem { public: /// Constructor @@ -17,8 +23,16 @@ public: /// Destructor virtual ~Control(); - /// Retorna un estado booleano dependiendo de su estado actual + /// Retorna un booleano dependiendo de su estado actual virtual bool get_output() = 0; + + /** Conecta una lógica de control a mi entrada */ + void connect_input_logic(LogicControl *); + /** Conecta una lógica de control a mi salida */ + void connect_output_logic(LogicControl *); + + LogicControl *get_logic_output() { return output; } + LogicControl *get_logic_input() { return input; } protected: LogicControl *input; LogicControl *output;