X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/325f784cbf310091cb5749842a52cf7e1ad64b1b..add829f3935873adceec8cf027bc9b333f1f57bb:/docs/mainpage.h?ds=sidebyside
diff --git a/docs/mainpage.h b/docs/mainpage.h
index b667a73..3e8ee0d 100644
--- a/docs/mainpage.h
+++ b/docs/mainpage.h
@@ -1,103 +1,180 @@
-/** \mainpage PlaQui
-
-\section introduccion Introducción
-
- \subsection herramientas Herramientas Utilizadas
- Aquí tenemos un listado de las herramientas y bibliotecas que estamos
- utilizando a fin de poder luego documentar de manera correcta los
- requerimientos para instalar y ejecutar el programa, las versiones y los
- programas utilizados durante el desarrollo.
-
- - Glade2: Editor RAD para crear interfaces de usuario
- - GCC (3.3.x): Compilador C++
- - VIM: Editor de texto utilizado para programar
- - Doxygen: Generador de documentación y referencias cruzadas
- - GNU Make
- - Automake
- - Autoconf
-
- \subsection bibliotecas Bibliotecas Utilizadas
- - Gtkmm ( >= 2.0.0): Warper a C++ de la biblioteca Gtk+
- http://www.gtkmm.org/
- - Glademm ( >= 2.0.0): Para cargar archivos XML con la UI
- http://www.gtkmm.org/
- - Glibmm ( >= 2.0.0): Funciones de threads y otras básicas.
- http://www.gtkmm.org/
- - sigc++ ( >= 1.2.5): Sistema de señales para C++
- http://libsigc.sourceforge.net/
- - socket++ ( >= 1.12.10): Wrapper de socket portables en C++ streams
- http://members.aon.at/hstraub/linux/socket++/
+/** \mainpage Plaqui
+
+\section introduccion Introducción.
+
+ \subsection herramientas Herramientas Utilizadas.
+ Aquí tenemos un listado de las herramientas y bibliotecas que estamos
+ utilizando a fin de poder luego documentar de manera correcta los
+ requerimientos para instalar y ejecutar el programa, las versiones y los
+ programas utilizados durante el desarrollo.
+ - Glade2: Editor RAD para crear interfaces de usuario.
+ [http://glade.gnome.org/]
+ - GCC (3.2.x): Compilador C/C++.
+ [http://gcc.gnu.org/]
+ - VIM: Editor de texto utilizado para programar.
+ [http://www.vim.org/]
+ - Doxygen: Generador de documentación y referencias cruzadas.
+ [http://www.stack.nl/~dimitri/doxygen/]
+ - GNU Make.
+ [http://www.gnu.org/software/make/]
+ - Automake.
+ [http://www.gnu.org/software/automake/]
+ - Autoconf.
+ [http://www.gnu.org/software/autoconf/]
+
+ \subsection bibliotecas Bibliotecas Utilizadas.
+ - Gtkmm ( >= 2.0.0): Warper a C++ de la biblioteca Gtk+
+ [http://www.gtkmm.org/]
+ - Glademm ( >= 2.0.0): Para cargar archivos XML con la UI
+ [http://www.gtkmm.org/]
+ - Glibmm ( >= 2.0.0): Funciones de threads y otras básicas.
+ [http://www.gtkmm.org/]
+ - sigc++ ( >= 1.2.5): Sistema de señales para C++
+ [http://libsigc.sourceforge.net/]
+ - libxml2 ( >= 0.15.0): Parser de XML.
+ [http://xmlsoft.org/]
+ - libxm++ ( >= 0.15.0): Wrapper de libxml2 para C++.
+ [http://libxmlplusplus.sourceforge.net/]
+ - socket++ ( >= 1.12.10): Wrapper de socket portables en C++ streams
+ [http://members.aon.at/hstraub/linux/socket++/]
\subsection requerimientos Requerimientos de Hardware y SO.
- El trabajo práctico fue desarrollado bajo Debian GNU/Linux sid
- (http://www.debian.org/), pero debería andar en cualquier GNU/Linux e
- incluso probablemente en otros Unixes (e incluso podría llegar a andar
- en WIN32).
- \b Cliente:
- - Procesador: PII 400 Mhz
- - Memoria RAM: 64 Mb
- - Espacio en disco: aun no confirmado
- - SO: GNU/Linux
-
- \b Servidor:
- - Procesador: Pentium 75MHz
- - Memoria RAM: 16MB
- - Espacio en disco: 5MB
- - SO: GNU/Linux
-
- \b Constructor:
- - Procesador: PII 400 Mhz
- - Memoria RAM: 64 Mb
- - Espacio en disco: aun no confirmado
- - SO: GNU/Linux
-
- \subsection instalacion Instalación.
+ PlaQui fue desarrollado bajo Debian GNU/Linux sid (http://www.debian.org/),
+ pero debería andar en cualquier GNU/Linux e incluso probablemente en otros
+ Unixes (e incluso podría llegar a andar en WIN32). La versión para el
+ usuario (binaria y sin símbolos para depurar) requiere menos de 2MB de
+ espacio en disco. Para compilarlo (con símbolos para depurar) puede
+ necesitar más de 80MB.
+
+ \subsubsection requerimientos_minimos Requerimientos mínimos.
+ Esta es la mínima configuración en la que fue probado.
+ - Procesador: Pentium 75MHz
+ - Memoria RAM (física y virtual): 32MB
+
+ \subsubsection requerimientos_recomendados Requerimientos recomendados.
+ - Procesador: PII 400 Mhz
+ - Memoria RAM: 64 MB
+
+\section instalacion Instalación.
El programa se divide en 4 módulos:
- - Modelo: es el módulo que se encarga de la simulación y el modelo \c
- físico de la planta (es una biblioteca).
- - Servidor: es la infrastructura de red. Comprende tanto el servidor
- como el cliente en cuando al manejo de la red (es una biblioteca y un
- programa).
- - Cliente: es el cliente gráfico que permite ver la simulación (es un
+ - \ref page_model "Modelo": es el módulo que se encarga de la simulación y el modelo
+ \c físico de la planta (es una biblioteca).
+ - \ref page_server "Servidor": es la infrastructura de red. Comprende tanto
+ el servidor como el cliente en cuando al manejo de la red (es una
+ biblioteca y un programa).
+ - \ref page_client "Cliente": es el cliente gráfico que permite ver la simulación (es un
programa).
- - Constructor: es el programa para diseñar la planta química que será
- simulada por el modelo en el servidor (es un programa).
+ - \ref page_constructor "Constructor": es el programa para diseñar la planta química
+ que será simulada por el modelo en el servidor (es un programa).
La instalación puede realizarse de dos formas: instalando módulo por
módulo o instalando todos los módulos a la vez.
- \subsubsection instalacion_global Instalación Global
+ \subsection instalacion_global Instalación Global.
Para instalar todos los programas es sencillo.
- - Descomprimir el paquete:
- \verbatim tar -xvzf plaqui-proyect.tar.gz \endverbatim
- - Entrar al directorio del proyecto:
- \verbatim cd plaqui \endverbatim
- - Inicializar el proyecto:
- \verbatim aclocal && autoconf && automake -a \endverbatim
- - Configurar la compilación del proyecto (generalmente basta con):
- \verbatim ./configure \endverbatim
- Esto lo instala por defecto en /usr/local, se puede
- especificar otra ruta con la opcion \c --prefix
- - Compilar el proyecto:
- \verbatim make \endverbatim
- - Instalar el proyecto:
- \verbatim make install \endverbatim
-
- \subsubsection instalacion_global Instalación Por Partes
- El procedimiento es muy similar al anterior. Los dos primeros
- pasos son iguales al método anterior. Para cada modulo se debe
- hacer el siguiente paso extra:
- - Entrar al directorio del módulo [Módulo]:
- \verbatim cd [Módulo] \endverbatim
- Y luego seguir como con el método anterior:
- - Inicializar el módulo:
- \verbatim aclocal && autoconf && automake -a \endverbatim
- - Configurar la compilación del módulo (generalmente basta con):
- \verbatim ./configure \endverbatim
- - Compilar el módulo:
- \verbatim make \endverbatim
- - Instalar el módulo:
- \verbatim make install \endverbatim
+ -# Descomprimir el paquete:
+ \verbatim tar -xvzf plaqui-proyect.tar.gz \endverbatim
+ -# Entrar al directorio del proyecto:
+ \verbatim cd plaqui \endverbatim
+ -# Inicializar el proyecto:
+ \verbatim aclocal && autoconf && automake -a \endverbatim
+ -# Configurar la compilación del proyecto (generalmente basta con):
+ \verbatim ./configure \endverbatim
+ Esto lo instala por defecto en /usr/local, se puede
+ especificar otra ruta con la opcion --prefix. También se
+ puede compilar en modo de depuración con la opción
+ --enable-debug. Para más opciones hacer
+ ./configure --help.
+ -# Compilar el proyecto:
+ \verbatim make \endverbatim
+ -# Instalar el proyecto:
+ \verbatim make install \endverbatim
+
+ \note Para realizar el último paso, dependiendo de si usó la
+ opción --prefix o no, es posible que necesite
+ permisos de superusuario (root).
+
+ \subsection instalacion_por_partes Instalación Por Partes.
+ El procedimiento es muy similar al anterior:
+ -# Descomprimir el paquete:
+ \verbatim tar -xvzf plaqui-proyect.tar.gz \endverbatim
+ -# Entrar al directorio del módulo [Módulo]:
+ \verbatim cd plaqui/[Módulo] \endverbatim
+ -# Inicializar el módulo:
+ \verbatim aclocal && autoconf && automake -a \endverbatim
+ -# Configurar la compilación del módulo (generalmente basta con):
+ \verbatim ./configure \endverbatim
+ -# Compilar el módulo:
+ \verbatim make \endverbatim
+ -# Instalar el módulo:
+ \verbatim make install \endverbatim
+
+ \note Para realizar el último paso, dependiendo de si usó la
+ opción --prefix o no, es posible que necesite
+ permisos de superusuario (root).
+
+\section mainpage_server Puesta en marcha del servidor.
+
+ \subsection mainpage_server_uso_inicio Inicio del servidor.
+ Para iniciar el servidor es necesario disponer de un archivo XML de
+ planta (por ejemplo, generado por el \ref page_constructor "Constructor").
+
+ Invocación del servidor:
+ \verbatim ./plaqui-server [archivo] [puerto] \endverbatim
+ Ambos argumentos son opcionales. El primero, [archivo], es la
+ ubicación del archivo con la descripción de la planta a simular (por omisión
+ planta.xml). El segundo, [puerto], es el puerto en el cual
+ se van a atender las peticiones al servidor (por omisión 7522).
+
+ \subsubsection mainpage_server_log Guardar la salida del servidor en un archivo.
+ Para guardar la salida del servidor en un archivo puede ejecutar:
+ \verbatim ./plaqui-server [archivo] [puerto] > [archivo] \endverbatim
+ Esto guardará sólo los mensajes comunes pero los mensajes de error
+ seguirán apareciendo por pantalla. Para guardar todo en un archivo:
+ \verbatim ./plaqui-server [archivo] [puerto] 2>&1 > [archivo] \endverbatim
+ Si quiere guardar sólo los errores en un archivo, puede hacer:
+ \verbatim ./plaqui-server [archivo] [puerto] 2> [archivo] \endverbatim
+
+ \subsubsection mainpage_server_background Correr el servidor en segundo plano.
+ Para correr el servidor en segundo plano puede ejecutar:
+ \verbatim ./plaqui-server [archivo] [puerto] & \endverbatim
+ Esto puede combinarse con los comandos las formas de ejecución
+ detalladas en \ref mainpage_server_log.
+
+ \subsection mainpage_server_uso_estado Estado del servidor.
+ Mientras el servidor se ejecuta, va imprimiendo en la salida estándar su
+ estado. Se imprime cada vez que llega una conexión entrante y cada vez que
+ se detecta un error.
+
+ Otro tipo de información del estado del servidor puede ser obtenida desde
+ el \ref page_client "cliente" a través del comando /server/info.
+
+ \note Los errores se imprimen en la salida de error, no en la salida
+ estándar.
+
+ \subsection mainpage_server_uso_fin Finalización del servidor.
+ Hay varias formas de finalizar el servidor:
+ - Enviando una señal de interrupción (SIGINT), por ejemplo,
+ presionando la combinación de teclas CTRL-C.
+ - Enviando una señal de salida (SIGQUIT) o de terminación
+ (SIGTERM), por ejemplo, a través del comando
+ kill(1).
+ - Enviando un comando /server/stop desde un
+ \ref page_client "cliente".
+
+ Cualquiera de estos métodos es válido y finaliza el servidor de forma
+ correcta.
*/
+
+/** \namespace PlaQui
+
+Diseñador, simulador y controlador de plantas químicas distribuido.
+
+El Programa se divide en 4 módulos. Los módulo que se comportan como
+biblioteca compartida tienen a su vez un espacio de nombres (namespace)
+anidado: PlaQui::Model y PlaQui::Server.
+
+*/
+