]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blob - docs/mainpage.h
Se actualiza documentacion:
[z.facultad/75.42/plaqui.git] / docs / mainpage.h
1 /** \mainpage Plaqui
2
3 \section introduccion Introducción.
4
5         \subsection herramientas Herramientas Utilizadas.
6                 Aquí tenemos un listado de las herramientas y bibliotecas que estamos
7                 utilizando a fin de poder luego documentar de manera correcta los
8                 requerimientos para instalar y ejecutar el programa, las versiones y los
9                 programas utilizados durante el desarrollo.
10                 - Glade2: Editor RAD para crear interfaces de usuario.
11                   [http://glade.gnome.org/]
12                 - GCC (3.2.x): Compilador C/C++.
13                   [http://gcc.gnu.org/]
14                 - VIM: Editor de texto utilizado para programar.
15                   [http://www.vim.org/]
16                 - Doxygen: Generador de documentación y referencias cruzadas.
17                   [http://www.stack.nl/~dimitri/doxygen/]
18                 - GNU Make.
19                   [http://www.gnu.org/software/make/]
20                 - Automake.
21                   [http://www.gnu.org/software/automake/]
22                 - Autoconf.
23                   [http://www.gnu.org/software/autoconf/]
24
25         \subsection bibliotecas Bibliotecas Utilizadas.
26                 - Gtkmm ( >= 2.0.0): Warper a C++ de la biblioteca Gtk+
27                   [http://www.gtkmm.org/]
28                 - Glademm ( >= 2.0.0): Para cargar archivos XML con la UI
29                   [http://www.gtkmm.org/]
30                 - Glibmm ( >= 2.0.0): Funciones de threads y otras básicas.
31                   [http://www.gtkmm.org/]
32                 - sigc++ ( >= 1.2.5): Sistema de señales para C++
33                   [http://libsigc.sourceforge.net/]
34                 - libxml2 ( >= 0.15.0): Parser de XML.
35                   [http://xmlsoft.org/]
36                 - libxm++ ( >= 0.15.0): Wrapper de libxml2 para C++.
37                   [http://libxmlplusplus.sourceforge.net/]
38                 - socket++ ( >= 1.12.10): Wrapper de socket portables en C++ streams
39                   [http://members.aon.at/hstraub/linux/socket++/]
40
41         \subsection requerimientos Requerimientos de Hardware y SO.
42                 PlaQui fue desarrollado bajo Debian GNU/Linux sid (http://www.debian.org/),
43                 pero debería andar en cualquier GNU/Linux e incluso probablemente en otros
44                 Unixes (e incluso podría llegar a andar en WIN32). La versión para el
45                 usuario (binaria y sin símbolos para depurar) requiere menos de 2MB de
46                 espacio en disco. Para compilarlo (con símbolos para depurar) puede
47                 necesitar más de 80MB.
48
49                 \subsubsection requerimientos_minimos Requerimientos mínimos.
50                         Esta es la mínima configuración en la que fue probado.
51                         - Procesador: Pentium 75MHz
52                         - Memoria RAM (física y virtual): 32MB
53
54                 \subsubsection requerimientos_recomendados Requerimientos recomendados.
55                         - Procesador: PII 400 Mhz
56                         - Memoria RAM: 64 MB
57
58 \section instalacion Instalación.
59         El programa se divide en 4 módulos:
60         - Modelo: es el módulo que se encarga de la simulación y el modelo \c
61           físico de la planta (es una biblioteca).
62         - \ref page_server "Servidor": es la infrastructura de red. Comprende tanto
63           el servidor como el cliente en cuando al manejo de la red (es una
64           biblioteca y un  programa).
65         - Cliente: es el cliente gráfico que permite ver la simulación (es un
66           programa).
67         - Constructor: es el programa para diseñar la planta química que será
68           simulada por el modelo en el servidor (es un programa).
69
70         La instalación puede realizarse de dos formas: instalando módulo por
71         módulo o instalando todos los módulos a la vez.
72
73         \subsection instalacion_global Instalación Global.
74                 Para instalar todos los programas es sencillo.
75                 -# Descomprimir el paquete:
76                    \verbatim tar -xvzf plaqui-proyect.tar.gz \endverbatim
77                 -# Entrar al directorio del proyecto:
78                    \verbatim cd plaqui \endverbatim
79                 -# Inicializar el proyecto:
80                    \verbatim aclocal && autoconf && automake -a \endverbatim
81                 -# Configurar la compilación del proyecto (generalmente basta con):
82                    \verbatim ./configure \endverbatim
83                    Esto lo instala por defecto en <tt>/usr/local</tt>, se puede
84                    especificar otra ruta con la opcion <tt>--prefix</tt>.
85                 -# Compilar el proyecto:
86                    \verbatim make \endverbatim
87                 -# Instalar el proyecto:
88                    \verbatim make install \endverbatim
89
90                 \note Para realizar el último paso, dependiendo de si usó la
91                       opción <tt>--prefix</tt> o no, es posible que necesite
92                       permisos de superusuario (<tt>root</tt>).
93
94         \subsection instalacion_por_partes Instalación Por Partes.
95                 El procedimiento es muy similar al anterior:
96                 -# Descomprimir el paquete:
97                    \verbatim tar -xvzf plaqui-proyect.tar.gz \endverbatim
98                 -# Entrar al directorio del módulo [Módulo]:
99                    \verbatim cd plaqui/[Módulo] \endverbatim
100                 -# Inicializar el módulo:
101                    \verbatim aclocal && autoconf && automake -a \endverbatim
102                 -# Configurar la compilación del módulo (generalmente basta con):
103                    \verbatim ./configure \endverbatim
104                 -# Compilar el módulo:
105                    \verbatim make \endverbatim
106                 -# Instalar el módulo:
107                    \verbatim make install \endverbatim
108
109                 \note Para realizar el último paso, dependiendo de si usó la
110                       opción <tt>--prefix</tt> o no, es posible que necesite
111                       permisos de superusuario (<tt>root</tt>).
112
113 \section mainpage_server Puesta en marcha del servidor.
114
115         \subsection mainpage_server_uso_inicio Inicio del servidor.
116                 Para iniciar el servidor es necesario disponer de un archivo XML de
117                 planta (por ejemplo, generado por el Constructor).
118
119                 Invocación del servidor:
120                 \verbatim ./plaqui-server [archivo] [puerto] \endverbatim
121
122                 Ambos argumentos son opcionales. El primero, <tt>[archivo]</tt>, es la
123                 ubicación del archivo con la descripción de la planta a simular (por omisión
124                 <tt>planta.xml</tt>). El segundo, <tt>[puerto]</tt>, es el puerto en el cual
125                 se van a atender las peticiones al servidor (por omisión 7522).
126
127                 \subsubsection mainpage_server_log Guardar la salida del servidor en un archivo.
128                         Para guardar la salida del servidor en un archivo puede ejecutar:
129                         \verbatim ./plaqui-server [archivo] [puerto] > [archivo] \endverbatim
130                         Esto guardará sólo los mensajes comunes pero los mensajes de error
131                         seguirán apareciendo por pantalla. Para guardar todo en un archivo:
132                         \verbatim ./plaqui-server [archivo] [puerto] 2>&1 > [archivo] \endverbatim
133                         Si quiere guardar sólo los errores en un archivo, puede hacer:
134                         \verbatim ./plaqui-server [archivo] [puerto] 2> [archivo] \endverbatim
135
136                 \subsubsection mainpage_server_background Correr el servidor en segundo plano.
137                         Para correr el servidor en segundo plano puede ejecutar:
138                         \verbatim ./plaqui-server [archivo] [puerto] & \endverbatim
139                         Esto puede combinarse con los comandos las formas de ejecución
140                         detalladas en \ref mainpage_server_log.
141
142         \subsection mainpage_server_uso_estado Estado del servidor.
143                 Mientras el servidor se ejecuta, va imprimiendo en la salida estándar su
144                 estado. Se imprime cada vez que llega una conexión entrante y cada vez que
145                 se detecta un error.
146
147                 Otro tipo de información del estado del servidor puede ser obtenida desde
148                 el cliente a través del comando <tt>/server/info</tt>.
149
150                 \note Los errores se imprimen en la salida de error, no en la salida
151                       estándar.
152
153         \subsection mainpage_server_uso_fin Finalización del servidor.
154                 Hay varias formas de finalizar el servidor:
155                 - Enviando una señal de interrupción (<tt>SIGINT</tt>), por ejemplo,
156                   presionando la combinación de teclas <tt>CTRL-C</tt>.
157                 - Enviando una señal de salida (<tt>SIGQUIT</tt>) o de terminación
158                   (<tt>SIGTERM</tt>), por ejemplo, a través del comando
159                   <tt>kill(1)</tt>.
160                 - Enviando un comando <tt>/server/stop</tt> desde un cliente.
161
162                 Cualquiera de estos métodos es válido y finaliza el servidor de forma
163                 correcta.
164
165 */
166
167 /** \namespace PlaQui
168
169 Diseñador, simulador y controlador de plantas químicas distribuido.
170
171 El Programa se divide en 4 módulos. Los módulo que se comportan como
172 biblioteca compartida tienen a su vez un espacio de nombres (namespace)
173 anidado: PlaQui::Model y PlaQui::Server.
174
175 */
176