Você está na página 1de 36

Carlos

Cceres
cog:20112005079



Doxygen es un sistema de documentacin

para C + +, C, Java, Objective-C, Python, IDL


(Corba y sabores de Microsoft), Fortran,
VHDL, PHP, C #, y hasta cierto punto D.
Dado que es fcilmente adaptable, funciona
en la mayora de sistemas Unix as como
en Windows y Mac OS X. La mayor parte del
cdigo de Doxygen est escrita por
Dimitri van Heesch.

Puede generar un navegador de documentacin

on-line (en HTML) y / o un manual de referencia


o-line (en ) De un conjunto de archivos
fuentes. Tambin hay soporte para la generacin
de la salida en formato RTF (MS-Word),
PostScript, PDF con hipervnculos, HTML
comprimido y pginas de UNIX. La
documentacin se extrae directamente de las
fuentes, lo cual lo hace mucho ms fcil
mantener la documentacin de conformidad con
el cdigo fuente.

Si bien Doxygen1 es una herramienta de lnea

de comando, al que hay que pasarle un archivo


de conguracin preparado para el proyecto
previamente, el trabajo se alivia bastante
empleando Doxywizard, una interfaz grca
para Doxygen que se instala automticamente
con la versin para windows, pero que hay que
instalar aparte (doxygen-gui) en entornos
Linux. Su aspecto en todos los sistemas
(incluyendo tambin Mac), es el que se
muestra en la siguiente gura.

Zinjai tiene la opcion de documentar

directamente con doxygen , lo unico que se


debe hacer es instalar doxygen.
Accedemos a Zinjai y escojemos la opcion
Crear nuevo Proyecto, esto es para que Zinjai
nos permita utilizar doxygen
automaticamente.

Luego a medida que se valla creando el

proyecto se debe ir documentado con las


etiquetas de Doxygen segn el
procedimiento que se desee realizar , ya sea
un comentario, haciendo referencia a alguna
funcion,arreglos, etc.
Finalizado el proyecto y utilizadas las
etiquetas para la documentacin organizada,
se procede a documentar con una opcion de
Zinjai que utiliza Doxygen automaticamente.

Si en medio de su proyecto usted desea ver

como va quedando la documentacion por


medio de doxygen, puede utilizar la opcion
ver que le mostrara, como va quedando su
documento sin necesidad de guardar o si
desea tambien puede generarlo
completamente.
Y ya tiene su proyecto documentado y
organizado.

Para su correcto funcionamiento, precisa del paquete


de diagramacin GraphViz , que en entornos Linux
se instala de manera muy sencilla segn la
distribucin usada, pero que en entornos Windows
es necesario retocar para su correcta
disponibilidad. Para que Doxygen encuentre a
GraphViz, es necesario que ste ltimo se encuentre
en las rutas del sistema, almacenadas en la variable
PATH. As, una vez instalados ambos paquetes
(supongamos en la unidad C:), ser
necesario ejecutar las siguientes rdenes para
trabajar correctamente.
set PATH=c:\archivos de programa\graphviz\bin\;
%PATH% doxywizard

La manera ms sencilla para trabajar con


Doxygen es utilizar el Wizard (asistente).Por
ejemplo se desea documentar un proyecto de
gestin temperaturas que reside en un
directorio llamado GestionTemperaturas. Si
se pulsa en el botn Wizard (gura 2),
aparece el asistente que nos permitir
obtener la documentacin del proyecto.

En primer lugar, se pregunta el ttulo de


la documentacin, en project name. Lo ms
importante aqu, en cualquier caso, es indicar
el lugar donde residen los fuentes (source
code directory), as como el lugar donde se va a
generar la documentacin (desination directory).
Una buena idea es crear un subdirectorio dentro
del directorio del proyecto (como doc, en el
ejemplo), de manera que siga estando todo
localizado en un mismo lugar.

En realidad, Doxygen genera la


documentacin en cualquiera de las
formas, pero seleccionando el lenguaje de
programacin la salida est mucho ms
pulida. En este caso, se ha elegido C, puesto
que aunque se emplee en realidad C++, no
estamos utilizando programacin orientada a
objetos, que es lo que ms le afectara al
documentador

lLa primera opcion Documented entities only


se reere a incluir en la documentacin slo
a q u e l l a s e n t i d a d e s ( f u n c i o n e s ,
constantes, ...), para la que se ha escrito
informacin especdifca.
La segunda opcion All entities documenta
todo en el programa.

Finalmente, include cross-reference source


code in the output, incluye el cdigo
fuente, de manera que se pueda navegar
por l, desde la propia documentacin, de
funcin en funcin.

Probablemente, la salida ms til


sea HTML, aunque el formato RTF
puede ser mucho ms
interesante para cuando se desea
obtener un manual impreso.

Sin duda, lo mejor es utilizar dot tool de


GraphViz, puesto que el diagramador
interno de Doxygen no es demasiado
completo (no genera los grafos de
llamadas entre funciones, por ejemplo).
Por defecto aparece desmarcada la opcin
call graphs, que precisamente son los grafos
que se acaban de mencionar.

Slo queda un pequeo detalle: Doxygen


genera toda la documentacin en ingls,
por lo que si se desea cambiarlo a espaol,
se debe acceder a la conguracin
avanzada: se puede hacer fcilmente,
pulsando en expert (gura 6). En output
language, el men desplegable permite
elegir espaol (Spanish) como lengua de
salida.

Una vez hecho todo sto, slo es necesario


guardar el archivo congurador para Doxygen
(pulsando save) en alguna parte. El mejor lugar es
el directorio doc creado dentro del directorio del
proyecto. Tambin se debe elegir el directorio de
trabajo (working directory), que de nuevo debera
ser este directorio doc.
Una vez pulsado Start, la documentacin
habr sido creada dentro del ya mencionado
directorio doc, tpicamente ser doc/html.
Slo es necesario ya ejecutar el navegador
sobre el archivo index.html para poder navegar
por toda la documentacin generada.

@param Informacin sobre un parmetro de una


funcin.
@return Informacin sobre lo que devuelve una
funcin.
@brief Explicacin muy breve sobre lo que hace una
funcin, de manera que no sea necesario verse toda la
documentacin en detalle. Aparece en el ndice
general.
@note Aviso que aparece resaltado en la
documentacin de una funcion.
@see Permite establecer referencia cruzadas con otras
entidades.

<code> Establecer una o ms lneas de cdigo fuente o

salida del programa. Tenga en cuenta que este comando


se comporta como \code ... \endcode \code ...
\endcode de cdigo C #, pero se comporta como el
equivalente HTML <code>...</code> para otros idiomas.
<description> parte de un <list> comando, describe un
elemento.
<example> marca un bloque de texto como un ejemplo,
ignorado por doxygen.
<include> Se puede utilizar para importar un trozo de
XML de un archivo externo. Ignorado por doxygen en
este momento.
<item> Lista de tareas. Slo se puede utilizar dentro de
un <list> contexto.

<list type="type"> Inicia una lista, los tipos de apoyo

son bullet o de number y de table . La lista se compone


de una serie de <item> etiquetas. Una lista de tabla de
tipos, es una tabla de dos columnas que puede tener un
encabezado.
<para> Identica un prrafo de texto.
<permission> Identica el acceso a la seguridad de un
miembro. Ignorado por doxygen.
<remarks> Identica la descripcin detallada.
<returns> Marca un trozo de texto como el valor devuelto
de una funcin o mtodo. Similar al uso de volver \ .
<summary> Identica el breve descripcin. Similar al
uso breve \ .
<term> parte de un <list> comando.

namespace eval .. Espacio de nombres


proc .. Funcin
variable .. Variable
common .. variable comn
itcl::class .. Clase
itcl::body .. mtodo de denicin de clase del cuerpo
oo::class create .. Clase
oo::dene .. OO denicin de la clase
method .. Las deniciones de clases mtodo
constructor .. Constructor de la clase
destructor .. destructor de clase
public .. Ajuste el nivel de proteccin
protected .. Ajuste el nivel de proteccin
private .. Establecer el nivel de proteccin

// gestionvectores.h
/**
@brief Modica un valor ya existente
Modica un valor ya existente, en la posicin y con el valor
indicado
@note la posicin debe ser menor que el nmero de
elementos
@param v El vector de reales
@param numEltos El nmero de elementos a valorar en el
vector
@param pos La posicin a modicar
@param valor El nuevo valor a escribir en la posicin pos
*/
bool modicaEnVector(double v[], int numEltos, int pos, double
valor);

// estadistica.h
/**
La funcin calcula la media del vector pasado por
parmetro
@param v El vector de reales
@param numEltos El nmero de elementos a valorar en el
vector
@return La media como nmero real
*/
double calculaMedia(double v[], int numEltos);
/// @return La desviacin tpica de los elementos del vector
/// @see calculaMedia
double calculaDesvTipica(double v[], int numEltos);
http://www.stack.nl/~dimitri/doxygen/manual.html

Você também pode gostar