X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/a9d033a0a6748c192d30c9c65ebcc8b1a96cd43b..7e74b790d290cd7d776349503bb361c47933c01f:/Server/include/plaqui/server/plant.h?ds=sidebyside diff --git a/Server/include/plaqui/server/plant.h b/Server/include/plaqui/server/plant.h index c6e64a6..89ee76f 100644 --- a/Server/include/plaqui/server/plant.h +++ b/Server/include/plaqui/server/plant.h @@ -62,6 +62,9 @@ namespace Server { /// Simulador usado para calcular el estado de la planta. Model::Simulator simulator; + /// Mutex para el simulador. + Glib::Mutex simulator_mutex; + /// Nombre del archivo donde esta el XML de la planta. std::string filename; @@ -105,6 +108,20 @@ namespace Server { bool transmission_stop(const string& host, const Connection::Port& port); + /** + * Abre (o cierra) un elemento de la planta. + * + * Sólo la bomba y la exclusa pueden ser abiertos y cerrados. + * + * \param element Nombre del elemento a abrir o cerrar. + * \param open true si se quiere abrir el elemento, false si se + * lo quiere cerrar. + * + * \return true si se abrió o cerró el elemento, false si no existía + * o si no era una bomba o exclusa. + */ + bool set_open(const std::string& element, bool open = true); + /** * Obtiene el XML de la planta. */