X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/913bfb3f1238e29dfcc564fd1d4c836dbd412227..c0df682bb52a8bcab7c182fb45b340814b2eada8:/Model/include/documentation.h?ds=sidebyside diff --git a/Model/include/documentation.h b/Model/include/documentation.h index 2815bc8..48cd4f6 100644 --- a/Model/include/documentation.h +++ b/Model/include/documentation.h @@ -6,11 +6,27 @@ (plaqui-model) o como una biblioteca estática y ser compilado dentro de un ejecutable como lo hace PlaQui Server. + No se utilizó el modelo de grafo para resolver el enunciado ya que presentaba + varias limitaciones importantes, y no hacía que la solución sea más simple. + Como primer desventaja se tenía que en el grafo cada elemento era representado + por un vértice, menos los conductos que eran aristas, lo que hacía que el + objeto grafo sea el único objeto en el modelo. Esto implicaba tener una super + clase que hacía todo el trabajo y la idea de POO es descentralizar y reutilizar. + + Por otro lado, y más importante aún, el modelo del grafo no permitía tener múltiples + circuitos independientes simulados al mismo tiempo. El enfoque utilizado permite + , como se muestra en el ejemplo 2_circuitos.xml, simular n plantas al mismo + tiempo, y conectar unas a otra mediante la lógica de control. + \subsection page_model_general_clases Clases del Modelo. Para cada elemento que es posible simular, el modelo tiene una clase que se encarga de ello. También existe una clase PlaQui::Model::Simulator que es quien se encarga de manejar una simulación, cargar una planta desde un archivo XML y da una interfaz para poder acceder a propiedades del modelo desde el exterior. + + A continuación se puede observar un diagrama de clases del modelo: + \image html clases.png + \image latex clases.eps "Diagrama de clases." width=14cm \subsection page_model_general_simulacion Simulación. Para entender qué es lo que vemos al simular una planta, primero debemos entender @@ -53,8 +69,8 @@ \subsection page_model_color Update Color. Aquí comienza una cadena de mensajes similar al del update, pero esta vez se envía hacia - las entradas, y se pide que nos envíe el color. - Entonces, por ejemplo, una union pide un color a cada salida y luego los suma. + las entradas, y se pide que nos envíe el \ref PlaQui::Model::PlantItem::update_color "color". + Entonces, por ejemplo, una unión pide un color a cada salida y luego los suma.